Forum
>>
Programmazione Python
>>
Web e Reti
>>
Problemi con bot telegram
Pagina: 1
Esegui il login per scrivere una risposta.
Pagina: 1
Scritto da KeyMan98 |
2021-03-15 08:01:44 - Problemi con bot telegram
|
Un paio di mesi fa ho creato un bot. Fino a qualche giorno fa ha funzionato perfettamente, poi si è bloccato per magia. Dopo diversi tentativi ho scoperto che, mettendo i bot nel canale che gestisco, si impallano definitivamente e danno errore all'infinito.
Ecco il codice: import telepot import time bot = telepot.Bot("token") def handle(msg): content_type, chat_type, chat_id = telepot.glance(msg) # restituisce 3 variabili: content_type, chat_type, chat_id print(content_type, chat_type, chat_id) nome = msg['from']['first_name'] if content_type == 'text': bot.sendMessage(chat_id, 'Ciao %s, mandami un video a cui applicare la didascalia...\nIl nome della didascalia verrà preso dal nome originale del file' % nome) if content_type == 'video' and chat_id == mio id: file_id = msg['video']['file_id'] file_name = msg['video']['file_name'] chat_id, message_id = telepot.message_identifier(msg) print(chat_id, message_id) bot.sendVideo(chat_id='@canale', video=file_id, duration=None, height=None, caption=file_name, parse_mode=None, supports_streaming=True, disable_notification=None, reply_to_message_id=None, reply_markup=None) if content_type == 'video' and chat_id != il mio id: file_id = msg['video']['file_id'] file_name = msg['video']['file_name'] chat_id, message_id = telepot.message_identifier(msg) print(chat_id, message_id) bot.sendVideo(chat_id, video=file_id, duration=None, height=None, caption=file_name, parse_mode=None, supports_streaming=True, disable_notification=None, reply_to_message_id=None, reply_markup=None) bot.message_loop(handle) while 1: time.sleep(3)Ecco l'errore: Traceback (most recent call last): File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1191, in get_from_telegram_server offset = max([relay_to_collector(update) for update in result]) + 1 File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1191, in <listcomp> offset = max([relay_to_collector(update) for update in result]) + 1 File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1164, in relay_to_collector key = _find_first_key(update, ['message', File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 68, in _find_first_key raise KeyError('No suggested keys %s in %s' % (str(keys), str(d))) KeyError: "No suggested keys ['message', 'edited_message', 'channel_post', 'edited_channel_post', 'callback_query', 'inline_query', 'chosen_inline_result', 'shipping_query', 'pre_checkout_query'] in {'update_id': 360389344, 'my_chat_member': {'chat': {'id': -1001342579018, 'title': 'canale', 'username': 'canale', 'type': 'channel'}, 'from': {'id': 651746712, 'is_bot': False, 'first_name': 'Gianmarco', 'username': 'mio username', 'language_code': 'it'}, 'date': 1615790632, 'old_chat_member': {'user': {'id': 1688038895, 'is_bot': True, 'first_name': 'Didascalia Automatica', 'username': 'auto_didascalia_bot'}, 'status': 'left'}, 'new_chat_member': {'user': {'id': 1688038895, 'is_bot': True, 'first_name': 'Didascalia Automatica', 'username': 'auto_didascalia_bot'}, 'status': 'administrator', 'can_be_edited': False, 'can_manage_chat': True, 'can_change_info': True, 'can_post_messages': False, 'can_edit_messages': False, 'can_delete_messages': False, 'can_invite_users': False, 'can_restrict_members': True, 'can_promote_members': False, 'can_manage_voice_chats': True, 'is_anonymous': False}}}" Traceback (most recent call last): File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1191, in get_from_telegram_server offset = max([relay_to_collector(update) for update in result]) + 1 File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1191, in <listcomp> offset = max([relay_to_collector(update) for update in result]) + 1 File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 1164, in relay_to_collector key = _find_first_key(update, ['message', File "C:\Users\GianmarcoAppData\Local\Programs\Python\Python38\lib\site-packages\telepot\__init__.py", line 68, in _find_first_key raise KeyError('No suggested keys %s in %s' % (str(keys), str(d))) KeyError: "No suggested keys ['message', 'edited_message', 'channel_post', 'edited_channel_post', 'callback_query', 'inline_query', 'chosen_inline_result', 'shipping_query', 'pre_checkout_query'] in {'update_id': 360389344, 'my_chat_member': {'chat': {'id': -1001342579018, 'title': 'canale', 'username': 'canale', 'type': 'channel'}, 'from': {'id': 651746712, 'is_bot': False, 'first_name': 'Gianmarco', 'username': 'mio username', 'language_code': 'it'}, 'date': 1615790632, 'old_chat_member': {'user': {'id': 1688038895, 'is_bot': True, 'first_name': 'Didascalia Automatica', 'username': 'auto_didascalia_bot'}, 'status': 'left'}, 'new_chat_member': {'user': {'id': 1688038895, 'is_bot': True, 'first_name': 'Didascalia Automatica', 'username': 'auto_didascalia_bot'}, 'status': 'administrator', 'can_be_edited': False, 'can_manage_chat': True, 'can_change_info': True, 'can_post_messages': False, 'can_edit_messages': False, 'can_delete_messages': False, 'can_invite_users': False, 'can_restrict_members': True, 'can_promote_members': False, 'can_manage_voice_chats': True, 'is_anonymous': False}}}" |
|
Scritto da rmarzocchi84 |
2021-04-16 21:49:49 - Re: Problemi con bot telegram
|
stesso problema, temo dovuto al fatto che dal mio telefono per elimiare il bot l'ho inavvertitamente bloccato, secondo voi c'è un modo di sbloccarlo?
Sembrerebbe comunque un limite della libreria telepot che non è più supportata |
|
Scritto da KeyMan98 |
2021-05-15 12:55:01 - Re: Problemi con bot telegram
|
Si è un problema della libreria, non supporta le Api più recenti
|
|
Scritto da Facen |
2021-10-15 08:20:17 - Re: Problemi con bot telegram
|
Capisco, anch'io ho sempre avuto un problema con questi bot su Telegram e con le app in generale sul mio telefono. Ma penso che sia solo perché sono diventato troppo vecchio per le nuove tecnologie, e non posso nemmeno più gestire un'app ajax, anche se è elementare. Ecco perché i bot in Telegram sono un totale deserto per me.
|
Pagina: 1
Esegui il login per scrivere una risposta.