首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在电传中处理contactRequest

如何在电传中处理contactRequest
EN

Stack Overflow用户
提问于 2022-07-25 10:27:04
回答 1查看 262关注 0票数 0

所以,我正在用Node中的Telegraf.js制作一个电报机器人,而机器人需要用户的电话号码,而在Telegraf中,请求电话号码的一种方法是这样的

代码语言:javascript
复制
ctx.reply(
    "Phone number is required",
    {
      ...Markup.keyboard([
        Markup.button.contactRequest("Send Contact"),
      ]).resize(),
    }
  );

这很好,但是我不知道如何处理联系人请求的结果,我尝试使用bot.hears,把它当作回调按钮bot.hears

代码语言:javascript
复制
bot.hears("Send Contact",(ctx)=>{
  console.log("contact received")
})

但是这不起作用,所以我想知道是否有一种特殊的方法来处理Markup.button.contactRequest的响应

EN

回答 1

Stack Overflow用户

发布于 2022-10-10 05:03:26

我找到了解决办法。希望它也能帮到你

代码语言:javascript
复制
await ctx.telegram.sendMessage(ctx.chat.id, "Some text", {
    parse_mode: "Markdown",
    reply_markup: {
      one_time_keyboard: true,
      keyboard: [
        [
          {
            text: "Share Phone Number",
            request_contact: true,
          },
          {
            text: "Cancel",
          },
        ],
      ],
      force_reply: true,
    },
  });
bot.on("contact", (ctx: any) => {
  const contact = ctx.message.contact.phone_number;
  console.log("Hello Contact",contact);
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73107698

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档