Je suis en train de mettre en place un simple bot qui devrait m’envoyer des photos et des vidéos chat_id. Eh bien, j’utilise python, c’est le script

import sys
import time
import random
import datetime
import telepot

def handle(msg):
    chat_id = msg['chat']['id']
    command = msg['text']

    print 'Got command: %s' % command

    if command == 'command1':
        bot.sendMessage(chat_id, *******)
    elif command == 'command2':
        bot.sendMessage(chat_id, ******)
    elif command == 'photo':
        bot.sendPhoto(...)

bot = telepot.Bot('*** INSERT TOKEN ***')
bot.message_loop(handle)
print 'I am listening ...'

while 1:
    time.sleep(10)

Dans la file d’attente bot.sendphoto J’inclurais le chemin et le chat_id de ma photo, mais rien ne se passe.

Où ai-je tort ?

Je vous remercie

2

J’ai utilisé la commande suivante en l’utilisant Bot de télégramme Python pour envoyer la photo avec une légende :

 context.bot.sendPhoto(chat_id=chat_id, photo=
"url_of_image", caption="This is the test photo caption")

Envoyer une photo nécessite au moins deux paramètres ; le premier est le but chat_id, et pour la seconde photo Vous avez trois options :

  1. Exister id_fichier si la photo a déjà été téléchargée sur le serveur Telegram (recommandé car vous n’avez pas besoin de la télécharger à nouveau).
  2. Si la photo est téléchargée ailleurs, transmettez l’URL http complète et le télégramme la téléchargera (la taille maximale de la photo est de 5 Mo atm).
  3. Publiez le fichier avec des données en plusieurs parties/formulaires comme vous souhaitez le télécharger via un navigateur (taille de photo max 10 Mo de cette façon).