0

我正在扩展这个使用AppWarp Client APIApp42 Backend构建的聊天客户端。

在适当的初始化和设置监听器之后,我可以成功地使用 _warpclient.getAllRooms();它的监听器获取所有可用的房间:

function onGetAllRoomsDone(rooms) {
    console.log(rooms);
    for(var i=0; i<rooms.getRoomIds().length; ++i) {
        _warpclient.getLiveRoomInfo(rooms.getRoomIds()[i]);
    }
}

问题:

但是,rooms.getRoomIds() 返回过时的动态房间(已死亡/已销毁,请参阅:此处的动态房间)。有没有办法识别这些陈旧的房间?

尝试:

  • 我已经广泛搜索了他们的API 参考,但没有找到任何关于如何实现这一点的信息。
  • 我还探索了回调中收到的房间对象onGetLiveRoomInfoDoneonGetAllRoomsDone 但它不包含任何相关内容。
  • 他们的 App42 管理控制台没有提供这些房间或其属性的列表。
4

1 回答 1

0

如果房间已被摧毁/死亡,它不会出现在 getRoomIds() 中。这可能是房间没有死,而是空的。尝试加入任何这样的房间,您将能够加入它。如果它死了,您的加入房间请求将失败。

一种罕见的情况是,当您调用 getAllRooms() 时,房间里有人,因此您在结果中得到了它,但是在您发送加入请求之前,它变空并被破坏了。

于 2013-10-30T09:34:12.030 回答