2017-05-22 10 views
0

我们有一个web应用程序,用户可以在他/她的频道中以管理员身份添加我们的机器人,并可以从web应用程序中做一些事情(例如发布/编辑带有标记按钮的项目..等),我们的应用程序在很大程度上基于信道整数chat_id(例如:chat_id = -1001006616144),而不是(@username),一切工作正常...问题是:使用整数id的通道上的Telegram Bot getChat方法返回旧的细节

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

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

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

回答

1

这似乎是一个Telegram Bot API本身的问题。您必须明白您正在与之通话的HTTP API(api.telegram.org)仅仅是一个类似代理的界面,并且也是一个规范的Telegram客户端(只是使用bot,而不是用户登录)。这里使用的高速缓存可能会混淆了这一点。 您应该联系@BotSupport

解决方法可能是使用非官方的PWRTelegram API。它不能保证官方api的正常运行时间,但会伴随一些狡猾的特性。

+1

谢谢,我与支持团队联系并得到了这样的回答:“是的,这个问题确实需要一个地方。现在,getChat'方法可以在有人在其中写入消息后返回新的频道用户名。 –