Telegram Bot getChat 方法在频道上使用整数 id returns 旧细节

Telegram Bot getChat method on channels using integer id returns old details

我们有一个网络应用程序,用户将我们的机器人添加到 his/her 频道中作为管理员,并且可以从网络应用程序中做一些事情(例如 posting/editing 带有标记按钮的项目..等),我们的应用在很大程度上基于频道整数 chat_id(示例:chat_id=-1001006616144)而不是 (@username) ,一切正常...问题是:

当频道所有者更改频道用户名(例如@foo 到@bar)时,机器人 getChat 方法仍然 returns 旧频道的用户名 (@foo) 如果我传递频道整数id (e.g: -1001006616144) ,虽然没有用户名@foo的频道了

但这不适用于更改频道标题,我的意思是如果所有者更改频道标题,getChat(以整数 id 作为参数)方法立即 returns 更新的频道标题(和用户名)

我需要使用整数 chat_id 因为它在通道的生命周期内保持不变,直到它被删除并且我的网络应用程序需要更新的@username 和标题作为只要我的机器人是频道管理员
这是某种错误吗?任何人都可以为此提出解决方法,以便我可以获得更新的频道信息(最多 12 小时间隔)吗?我正在使用 PHP BTW

这似乎是 Telegram Bot API 本身的问题。你必须明白你正在与之交谈的 HTTP API (api.telegram.org) 只是一个类似代理的界面,也是一个 regulat Telegram 客户端(只是一个机器人,而不是一个用户登录)。那里使用的缓存可能把它搞砸了。 您应该联系 @BotSupport 了解此事。

解决此问题的方法可能是使用非官方 PWRTelegram API。它不能保证与官方 api 具有相同的正常运行时间,但具有一些疯狂的功能。