首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何通过电报数据库库(TDLib)为Node.js请求用户的所有聊天/组

如何通过电报数据库库(TDLib)为Node.js请求用户的所有聊天/组
EN

Stack Overflow用户
提问于 2019-04-06 18:54:10
回答 1查看 1.2K关注 0票数 3

电报中的官方例子解释说,为了使用getChats()命令,需要设置两个参数“offset_order”和“offset_chat_id”。我正在使用这个用于node.js的TDLib包装器。因此,当我将getChats()与以下params一起使用时:

代码语言:javascript
运行
复制
'offset_order': '9223372036854775807',
'offset_chat_id': 0,
'limit': 100

就像在官方文件中解释的那样

例如,要从一开始就获得一个聊天列表,offset_order应该等于2^63 -1。

因此,我从用户列表的顶部得到100个聊天。

我不明白的是我怎么迭代这个列表?如何使用API分页?

当我试图进入一个合法的chat_id从中间的前100,我仍然得到相同的前100,所以这似乎没有什么区别。

如果我将offset_order更改为任何其他数字,我会得到一个空的聊天列表作为回报.

完全迷失在这里,正如我发现的每个 单人 示例所说的,与官方文档相同的东西,即如何获得第一个100。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-27 14:23:10

同样的问题,已经尝试了不同的方法和重新阅读文档很长一段时间,下面是一个决定:

  1. 执行getChats操作,就像处理'9223372036854775807' offset_order参数一样
  2. 使用上一次聊天的id执行getChat请求。这是一个离线请求,只是tdlib。
  3. 在这里,您将得到一个具有positions属性的聊天对象--从这里获取一个位置,如下所示:
代码语言:javascript
运行
复制
  positions: [
    {
      _: 'chatPosition',
      list: [Object],
      order: '6910658003385450706',
      is_pinned: false
    }
  ],
  1. 下一个请求- getChats -使用positions[0].order (3)作为offset_order
  2. (2)如果有更多的聊天

要做到这一点并不容易,所以如果能帮助像我这样来自谷歌的人,我会很高兴的:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55552416

复制
相关文章

相似问题

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