100 人民币或等值 USDT-解决 telegram bot 开发问题

307 天前
 killerzhangsan

在 api 要怎么发消息,才能够知道输入的内容是上一次点击的按钮触发的?

2316 次点击
所在节点    Telegram
31 条回复
iBugOne
307 天前
这个功能叫 Inline Keyboard [1](不知道 TG 怎么起的这么个名字),你提供一系列 buttons ,每个 button 带上不同的 callback_data ,用户点击某个按钮的时候,你的 bot 就会收到一条 callback query [2]

[1]: https://core.telegram.org/bots/features#inline-keyboards
[2]: https://core.telegram.org/bots/api#callbackquery

P.S. 可以邮件发我支付宝口令红包的口令
forQ
307 天前
button1 = Button.url('1', 'https://www.baidu.com')
button2 = Button.url('2', 'https://www.google.com')
button3 = Button.url('3', 'https://www.facebook.com')
button = [[button1, button2], [button3]]
coinbase
307 天前
可以个用户加个状态
mapleisaac
307 天前
用中国手机好像收不到验证码了.
killerzhangsan
307 天前
@iBugOne 这个我知道。最后一步,用户输入信息后,怎样知道他点击的是哪个按钮?
SingeeKing
307 天前
@killerzhangsan 那就得自己维护上下文了
drymonfidelia
307 天前
@killerzhangsan 你发消息的时候给每个按钮起个名字,点击事件里就会带上用户点的按钮的这个名字,你就可以知道是哪个按钮了
iBugOne
307 天前
@killerzhangsan Telegram 没有提供这个功能,你需要自己搞个数据库记录这个状态。反正每个用户就一个对话,而且私聊的 chat_id 就是 user_id ,也不会太麻烦
killerzhangsan
307 天前
@drymonfidelia 没有懂我的意思。callback query 都实现完了。现在是我不知道他更改的是点击编辑 name 或者编辑 about 后,用户输入内容,到底是修改 name 还是 about,没有找到怎么关联上下文
vacuitym
307 天前
@killerzhangsan 点之后去后台发个请求标识下他要改什么?然后准备接收那个数据
446ENzu91KZ73A33
307 天前
@killerzhangsan 点编辑 name 返回一个提示比如"请输入新名称",然后强制用户自动回复这个提示,bot 收到消息可能根据 replay_message 里面内容匹配,如果匹配到是"请输入新名称",就是修改名称
killerzhangsan
307 天前
@iBugOne 只能自己做么,每个用户维护一个操作集合。每次用户给 bot 发送消息的时候,都要先去数据库查询一下?好低效。
killerzhangsan
307 天前
@mu666 怎么个强制法?
killerzhangsan
307 天前
@mu666 强制它必须使用消息转发? bot father 这也没有强制哦
446ENzu91KZ73A33
307 天前
@killerzhangsan python 的 telegram 库里面 send_message 有个 reply_markup 等于 ForceReply(selective=True)),这样收到消息就会自动引用(回复),你可以试下。之前是这样,不知道现在还能不能了
446ENzu91KZ73A33
307 天前
@killerzhangsan 强制回复你的提示信息,才能知道他回的是哪个消息,点的哪个选项啊
446ENzu91KZ73A33
307 天前
@killerzhangsan 也不能说是强制,就是用 bot 发消息给用户,会自动 replay 那条消息。用户要是自己主动点叉掉,就是没了,
446ENzu91KZ73A33
307 天前
@mu666 也不能说是强制,就是加了那个之后用 bot 发消息给用户,用户那边会自动 replay 那条消息。用户要是自己主动点叉掉,就是没了,
killerzhangsan
307 天前
@mu666 嗯。你这应该是最接近 bot father 功能的实现。虽然 bot father 这里没有所谓的强制回复。
等我晚上回去试试,成功后就兑现,不白嫖。
446ENzu91KZ73A33
307 天前
@killerzhangsan 可以,大佬要是需要 bot 开发,也可以留 tg 号我加你

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1016881

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX