【问题标题】:Twilio conversation JS SDK - a proper way of fetching user conversationsTwilio 对话 JS SDK - 获取用户对话的正确方法
【发布时间】:2021-05-05 12:01:45
【问题描述】:

我正在尝试按最后一条消息创建日期排序显示所有用户的对话,但我有点困惑。

我在文档 (https://media.twiliocdn.com/sdk/js/conversations/releases/1.1.0/docs/Client.html#getSubscribedConversations__anchor) 中看到了 getSubscribedConversation 方法,但它没有说明页面大小和排序。它返回分页器,所以我假设它不会一次返回所有对话。

另一方面,我在 twilio github 项目中看到了一些示例,其中仅通过侦听 conversationAdded 事件将对话添加到列表中(即使对于以前创建的对话也确实会触发),但这似乎不是一个干净的解决方案- 如果用户属于 50 个对话,那么我应该处理每个事件并重新呈现列表 50 次?

总结一下,我有以下几个问题:

  1. getSubscribedConversation 是否一次返回所有用户的对话?
  2. 如果不是,那么默认页面大小是多少,是否可以更改(连同排序)
  3. 如果 getSubscribedConversation 确实返回分页器 - 如果我同时添加来自 conversationAdded 事件的对话,它不会中断吗?

【问题讨论】:

    标签: twilio twilio-conversations


    【解决方案1】:

    我无法回答你所有的问题,但我可以提供一些见解 -

    据我所知,getSubscribedConversations 返回 50 次对话。我还没有找到一种方法来更改该限制或对其进行排序(我不完全确定 Twilio 以什么顺序返回它们)。

    对于我正在处理的项目,我们需要按最近消息的顺序对对话进行排序。我目前处理它的方式是将最新消息存储在对话的属性上。我还通过使用递归函数加载所有对话来初始化应用程序。

    希望能给你一些启发。

    【讨论】:

    • 感谢您的回答@Rene。我的项目中有同样的情况并以完全相同的方式解决它 - 以递归方式获取所有页面并在本地对其进行排序。我还与 Twilio 支持人员聊天,他们确认 getSubscribedConversations 方法返回 50 个项目并且无法对其进行排序或改变顺序。
    • 哦,太好了,@emzet93!很高兴知道我并不孤单!我最初调用getSubscribedConversations 来获取最初的 50,然后在 Paginator 调用中进行递归。好奇这对你来说是否相似。
    猜你喜欢
    • 2022-07-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-01
    • 1970-01-01
    • 2017-06-30
    相关资源
    最近更新 更多