首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Twilio SWIFT API get consumed始终返回0

Twilio SWIFT API get consumed始终返回0
EN

Stack Overflow用户
提问于 2018-08-20 00:50:48
回答 1查看 825关注 0票数 0

我想要在聊天频道旁边显示该频道有多少条消息尚未使用或未读(我假设这就是未使用的意思?)

目前,我向两个用户订阅的通道发送消息,即私人聊天。然后,在打开聊天窗口之前,我检查通道中是否有未使用的消息,但即使我调用setNoMessagesConsumedWithCompletion,它也总是显示0条消息。

我正在使用Swift API...What,我需要做什么才能找出我的通道中有多少报文尚未阅读?它们在什么时候会变为可读的?(当用户打开聊天通道并请求getLastWithCount?)

我在文档中读到,你必须设置一个叫做消费范围的东西来获取未消费的消息,但我不知道你是如何在SWIFT Api https://www.twilio.com/docs/chat/consumption-horizon中做到这一点的,这是针对Javascript API的,所以使用Swift API可能会更容易?

EN

回答 1

Stack Overflow用户

发布于 2018-08-20 08:43:25

我想出了解决方案。根据文档,您需要更新上次使用的消息索引。例如,如果用户打开了聊天窗口,您需要为该用户(或聊天客户端的实例)记录他们在关闭聊天之前看到的最后一条消息。我将所有消息存储在一个消息数组中,并使用消息数组的长度更新最后使用的消息索引:

代码语言:javascript
复制
generalChannel?.messages?.setLastConsumedMessageIndex(NSNumber.init(value: self.messages.count), completion: { (result, count) in
        if !result.isSuccessful() {
            print(result.error.debugDescription)
        }
    })

然后,如果您在用户不在该频道时向该频道发送消息,这些消息将被记录为未消费,您可以通过拨打以下电话获得该号码:

代码语言:javascript
复制
channel.getUnconsumedMessagesCount(completion: { (results, numberUnconsumed) in
                        print(numberUnconsumed)
                    })
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51919861

复制
相关文章

相似问题

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