我正在为Rubyists开发我的开源项目BOTServer和http://telegram.org Bot平台Webhooks服务器。
在我创建的Telegram Bot上发送消息(sendMessage
API端点)时遇到了奇怪的错误。当我向我创建的特定Bot发送消息时,我收到了这些错误:
错误代码400 - > 错误请求:群组已停用
Telegram::Bot::Exceptions::ResponseError - Telegram API has returned the error. (ok: "false", error_code: "400", description: "[Error]: Bad Request: group is deactivated")
和/或
错误代码403 - > Bot在聊天中被踢了
Telegram::Bot::Exceptions::ResponseError - Telegram API has returned the error. (ok: "false", error_code: "403", description: "[Error]: Bot was kicked from a chat")
这真的很奇怪。 似乎问题与特定Bot的“故事”有关(错误不是系统性的,我没有与另一个机器人有问题)。事实上,我完成了以下步骤:
问题1 好吧我很确定发生了错误的电报服务方面,我可以删除并重建机器人...对解决方案有任何更好的想法吗?
问题2 有一个已公布的Telegram Bot错误列表?我没有在Telegram Bot文档/教程中找到。
我喜欢电报架构!但我觉得Bots API存在一些问题/错误,特别是最近在群组和Cahnnel中插入Bots的可能性。有类似的经历吗?
答案 0 :(得分:1)
我回答自己找到问题的可能原因。问题出现在我过去创建的一个特定的Bot(我从一个组中删除)。具体问题如下:
第1步: 创建之后,我在2个用户的组上添加了该机器人:(我自己和第二个人)。
第2步: 之后我从小组中删除了该机器人。
第3步: 我用那个机器人来测试我的BOTserver 发送SendMessage od回复webhook更新。 现在我遇到了上面提到的400/403错误。
第4步: 我 DELETED 那个Bot,和BotFather聊天。
第5步: 我再次使用** SAME identichal name *
第6步: 我再次测试,我提出了一个常见的问题:
Telegram API has returned the error. (ok: "false", error_code: "401", description: "[Error]: Unauthorized"):
第7步: 我用不同的名字创建了新的机器人 最后,不再有错误!
我公平原来的Bot名字仍然存在于"错误"电报服务器内部状态。我的想法是,从组中添加/删除Bots存在一些问题/错误。
删除机器人名称创建的问题,不再使用它" name" :(
重新创建一个名称不同的机器人。
有类似的经历吗?
答案 1 :(得分:0)
我通过WebHook
请求收到此错误。
将僵尸程序添加到组并通过Add to group
禁用机器人BotFather
功能后会出现此问题。
此问题一直存在,直到我通过/getUpdates
方法手动获取更新并将其传递给Telegram服务器,之后WebHook
正常工作。
希望这也适合你。
答案 2 :(得分:0)
如果bot API返回响应错误,则返回ok,如此示例
try {
return Telegram::sendMessage($message);
} catch (TelegramResponseException $exception) {
Log::info($exception->getMessage());
return ['ok' => 'true'];
}