Ahora que ya sabemos mandar mensajes a través de nuestro robot, el siguiente paso es mandar fotos. Para ello usamos el metodo SendPhoto, que es bastante parecido al sendMessage que ya hemos utilizado.

Vemos que los parámetros obligatorios son chat_id y photo. El identificador del chat ya sabemos como conseguirlo. En el parámetro photo podemos pasarle la url de la imagen que queramos enviar o el identificador si existe ya en los servidores de telegram. Ésto lo veremos más adelante. Nosotros vamos a enviar una url, que será el logo de telegram.

Otro de los parámetros, ya opcionales, que vamos a enviar será el texto que llevará en el pie esa foto (caption). Para nuestro ejemplo no vamos a poner más parámetros pero tambien se puede usar el disable_notification y el reply_to_message_id que ya vimos en nuestro anterior ejemplo como usarlos.

Veamos como queda nuestro código:

Al ejecutarlo, vemos que nos llega un nuevo mensaje, con la imagen que hemos indicado.

 

Enviando foto

 

Como decíamos antes, podemos mandar la imágen usando su identificador en vez de poner la url. Para averiguar que identificador tiene, podemos contestar al mensaje de la imagen:

Contestacion a la imagen

Y si ejecutamos el getUpdates de nuestro bot (https://api.telegram.org/botTOKENDENUESTROBOT/getupdates) obervamos el siguiente código:

 

Observamos que hay un file_id “AgADBAADYbU1Gz0XZAfmQjSVM0wWcOddYRkABKf1nlVPuuDoin0BAAEC” que es el que tendríamos que poner como parámetro en vez de la url para poder enviar la foto con nuestro ejemplo.

 

 

Envio por file_id