首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Telegram机器人应用程序接口,方法setMyCommands,谷歌应用程序脚本

Telegram机器人应用程序接口,方法setMyCommands,谷歌应用程序脚本
EN

Stack Overflow用户
提问于 2021-03-08 20:57:23
回答 1查看 290关注 0票数 1

我想在我的t-bot上设置一些命令,但是我不知道怎么做。

代码语言:javascript
代码运行次数:0
运行
复制
var token = "123456....";
var url = "https://api.telegram.org/bot" + token;

function setMyCommands(chat_id, message_id){
  var data = {
    method: "post",
    payload:{
      method: "setMyCommands",
      chat_id: String(chat_id),
      message_id: message_id,      
      parse_mode: "HTML"
    }
  };  
  UrlFetchApp.fetch(url + '/', data);
}

现在,我这样做,如果消息是"/command“这样做。通过以下方式:

代码语言:javascript
代码运行次数:0
运行
复制
function sendMessage(id, text, keyBoard){
  var data = {
    method: "post",
    payload: {
      method: "sendMessage",
      chat_id: String(id),
      text: text,
      parse_mode: "HTML",
      reply_markup: JSON.stringify(keyBoard)
    } 
  };
  UrlFetchApp.fetch(url + "/", data);
}


function doPost(e) {
  var contents = JSON.parse(e.postData.contents);
  var id = contents.message.from.id;
  var text = contents.message.text;

  if (text == "/command") {
    sendMessage(id,"someTEXT...") 
    
  }
}

你能不能也解释一下可变数据应该是什么样子的,以及我在哪里可以采用这种形式(或结构)来应用电报机器人API的其他方法。

EN

回答 1

Stack Overflow用户

发布于 2021-04-11 13:17:21

Pyhton案例:

创建变量:

代码语言:javascript
代码运行次数:0
运行
复制
BOT_TOKEN = '12324'
BOT_COMMANDS= [{"command":"a", "description":"aaa"},{"command":"b","description":"bbb"}]

创建函数:

代码语言:javascript
代码运行次数:0
运行
复制
def setMyCommands():
   send_text = 'https://api.telegram.org/bot' + BOT_TOKEN + '/setMyCommands?commands=' + str(json.dumps(BOT_COMMANDS) ) 
   response = requests.get(send_text)

并最终执行:

代码语言:javascript
代码运行次数:0
运行
复制
if __name__ == '__main__':
   #getMyCommands()
   setMyCommands()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66530275

复制
相关文章

相似问题

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