不飞则已,一飞冲天;不鸣则已,一鸣惊人。这篇文章主要讲述如何收听Telegram Bot错误? (Google App Script + Webhooks)相关的知识,希望能为你提供帮助。
我开发了一个功能齐全的Telegram Bot,其中包含使用Webhooks读取和写入Google电子表格的Google App Script。
虽然机器人是稳定的,但有时它会因特定的用户交互而崩溃,例如按下按钮太快或者机器人在很短的时间内发送太多消息。
Error Handling section of the Telegram API提到错误在rpc_error构造函数中返回,但是没有任何方法可用于侦听可能发生的任何错误。
我想处理这些错误,但我知道的唯一方法是监听每个API请求的错误。
以下是我现在处理错误的示例:
function editKeyboardMessage(buttonArray) {
var id = PropertiesService.getUserProperties().getProperty("inline_form_chat_id");
var message_id = PropertiesService.getUserProperties().getProperty("inline_form_message_id");
var keyboardMarkup = {"inline_keyboard": buttonArray};
var data = https://www.songbingjia.com/android/{
method:"post",
payload: {
method: "editMessageReplyMarkup",
chat_id: String(id),
message_id: Number(message_id),
parse_mode: "html",
reply_markup: JSON.stringify(keyboardMarkup)
}
};
var response = UrlFetchApp.fetch(url + "/", data)
var responseCode = response.getResponseCode()
handleErrors(responseCode)
}
但是,对所有请求类型执行此操作似乎不切实际,并且它不允许完整的错误处理(例如独立于请求发生的错误处理,例如消息泛滥)。
预期的结果是在一个地方正确处理所有传入的错误。有没有办法用类似于用于监听更新的
doPost(e)
函数来监听所有机器人错误?答案由于我们目前正在谈论电报 - 它可能对其他人有帮助。 谈话始于https://t.me/BotTalk/105298
【如何收听Telegram Bot错误( (Google App Script + Webhooks))】
tl;
dr
你需要在你的最后做错误处理。如果您不使用库,请在发出错误请求后尝试检查Telegram中的每个响应。如果有错误,请相应地处理它们。推荐阅读
- Google表格使用Apps脚本插入散点图+趋势线
- 离线使用Google Apps Scripts
- 如何使用带有逗号分隔值的单元格通过apps脚本创建动态下拉列表
- 如何将.gpx文件附加到使用Google Apps脚本发送的邮件中()
- Google Apps脚本查找列的底部
- 我不能在android studio Gradle 4.7中使用ImageView
- 将关联数组转换为数字以在Apps脚本中写入工作表
- 提交后立即发布等级 - 如何使用Apps脚本
- 如何使用google apps脚本在自定义函数中编辑自定义函数的调用单元格()