我如何以编程方式向@BotFather发送消息?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何以编程方式向@BotFather发送消息?相关的知识,希望对你有一定的参考价值。

我知道,如果您将命令“ / newbot”发送到机器人“ @BotFather”,则可以在电报中创建一个机器人。但是,为此,您需要拿起设备,打开电报,与“ @BotFather”打开聊天,然后向他发送命令“ / newbot”。可以通过编程方式完成上述所有操作吗?附言:这不是懒惰,而是尝试优化解决方案。

答案

是的,可以与mtproto库(热身图,telethon,madelineproto等...)创建此类交互

这里是使用Telethon的PoC脚本:

from telethon import TelegramClient, events

api_id = ...
api_hash = "..."
client = TelegramClient('session', api_id, api_hash)

BOT_NAME="..."
BOT_USER_NAME="..." # must end with -bot

@client.on(events.NewMessage)
async def message_handler(event):
    if 'Please choose a name for your bot' in event.raw_text:
        await event.reply(BOT_NAME)
    elif 'choose a username for your bot' in event.raw_text:
        await event.reply(BOT_USER_NAME)
    elif 'Done! Congratulations on your new bot' in event.raw_text:
        print("Bot created!")
        await client.disconnect()

async def main():
    await client.send_message('me', '/newbot')


client.start()
client.loop.run_until_complete(main())
client.run_until_disconnected()

您从app_id获取app_hashhttps://my.telegram.org/值这是Telethon的doc

以上是关于我如何以编程方式向@BotFather发送消息?的主要内容,如果未能解决你的问题,请参考以下文章

telegrom bot 发送消息

如何以编程方式发送 ONLongPressGesture?

以编程方式停止向iPhone发送消息

如何以编程方式更改解析推送通知图标?

如何让我的网络浏览器以编程方式说话?

以编程方式将 WhatsApp 发送到没有选择器的联系人列表