AnyChat技术支持论坛

标题: 如何得到一个没有人的房间号码 [打印本页]

作者: wearilybird    时间: 2016-3-18 13:20
标题: 如何得到一个没有人的房间号码
现在我是需要拿到一个房间号码,这个房间是没有人的。我好在这个房间里发起多人聊天,所以要确保房间是没有人的。

作者: 佰锐科技-陈伟    时间: 2016-3-18 13:35
您好,在使用进入房间的接口时,需要传入参数“roomid”房间号。核心服务器接收进入房间的请求后,才会自动创建此房间。


作者: wearilybird    时间: 2016-3-18 13:51
可是我自己随机设置的房间号码,有可能之前已经被使用了。这个有没有办法避免?
作者: 佰锐科技-江裕    时间: 2016-3-18 13:57
wearilybird 发表于 2016-3-18 13:51
可是我自己随机设置的房间号码,有可能之前已经被使用了。这个有没有办法避免?

您好,可以在业务服务器上对使用的房间号码进行记录操作。
作者: wearilybird    时间: 2016-3-18 14:13
可是客户端通过什么方式能知道那?
作者: wearilybird    时间: 2016-3-18 14:14
还有个问题,客户端登录成功后怎么知道是不是又退出了?这种退出可能是掉线或者其他可能的异常情况。
作者: 佰锐科技-江裕    时间: 2016-3-18 14:29
wearilybird 发表于 2016-3-18 14:14
还有个问题,客户端登录成功后怎么知道是不是又退出了?这种退出可能是掉线或者其他可能的异常情况。

您好,可以调用设置用户注销(扩展)回调函数DWORD BRAS_SetOnUserLogoutActionExCallBack(BRAS_OnUserLogoutActionEx_CallBack
lpFunction, LPVOID lpUserValue)。
当已登录成功的用户网络异常断开时,SDK 将会触发所设置的回调函数。
作者: wearilybird    时间: 2016-3-18 14:44
我刚才没有说清楚,在客户端,用户准备发起视频,但是不知道是不是已经登录也不知道是不是已经退出了。我想问的是客户端有什么方式能知道本地用户已经登录了的
作者: 佰锐科技-江裕    时间: 2016-3-18 15:00
wearilybird 发表于 2016-3-18 14:44
我刚才没有说清楚,在客户端,用户准备发起视频,但是不知道是不是已经登录也不知道是不是已经退出了。我想 ...

您好,如果用户已经退出,用户是不能发起视频的。
作者: 佰锐科技-陈伟    时间: 2016-3-18 15:04
wearilybird 发表于 2016-3-18 14:44
我刚才没有说清楚,在客户端,用户准备发起视频,但是不知道是不是已经登录也不知道是不是已经退出了。我想 ...

您好,可参考:AnyChat大厅好友业务逻辑详解
作者: 佰锐科技-邵光清    时间: 2016-3-21 09:44
wearilybird 发表于 2016-3-18 13:51
可是我自己随机设置的房间号码,有可能之前已经被使用了。这个有没有办法避免?

您好,进入特定的房间有如下方法:1、以userid(唯一性)为房间id创建房间;2、服务器端获取房间列表,可以知道哪些房间未创建,服务器开放新的API接口,支持获取房间列表及用户列表
作者: admin    时间: 2016-3-21 18:16
使用API:
  1. // 进入房间
  2. DWORD BRAC_EnterRoomEx(LPCTSTR lpRoomName, LPCTSTR lpRoomPass)
复制代码
可以创建一个GUID的字符串作为RoomName,这样就会由服务器自动分配一个单独的房间roomid了。
作者: wearilybird    时间: 2016-4-1 11:42
ok,谢谢了      




欢迎光临 AnyChat技术支持论坛 (http://bbs.anychat.cn/) Powered by Discuz! X3