[英]Telethon duplicates messages when forwarding
我的腳本正在聽一些特定關鍵字的聊天。 當有匹配時,它會發送它與報告聊天。 但是當我的腳本在遠程服務器上運行時,我有一個在報告聊天中復制消息的錯誤。 而且我無法在本地機器上重新創建該錯誤。
client = TelegramClient('anon', api_id=API_ID, api_hash=API_HASH)
chats = []
for t in task_list:
chats.extend(t['chats_to_listen'])
message_ids = []
@client.on(events.NewMessage(chats=chats))
async def handle(event):
m_obj = event.message
m = event.message.to_dict()
print('=== if id in sents ids', m['id'] in message_ids)
if m['id'] in message_ids:
print('=== DUPLICATE', m)
else:
for task in task_list:
for key in task['keywords']:
if key in m['message']:
print('=== message', m['message'])
chat_match = set(task['chats_to_listen']) & set(m['to_id'].values())
if chat_match:
chat_for_report_name = task['chat_to_report']
# await m_obj.forward_to(chat_for_report_name)
await client.forward_messages(chat_for_report_name, m_obj, list(chat_match)[0])
print(f'=== MESSAGE {m["id"]} SENT!')
message_ids.append(m['id'])
# time.sleep(2)
break
else:
continue
break
print('=== IDS SENT', message_ids)
print('Running')
client.start()
client.run_until_disconnected()
print('Stopped')
我也嘗試了forward_to
方法,結果相同。
任何建議我都會很高興。 謝謝。
忘記在開發服務器上關閉我的應用程序:(
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.