适用于iOS的PubNub重播API示例

时间:2016-07-08 08:24:07

标签: ios api swift2 pubnub

我正在尝试按照重播功能的建议实时播放PubNub消息,但我在网上找到的唯一示例只是在一定时间范围内获取消息的静态历史记录。

有没有人知道实际处理Replay API请求的在线教程(而不是历史API),或者可以在这里提供一些示例代码(如果可能的话,Swift)?

非常感谢。

1 个答案:

答案 0 :(得分:2)

自定义PubNub重播实现

重播功能仅在PubNub Node/JavaScript SDK中可用,并且已被弃用(它不会成为v4 SDK的一部分),因为它不需要。如果需要,您可以在此端复制此功能。您很可能希望从服务器而不是客户端应用程序执行此操作,但您也可以从客户端执行此操作。

使用history API (Swift SDK for your client implementation),您将根据需要检索尽可能多的消息,因为history每次调用仅返回100条消息(将来会出现新功能以简化迭代存储分页)。

以下是来自您的服务器的高级设计,用于实现您自己的replay功能:

  1. 在您的服务器上从所需频道获取历史记录 - 您一次只能收到100条消息,因此您可能必须翻阅消息才能获得超过100条消息。
  2. 创建一个新频道,以重播消息,让您的客户知道该频道名称是什么,让他们订阅它。您可以在其他客户已订阅的频道上发布具有重播频道名称的消息。
  3. 一旦客户订阅了此重播频道,您就可以继续重播这些消息了。
  4. 从使用history检索到的最早的邮件开始,将其发布,然后暂停一段刚刚发布的消息timetoken与要发布的下一条消息的timetoken之间的时间差。