淡竹叶 发表于 2015-10-19 19:20:05

不在一个房间内能否获取指定用户的在线状态

您好,BRAC_GetFriendStatus获取好友在线状态好像是要求在同一房间内,不进入房间如何获取指定userId的用户在线状态?

佰锐科技-邵光清 发表于 2015-10-19 19:45:47

您好,BRAC_GetFriendStatus获取好友在线状态,无需进入房间调用,登录成功即可调用的。

淡竹叶 发表于 2015-10-19 19:59:13

佰锐科技-邵光清 发表于 2015-10-19 19:45
您好,BRAC_GetFriendStatus获取好友在线状态,无需进入房间调用,登录成功即可调用的。

没有好友关系,怎么才算好友,,知道对方的userId就能查?

佰锐科技-邵光清 发表于 2015-10-19 20:09:23

淡竹叶 发表于 2015-10-19 19:59
没有好友关系,怎么才算好友,,知道对方的userId就能查?

您好,登录系统成功就建立了好友关系,调用BRAC_GetFriendStatus传入userid就能获取该用户的在线状态的。

淡竹叶 发表于 2015-10-20 09:38:49

佰锐科技-邵光清 发表于 2015-10-19 20:09
您好,登录系统成功就建立了好友关系,调用BRAC_GetFriendStatus传入userid就能获取该用户的在线状态的。

您好,
function getFriendStatus(dwFriendUserId){
        alert(dwFriendUserId);
        var errorcode = BRAC_GetFriendStatus(dwFriendUserId);
        alert(errorcode+"============="+dwFriendUserId);
        return errorcode==1?true:false;
}
我现在获取的状态errorcode一直是0,无论在不在线

佰锐科技-邵光清 发表于 2015-10-20 09:42:29

佰锐科技-邵光清 发表于 2015-10-19 20:09
您好,登录系统成功就建立了好友关系,调用BRAC_GetFriendStatus传入userid就能获取该用户的在线状态的。

您好,这个回复有误,建立好友关系需要使用好友接口,目前callcenterserver业务服务器有集成了好友接口,在callcenter业务服务器里面建立好友关系,并同步到客户端,可参考:如何实现任意两用户之间的音视频交互、

AnyChat大厅好友业务逻辑详解

淡竹叶 发表于 2015-10-20 10:09:06

佰锐科技-邵光清 发表于 2015-10-20 09:42
您好,这个回复有误,建立好友关系需要使用好友接口,目前callcenterserver业务服务器有集成了好友接口, ...

您好,我这边服务端代码
// 用户信息控制
        public static native int UserInfoControl(int dwUserId, int dwCtrlCode, int wParam, int lParam, String lpStrValue);
AnyChatServerSDK.UserInfoControl(house.getAcUserId(), AnyChatServerSDK.BRAS_USERINFO_CTRLCODE_ADDFRIEND, chgUser.getAcUserId(), chgUser.getAcUserId(), "");
并没有两个用户id可以传入。
另外,我问一下,如果我在登录的时候给其和某一位用户添加好友关系,那么某一用户不在线或退出的时候好友关系还存在么??这种好友关系什么时候会消失?

佰锐科技-邵光清 发表于 2015-10-20 10:30:25

淡竹叶 发表于 2015-10-20 10:09
您好,我这边服务端代码
// 用户信息控制
        public static native int UserInfoControl(int dwUserId, i ...

您好,不是将两个用户的id传入,而是通过for循环的方式,将在线用户一一添加为好友,我们服务端的源码有这样的操作,可以参考一下噢!
如果添加了好友信息并保存之后,即使退出或者离线,这种好友信息还存在;如果不保存好友信息,退出之后,好友关系就消失了,或者手动来解除好友关系。

淡竹叶 发表于 2015-10-20 11:03:57

佰锐科技-邵光清 发表于 2015-10-20 10:30
您好,不是将两个用户的id传入,而是通过for循环的方式,将在线用户一一添加为好友,我们服务端的源码有 ...

int err = AnyChatServerSDK.UserInfoControl(chgUser.getAcUserId(), AnyChatServerSDK.BRAS_USERINFO_CTRLCODE_ADDFRIEND, house.getAcUserId(), 0, "");

登录成功之后指定与某一用户添加好友这样和源码是一个意思啊,这里面chgUser.getAcUserId()是1001,house.getAcUserId()是1,,,页面上,用户为1,调用var errorcode =BRAC_GetFriendStatus(dwFriendUserId);
其中dwFriendUserId为1001,,返回值一直是0

陈文仲 发表于 2015-10-20 14:25:10

本帖最后由 陈文仲 于 2015-10-20 14:26 编辑

淡竹叶 发表于 2015-10-20 11:03
int err = AnyChatServerSDK.UserInfoControl(chgUser.getAcUserId(), AnyChatServerSDK.BRAS_USERINFO_C ...
您好,互相加为好友时,有没有将信息同步给指定的客户端呢?
页: [1] 2 3
查看完整版本: 不在一个房间内能否获取指定用户的在线状态