AnyChat技术支持论坛

标题: 关于AnyChatQueue项目的问题咨询 [打印本页]

作者: liweiqiang888    时间: 2015-7-23 09:42
标题: 关于AnyChatQueue项目的问题咨询
您好,我在使用anychat做二次开发时,遇到如下问题:
背景:我需要做的是打开页面时,自动初始化并且连接服务器,从session获取客服信息直接登录服务器,获取营业厅信息并自动进入其中某个营业厅。
效果:客服登录业务系统后,打开客服页面,直接进入客服服务页面,无需登录anychat服务器以及选择营业厅。
现状:目前已实现初始化完成后,连接服务器并登录服务器;
问题:营业厅信息是通过事件(OnAnyChatObjectUpdate)动态添加的,当有多个营业厅时,我该如何判断什么时候进入营业厅,或者是否不需要获取营业厅信息,因为知道营业厅ID,我直接进入指定营业厅?


烦请大神帮助!


作者: admin    时间: 2015-7-23 10:23
您好,请参考:AnyChatQueue示例工程如何自动进入营业厅以及队列?
作者: 佰锐科技-邵光清    时间: 2015-7-23 10:25
您好,获取到营业厅ID后可以进入指定的营业厅,请参考:
GetID("enterHall").click=function(){
/**进入营业厅*/
BRAC_ObjectControl(ANYCHAT_OBJECT_TYPE_AREA,hallbuinessNum,ANYCHAT_AREA_CTRL_USERENTER, 0, 0, 0, 0, "");
}
GetID("enterQueueList").click=function(){
/**进入队列*/        
BRAC_ObjectControl(ANYCHAT_OBJECT_TYPE_QUEUE,queueid,ANYCHAT_QUEUE_CTRL_USERENTER, 0, 0, 0, 0, "");
}

作者: liweiqiang888    时间: 2015-7-23 14:33
admin 发表于 2015-7-23 10:23
您好,请参考:AnyChatQueue示例工程如何自动进入营业厅以及队列?

您好,我这边根据您的示例已经完成自动进入营业厅。
现在坐席端点击开始服务调用“BRAC_ObjectControl(ANYCHAT_OBJECT_TYPE_AGENT, mSelfUserId, ANYCHAT_AGENT_CTRL_SERVICEREQUEST, 0, 0, 0, 0, "");”后,会触发那个函数。
我这边调用此函数后,客户端的排队时间清零,但是没有收到呼叫信息?
作者: 佰锐科技-邵光清    时间: 2015-7-23 14:51
本帖最后由 佰锐科技-邵光清 于 2015-7-23 15:09 编辑
liweiqiang888 发表于 2015-7-23 14:33
您好,我这边根据您的示例已经完成自动进入营业厅。
现在坐席端点击开始服务调用“BRAC_ObjectControl(A ...

收到开始服务事件后,会触发anychatevent.js中的OnAnyChatServiceStart回调,在该回调中会有呼叫者id和被呼叫者id的传入,关于如何呼叫客户,可以参考AnyChatQueue的demo。
作者: liweiqiang888    时间: 2015-7-23 16:11
佰锐科技-邵光清 发表于 2015-7-23 14:51
收到开始服务事件后,会触发anychatevent.js中的OnAnyChatServiceStart回调,在该回调中会有呼叫者id和被 ...

你好,基本功能我这边都实现了,我这边还有个问题:
设计模式:网厅项目,只有一个营业厅,只有一个队列,同时多个坐席登录,共同服务于一个队列,在anychat内部,是否会进行加锁处理?竞态情况出现,anychat本身是否有机制解决此问题?
作者: 佰锐科技-邵光清    时间: 2015-7-23 16:16
liweiqiang888 发表于 2015-7-23 16:11
你好,基本功能我这边都实现了,我这边还有个问题:
设计模式:网厅项目,只有一个营业厅,只有一个队列 ...

您好,可以参考:2015-07-08 AnyChat提供业务排队整体解决方案
作者: admin    时间: 2015-7-23 16:46
在anychat内部,是否会进行加锁处理?竞态情况出现,anychat本身是否有机制解决此问题?

AnyChat已经处理竞态了,这是最基本的要求,AnyChat技术团队有十年的开发经验,您可以放心使用的,

另外我们针对排队系统有专项压力测试,单个队列上限到2000用户,普通PC做服务器其资源占用率不超过10%,性能也是有深度优化的。

作者: liweiqiang888    时间: 2015-7-23 17:09
admin 发表于 2015-7-23 16:46
AnyChat已经处理竞态了,这是最基本的要求,AnyChat技术团队有十年的开发经验,您可以放心使用的,

...

谢谢,我现在又发现个问题,麻烦您看下:
使用:BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AREA, hallbuinessNum, ANYCHAT_AREA_INFO_QUEUEUSERCOUNT);来获取当前营业厅的人数时,只有第一次进入营业厅时,能够正确的显示人数,我在增加排队数量时,触发ANYCHAT_QUEUE_EVENT_STATUSCHANGE队列变化时,重新获取当前营业厅的排队人数时,一直获取的是第一次进入时的人数,烦请帮忙看下是什么原因?
作者: admin    时间: 2015-7-23 17:28
您好,您用标准示例代码:AnyChatQueue接入您的服务器(做为观察者身份),看排队人数是否正常?

queue.jpg (49.14 KB, 下载次数: 5596)

queue.jpg

作者: bairui.tony    时间: 2015-7-23 17:42
您好,通过调用“BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AREA, hallbuinessNum, ANYCHAT_AREA_INFO_QUEUEUSERCOUNT);”代码,函数返回值是为当前营业厅内排队的人数。在触发ANYCHAT_QUEUE_EVENT_STATUSCHANGE队列变化事件时,也是可以调用此代码获取当前营业厅内人数的。

您可以这样来逐步分析:
1、运行我们AnyChat官网提供的示例程序:AnyChatQueue,看是否出现您所描述的问题;

2、如果方便的话,可以贴出您编写的代码进行分析,一起查找问题原因。
作者: liweiqiang888    时间: 2015-7-23 17:43
@admin 烦请看下,确实不更新

QQ截图20150723174255.jpg (378.6 KB, 下载次数: 1332)

QQ截图20150723174255.jpg

作者: liweiqiang888    时间: 2015-7-23 17:48
// 队列状态变化
function OnAnyChatQueueStatusChanged(dwObjectType, dwObjectId) {
        AddLog('function OnAnyChatQueueStatusChanged(dwObjectType: ' + dwObjectType + ',dwObjectId: ' + dwObjectId, LOG_TYPE_API);
        refreshAgentServiceInfo();
}


//刷新坐席进入服务区域后的显示信息
function refreshAgentServiceInfo() {
    if (userType == 2) {
        var queueCount = BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AREA, hallbuinessNum, ANYCHAT_AREA_INFO_QUEUECOUNT);
        var queuesUserCount = BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AREA, hallbuinessNum, ANYCHAT_AREA_INFO_QUEUEUSERCOUNT);
        //累计服务时长
        var serviceTotalTime = BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AGENT, currentAgentID, ANYCHAT_AGENT_INFO_SERVICETOTALTIME);
        
        //累计服务的用户数
        var serviceUserCount = BRAC_ObjectGetIntValue(ANYCHAT_OBJECT_TYPE_AGENT, currentAgentID, ANYCHAT_AGENT_INFO_SERVICETOTALNUM);
        $('#userCounts').text(queuesUserCount + "个");
        $('#passCounts').text(serviceUserCount + "人");
        $('#lineCounts').text(queueCount + "个");
    }
}

作者: liweiqiang888    时间: 2015-7-23 17:53
如果坐席不重新登录,则不能正确显示营业厅总排队人数,坐席重新登录后,则能正常显示营业厅排队人数

11111.jpg (348.13 KB, 下载次数: 1358)

11111.jpg

2222.jpg (191.55 KB, 下载次数: 1334)

2222.jpg

作者: liweiqiang888    时间: 2015-7-23 18:03
刚才发的图有点问题,重新发

333.jpg (171.02 KB, 下载次数: 1325)

333.jpg

作者: bairui.tony    时间: 2015-7-23 18:08
可以将OnAnyChatQueueStatusChanged事件的代码替换如下的代码再看看结果。

// 队列状态变化
function OnAnyChatQueueStatusChanged(dwObjectType, dwObjectId) {
    AddLog('OnAnyChatQueueStatusChanged(' + dwObjectType + ',' + dwObjectId + ')', LOG_TYPE_EVENT);
    if (userType == 2) {
        refreshAgentServiceInfo();
    }

        refreshUserWaitingInfo(dwObjectId);
        refreshQueueInfoDisplay(dwObjectId);
}
作者: liweiqiang888    时间: 2015-7-23 18:13
bairui.tony 发表于 2015-7-23 18:08
可以将OnAnyChatQueueStatusChanged事件的代码替换如下的代码再看看结果。

// 队列状态变化

我这边主要的目的:
坐席页面的排队人数动态变化,我只关心当前是否有人排队,有多少人排队;至于客户端的人排队时间与当前队列之前有多少人,我并不关心,这个是我的客户端需要关注的!
作者: admin    时间: 2015-7-23 18:37
稍后会更新SDK,更新后会在论坛通知您,敬请关注回帖。
作者: bairui.tony    时间: 2015-7-23 18:41
refreshAgentServiceInfo函数作用就是实现刷新坐席端的显示信息的(包括:有多少人在排队,已服务了多少人)
在“OnAnyChatQueueStatusChanged”事件处理代码中,需要增加用户身份的判断条件:
if (userType == 2) {
        refreshAgentServiceInfo();
}

至于其他您不需要的代码可以屏掉(//)。
   //refreshUserWaitingInfo(dwObjectId);
   //refreshQueueInfoDisplay(dwObjectId);
作者: admin    时间: 2015-7-23 20:35
您好,AnyChat for Web SDK包已经更新,请重新下载,更新了AnyChatQueue的源代码,您再确认一下问题是否已经修正。
作者: liweiqiang888    时间: 2015-7-24 11:39
当有第一个人在排队时,坐席端看不到有人在排队!问题依旧存在!

444.jpg (465.2 KB, 下载次数: 1892)

444.jpg

作者: 佰锐科技-邵光清    时间: 2015-7-24 11:46
liweiqiang888 发表于 2015-7-24 11:39
当有第一个人在排队时,坐席端看不到有人在排队!问题依旧存在!

您好,请确认一下web SDK版本是不是最新的,AnyChat插件是不是最新的?
作者: admin    时间: 2015-7-24 11:49
您好,我们验证了,新版本不存在上述问题,请确认:
1、您的客户端插件是否已经更新:需要重新安装SDK包里面bin\AnyChatWebSetup.exe程序;
2、您的服务器程序是否已经更新,请确保核心服务器、业务服务器都是最新版本,您可以上传核心服务器、业务服务器的日志信息,我们帮您分析一下,谢谢。
作者: liweiqiang888    时间: 2015-7-24 11:49
我刚才下载的,您确认下,是否不是最新的?

5555.jpg (663.16 KB, 下载次数: 1986)

5555.jpg

作者: 佰锐科技-邵光清    时间: 2015-7-24 11:56
liweiqiang888 发表于 2015-7-24 11:49
我刚才下载的,您确认下,是否不是最新的?

该版本是最新版本。
2、您的服务器程序是否已经更新,请确保核心服务器、业务服务器都是最新版本,您可以上传核心服务器、业务服务器的日志信息,我们帮您分析一下,谢谢。

作者: liweiqiang888    时间: 2015-7-24 13:34
业务服务器日志:
07-24 13:29:18:464        OnUserLoginActionCallBack: userid:-5 username: 123
07-24 13:29:18:563        OnUserLoginActionCallBack: userid:-6 username: 123
07-24 13:29:56:290        OnUserLogoutActionExCallBack: userid:-6 errorcode:0
07-24 13:29:58:154        OnUserLoginActionCallBack: userid:-7 username: 123
07-24 13:31:00:535        OnUserLogoutActionExCallBack: userid:-7 errorcode:0
07-24 13:31:02:259        OnUserLoginActionCallBack: userid:-8 username: 123

核心服务器日志:
[2015-07-24 13:25:08(209)]        ---------------------Init Service--------------------------
[2015-07-24 13:25:08(241)]        Current File Version[5, 3, 0, 0],Build time:2015-07-23 20:08:54
[2015-07-24 13:25:08(249)]        Load brservernetlayer.dll success!(V5.3, Build time:Jul 23 2015 20:08:21)
[2015-07-24 13:25:08(249)]        Start TCP Server Successed(port=8906)!
[2015-07-24 13:25:08(253)]        Start UDP Server Successed(port=8907)!
[2015-07-24 13:25:08(253)]        AnyChat IPC Filter Plus Init, Build Time:Jul 23 2015 20:08:25
[2015-07-24 13:25:08(254)]        Load SDK Filter Plus:IPCFilterPlus.dll Success, ver:SDK Filter Plus (IPC), for Windows V5.3
[2015-07-24 13:25:08(257)]        Start Server At Demo Mode!
[2015-07-24 13:25:08(270)]        Successful communicate with the record server!(127.0.0.1:54311, id:-1)
[2015-07-24 13:29:13(029)]        Successful communicate with the business server!

如图:这个现实貌似有一定的改善,但是如图我退出队列了,当前营业厅已经没人了,但是坐席端,还是显示一个人排队!


6666.jpg (544.18 KB, 下载次数: 1958)

6666.jpg

作者: liweiqiang888    时间: 2015-7-24 13:35
如此奇怪!

7777.jpg (68.38 KB, 下载次数: 1873)

7777.jpg

作者: admin    时间: 2015-7-24 13:38
我们现在让同事验证一下。
另外上述问题是偶然出现,还是可以必然重现?

作者: liweiqiang888    时间: 2015-7-24 14:20
admin 发表于 2015-7-24 13:38
我们现在让同事验证一下。
另外上述问题是偶然出现,还是可以必然重现?

快速的开始排队,取消排队,就会出现。
另外,想咨询下:ANYCHAT_AREA_EVENT_STATUSCHANGE  和ANYCHAT_QUEUE_EVENT_STATUSCHANGE的区别,我使用ANYCHAT_AREA_EVENT_STATUSCHANGE  来监听当前营业厅的人数时,能够正确的实时获取排队人数。
作者: admin    时间: 2015-7-24 15:14
您好:
当营业厅对象的数据发生变化时,会触发事件:ANYCHAT_AREA_EVENT_STATUSCHANGE
当队列状态变化时,会触发事件:ANYCHAT_QUEUE_EVENT_STATUSCHANGE

所以如果您需要监听当前营业厅的人数时,就需要关注事件:ANYCHAT_AREA_EVENT_STATUSCHANGE;
如果您需要监听某个队列的人数时,就需要关注事件:ANYCHAT_QUEUE_EVENT_STATUSCHANGE
作者: liweiqiang888    时间: 2015-7-24 15:20
admin 发表于 2015-7-24 15:14
您好:
当营业厅对象的数据发生变化时,会触发事件:ANYCHAT_AREA_EVENT_STATUSCHANGE
当队列状态变化时 ...

好的,非常感谢,我这边问题已经解决
作者: admin    时间: 2015-7-24 16:18
您好,SDK包已经更新,请重新下载,版本号依旧是r4815。

您前面反馈的两个问题均已处理:
1、客户端排队时,显示0人的问题,是在刷新数据时,没有判断队列是否为当时队列,现在在脚本中加入对应的条件判断即可:
2、坐席显示营业厅人数没有刷新在问题,在OnAnyChatAreaStatusChange里面添加刷新事件即可。

  1. // 队列状态变化
  2. function OnAnyChatQueueStatusChanged(dwObjectType, dwObjectId) {
  3.         if(currentSelectedQueueId == dwObjectId)
  4.                 refreshUserWaitingInfo(dwObjectId);
  5. }

  6. //营业厅状态变化
  7. function OnAnyChatAreaStatusChange(dwObjectType, dwObjectId, dwErrorCode) {
  8.         if (mUserType == 2) {
  9.         refreshAgentServiceInfo();
  10.     }
  11. }
复制代码

作者: liweiqiang888    时间: 2015-7-25 10:53
admin 发表于 2015-7-24 16:18
您好,SDK包已经更新,请重新下载,版本号依旧是r4815。

您前面反馈的两个问题均已处理:

你好,我这边还有个问题!
这边后期需要出排队信息的报表,因此排队信息需要持久化到数据库,所以想咨询是否在业务服务器能有接口同步排队信息,使之能够被上层业务系统持久化至数据库!
作者: admin    时间: 2015-7-25 11:53
您好,业务服务器有API接口可以实时获取排队信息,请问您的排队信息报表需要哪些内容呢?
作者: liweiqiang888    时间: 2015-7-25 14:06
admin 发表于 2015-7-25 11:53
您好,业务服务器有API接口可以实时获取排队信息,请问您的排队信息报表需要哪些内容呢?

业务场景:
客服部门需要了解排队人数随时间的分布情况,以便确认某些时间段增加客服或者减少客服,达到资源的最优分配。


作者: admin    时间: 2015-7-25 16:52
好的,我会向技术团队反馈您的需求,后续将提供完整的解决方案给您,敬请关注技术论坛,谢谢!
作者: admin    时间: 2015-7-27 20:51
您好,请参考:有关AnyChat业务排队数据持久化的问题;
作者: liweiqiang888    时间: 2015-7-31 10:53
@admin 你好,请问已服务人数是怎么计数的,我这边获取已服务人数:ANYCHAT_AGENT_INFO_SERVICETOTALNUM    但是计数总是出错,总是两个两个的增加!不知道什么原因?
作者: 佰锐科技-邵光清    时间: 2015-7-31 11:09
liweiqiang888 发表于 2015-7-31 10:53
@admin 你好,请问已服务人数是怎么计数的,我这边获取已服务人数:ANYCHAT_AGENT_INFO_SERVICETOTALNUM    ...

您好,是不是最新的版本呢?有使用其他设备测试吗?调试一下看看返回的值对不对。
作者: admin    时间: 2015-7-31 11:47
您好,已经向研发团队反馈该问题!
作者: liweiqiang888    时间: 2015-7-31 11:49
function OnAnyChatLinkClose(reason: 1,errorcode: 209    请问,断开原因的数据字典在哪找到?
作者: 佰锐科技-邵光清    时间: 2015-7-31 11:58
liweiqiang888 发表于 2015-7-31 11:49
function OnAnyChatLinkClose(reason: 1,errorcode: 209    请问,断开原因的数据字典在哪找到?

您好,errorcode:209表示该用户已经在其他计算机上登录了,错误代码文件在Windows SDK包\sdk\client\C++\include目录下。


作者: liweiqiang888    时间: 2015-7-31 14:27
佰锐科技-邵光清 发表于 2015-7-31 11:09
您好,是不是最新的版本呢?有使用其他设备测试吗?调试一下看看返回的值对不对。

我这边尝试用你们的原生的demo测试,也是偶数往上加的。。。
作者: 佰锐科技-邵光清    时间: 2015-7-31 14:29
liweiqiang888 发表于 2015-7-31 14:27
我这边尝试用你们的原生的demo测试,也是偶数往上加的。。。

请将客户端的日志发上来分析分析。
作者: 佰锐科技-李永星    时间: 2015-7-31 14:30
本帖最后由 佰锐科技-李永星 于 2015-7-31 14:33 编辑

您好!
请下描述下操作过程,再次确认所测试的版本号是多少,最新下载地址下载最新SDK
作者: liweiqiang888    时间: 2015-7-31 14:37
佰锐科技-李永星 发表于 2015-7-31 14:30
您好!
请下描述下操作过程,再次确认所测试的版本号是多少,最新下载地址下载最新SDK

AnyChatCoreSDK_Web_V2.3\AnyChatCoreSDK_Web_r4815\src\AnyChatQueue  这个是我的版本
作者: liweiqiang888    时间: 2015-7-31 14:38
佰锐科技-邵光清 发表于 2015-7-31 14:29
请将客户端的日志发上来分析分析。

BRAC_InitSDK(0)=0 下午2:21:49
AnyChat Plugin Version:1.0.3.0 下午2:21:49
AnyChat SDK Version:5.3 下午2:21:49
Build Time:Jul 15 2015 10:58:04 下午2:21:49
OnAnyChatConnect(errorcode=0) 下午2:21:50
OnAnyChatLoginSystem(userid=123, errorcode=0) 下午2:21:50
Initialize Client Object Information 下午2:21:50
OnAnyChatObjectUpdate(4,10001) 下午2:21:50
OnAnyChatObjectUpdate(4,10002) 下午2:21:50
OnAnyChatObjectSyncDataFinish(4,10002) 下午2:21:50
BRAC_ObjectControl(4,10001,401,0,0,0,0,'')=0 下午2:21:51
OnAnyChatAgentStatusChanged(6,123,0) 下午2:21:51
OnAnyChatObjectUpdate(6,123) 下午2:21:51
OnAnyChatObjectSyncDataFinish(6,123) 下午2:21:51
OnAnyChatObjectUpdate(5,101) 下午2:21:51
OnAnyChatObjectUpdate(5,102) 下午2:21:51
OnAnyChatObjectUpdate(5,103) 下午2:21:51
OnAnyChatObjectSyncDataFinish(5,103) 下午2:21:51
OnAnyChatAgentStatusChanged(6,123,0) 下午2:21:51
OnAnyChatObjectUpdate(6,123) 下午2:21:51
OnAnyChatObjectUpdate(4,10001) 下午2:21:51
OnAnyChatEnterAreaResult(4,10001,0) 下午2:21:51
OnAnyChatAreaStatusChange(4,10001,0) 下午2:21:51
OnAnyChatAreaStatusChange(4,10001,0) 下午2:22:09
OnAnyChatAreaStatusChange(4,10001,0) 下午2:22:12
OnAnyChatQueueStatusChanged(5,101) 下午2:22:12
BRAC_ObjectControl(6,123,602,0,0,0,0,'')=0 下午2:22:15
OnAnyChatServiceStart(123,20,101) 下午2:22:15
BRAC_VideoCallControl(2,20,100104,0,0,'')=0 下午2:22:15
OnAnyChatAgentStatusChanged(6,123,2) 下午2:22:15
OnAnyChatAreaStatusChange(4,10001,0) 下午2:22:15
OnAnyChatQueueStatusChanged(5,101) 下午2:22:15
BRAC_EnterRoom(1,'',0)=0 下午2:22:18
OnAnyChatEnterRoom(dwRoomId=1,errorcode=0) 下午2:22:18
BRAC_UserCameraControl(123,1)=0 下午2:22:18
BRAC_UserSpeakControl(123,1)=0 下午2:22:18
BRAC_UserCameraControl(20,1)=0 下午2:22:18
BRAC_UserSpeakControl(20,1)=0 下午2:22:18
function OnAnyChatUserAtRoom(dwUserId=20) 下午2:22:18
BRAC_UserCameraControl(20,1)=0 下午2:22:18
BRAC_UserSpeakControl(20,1)=0 下午2:22:18
BRAC_UserCameraControl(20,0)=0 下午2:22:21
BRAC_UserSpeakControl(20,0)=0 下午2:22:21
function OnAnyChatUserAtRoom(dwUserId=20) 下午2:22:22
OnAnyChatAgentStatusChanged(6,123,1) 下午2:22:22
OnAnyChatAgentStatusChanged(6,123,1) 下午2:22:22
OnAnyChatAreaStatusChange(4,10001,0) 下午2:25:22
OnAnyChatQueueStatusChanged(5,102) 下午2:25:22
BRAC_ObjectControl(6,123,602,0,0,0,0,'')=0 下午2:25:24
OnAnyChatServiceStart(123,20,102) 下午2:25:24
BRAC_VideoCallControl(2,20,100104,0,0,'')=0 下午2:25:24
OnAnyChatAgentStatusChanged(6,123,2) 下午2:25:24
OnAnyChatAreaStatusChange(4,10001,0) 下午2:25:24
OnAnyChatQueueStatusChanged(5,102) 下午2:25:24
BRAC_EnterRoom(1,'',0)=0 下午2:25:27
OnAnyChatEnterRoom(dwRoomId=1,errorcode=0) 下午2:25:27
BRAC_UserCameraControl(123,1)=0 下午2:25:27
BRAC_UserSpeakControl(123,1)=0 下午2:25:27
BRAC_UserCameraControl(20,1)=0 下午2:25:27
BRAC_UserSpeakControl(20,1)=0 下午2:25:27
function OnAnyChatUserAtRoom(dwUserId=20) 下午2:25:27
BRAC_UserCameraControl(20,1)=0 下午2:25:27
BRAC_UserSpeakControl(20,1)=0 下午2:25:27
BRAC_VideoCallControl(4,20,0,0,0,'')=0 下午2:25:33
BRAC_UserCameraControl(20,0)=0 下午2:25:34
BRAC_UserSpeakControl(20,0)=0 下午2:25:34
function OnAnyChatUserAtRoom(dwUserId=20) 下午2:25:34
OnAnyChatAgentStatusChanged(6,123,1) 下午2:25:34
OnAnyChatAgentStatusChanged(6,123,1) 下午2:25:34
BRAC_ObjectControl(6,123,602,0,0,0,0,'')=0 下午2:27:46
OnAnyChatAgentWaitingUser() 下午2:27:46
function OnAnyChatLinkClose(reason: 2,errorcode: 105 下午2:36:49

作者: admin    时间: 2015-7-31 14:39
您好,研发团队已经确认该问题,正在处理中!
作者: liweiqiang888    时间: 2015-7-31 20:13
你好,请问免费版Android和IE端的视频通话限制是几秒?我们现在是接通后,即刻就断了!
作者: admin    时间: 2015-7-31 20:42
10分钟!请将断开之后的两边的日志内容帖上来,我们帮您分析一下,谢谢!
作者: admin    时间: 2015-7-31 22:54
我这边获取已服务人数:ANYCHAT_AGENT_INFO_SERVICETOTALNUM    但是计数总是出错,总是两个两个的增加!不知道什么原因?

您好,该问题已经修正,请重新下载服务器端SDK(版本号r4826),需要更新AnyChat Server SDK的相关库文件,Windows平台为AnyChatServerSDK.dll,linux平台为libanychatserversdk.so。
作者: liweiqiang888    时间: 2015-8-3 10:13
admin 发表于 2015-7-31 22:54
您好,该问题已经修正,请重新下载服务器端SDK(版本号r4826),需要更新AnyChat Server SDK的相关库文件 ...

你好,官网上的最新的版本是4815的?,找不到您说的4826
作者: 佰锐科技-邵光清    时间: 2015-8-3 10:19
liweiqiang888 发表于 2015-8-3 10:13
你好,官网上的最新的版本是4815的?,找不到您说的4826

您好,更新的是服务端的子版本,Windows SDK或者是Linux SDK。
作者: liweiqiang888    时间: 2015-8-3 11:35
佰锐科技-邵光清 发表于 2015-8-3 10:19
您好,更新的是服务端的子版本,Windows SDK或者是Linux SDK。

OK ,已服务人数的功能已经正常,谢谢!
作者: liweiqiang888    时间: 2015-8-3 16:08
admin 发表于 2015-7-31 20:42
10分钟!请将断开之后的两边的日志内容帖上来,我们帮您分析一下,谢谢!

问题:Android和客服端接通后,瞬间就断了,
日志:IE客户端日志:
OnAnyChatConnect(errorcode=0) 16:01:16
OnAnyChatLoginSystem(userid=123, errorcode=0) 16:01:16
OnAnyChatObjectUpdate(4,10001) 16:01:16
OnAnyChatObjectSyncDataFinish(4,10001) 16:01:16
OnAnyChatAgentStatusChanged(6,123,0) 16:01:16
OnAnyChatObjectUpdate(6,123) 16:01:16
OnAnyChatObjectSyncDataFinish(6,123) 16:01:16
OnAnyChatObjectUpdate(5,101) 16:01:16
OnAnyChatObjectSyncDataFinish(5,101) 16:01:16
OnAnyChatAgentStatusChanged(6,123,0) 16:01:16
OnAnyChatObjectUpdate(6,123) 16:01:16
OnAnyChatObjectUpdate(4,10001) 16:01:16
OnAnyChatEnterAreaResult(4,10001,0) 16:01:16
在线人数:0 16:01:16
在线人数:0 16:01:16
OnAnyChatAreaStatusChange(4,10001,0) 16:01:16
在线人数:0 16:01:19
OnAnyChatAreaStatusChange(4,10001,0) 16:01:19
OnAnyChatObjectUpdate(8,113) 16:01:21
OnAnyChatServiceStart(123,113,101) 16:01:21
OnAnyChatAgentStatusChanged(6,123,2) 16:01:21
在线人数:0 16:01:21
OnAnyChatAreaStatusChange(4,10001,0) 16:01:21
OnAnyChatEnterRoom(dwRoomId=1,errorcode=0) 16:01:21
function OnAnyChatUserAtRoom(dwUserId=113) 16:01:21
function OnAnyChatUserAtRoom(dwUserId=113) 16:01:22
OnAnyChatAgentStatusChanged(6,123,1) 16:01:22
在线人数:0 16:01:22
在线人数:0 16:01:23
OnAnyChatAreaStatusChange(4,10001,0) 16:01:23


Android日志:见楼下附件

作者: liweiqiang888    时间: 2015-8-3 16:09
08-03 16:00:04.307    8543-8543/com.uaf.activity D/dalvikvm﹕ GC_FOR_ALLOC freed 225K, 12% free 46740K/52708K, paused 34ms, total 34ms
08-03 16:00:19.217    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(223)        Area(10001) Object Event, unknow event:401, dwParam1:0
08-03 16:00:19.217    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(226)        Message        OnVideoCallEvent(EventType:1, UserId:123, ErrorCode:0, dwFlags:0x0, dwParam:0
08-03 16:00:19.267    8543-8543/com.uaf.activity D/MainActivity (dwParam-房间号)﹕ 0
08-03 16:00:19.267    8543-8543/com.uaf.activity D/MainActivity (REQUEST)﹕ BRAC_VIDEOCALL_EVENT_REPLY
08-03 16:00:19.267    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(275)        Invoke        VideoCallControl(EventType:2, UserId:123, ErrorCode:0, dwFlags:0, dwParam:10, UserStr:李莉)=0
08-03 16:00:19.287    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(292)        Message        OnVideoCallEvent(EventType:3, UserId:123, ErrorCode:0, dwFlags:0x0, dwParam:1
08-03 16:00:19.307    8543-8543/com.uaf.activity D/MainActivity (dwParam-房间号)﹕ 1
08-03 16:00:19.307    8543-8543/com.uaf.activity D/MainActivity (START)﹕ BRAC_VIDEOCALL_EVENT_START
08-03 16:00:19.307    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(317)        Invoke        EnterRoom(roomid=1)
08-03 16:00:19.397    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(404)        Message        OnEnterRoom(roomid=1,errorcode=0,siteindex=1)
08-03 16:00:19.397    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(406)        Audio Playback Device Init(0, 1, 16000, 16), Default Playback Driver
08-03 16:00:19.397    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(407)        Message        OnReceiveOnlineUser(count=2,roomid=1)
08-03 16:00:19.397    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(408)        On Remote UserCameraControl(dwUserId:123, bOpen:1)
08-03 16:00:19.397    8543-9018/com.uaf.activity I/ANYCHAT﹕ 16:00:19(409)        On Remote UserSpeakControl(dwUserId:123, bOpen:1)
08-03 16:00:19.407    8543-8543/com.uaf.activity D/ANYCHAT﹕ InitAudioPlayer, profile: 1
08-03 16:00:19.437    8543-8543/com.uaf.activity D/ANYCHAT﹕ mMinPlayBufSize = 2560
08-03 16:00:19.437    8543-8543/com.uaf.activity D/MainActivity (dwRoomId)﹕ 1
08-03 16:00:19.437    8543-9273/com.uaf.activity D/ANYCHAT﹕ audio play....
08-03 16:00:19.437    8543-8543/com.uaf.activity D/MainActivity (dwErrorCode)﹕ 0
08-03 16:00:19.477    8543-8543/com.uaf.activity I/ActivityManager﹕ Timeline: Activity_launch_request id:com.uaf.activity time:32241006
08-03 16:00:19.507    8543-8543/com.uaf.activity D/VideoActivity (UserID)﹕ 123
08-03 16:00:19.607    8543-8543/com.uaf.activity D/dalvikvm﹕ GC_FOR_ALLOC freed 489K, 11% free 47009K/52708K, paused 16ms, total 16ms
08-03 16:00:19.627    8543-8543/com.uaf.activity I/dalvikvm-heap﹕ Grow heap (frag case) to 57.359MB for 11173904-byte allocation
08-03 16:00:19.667    8543-8543/com.uaf.activity D/dalvikvm﹕ GC_FOR_ALLOC freed 99K, 9% free 57963K/63624K, paused 14ms, total 15ms
08-03 16:00:19.677    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(682)        Invoke        UserCameraControl(userid=123,bOpen=1)
08-03 16:00:19.677    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(682)        Invoke        UserSpeakControl(userid=123,bOpen=1)
08-03 16:00:19.687    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(691)        Invoke        UserCameraControl(userid=-1,bOpen=1)
08-03 16:00:19.687    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:19(692)        Invoke        UserSpeakControl(userid=-1,bOpen=1)
08-03 16:00:19.997    8543-8543/com.uaf.activity I/ANYCHAT﹕ allocate: device orientation=0, camera orientation=270, facing=1
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(12)        APPLOG        Camera Preview size: 1280 x 720
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(13)        APPLOG        Camera Preview size: 960 x 720
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(13)        APPLOG        Camera Preview size: 864 x 480
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(14)        APPLOG        Camera Preview size: 800 x 480
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(14)        APPLOG        Camera Preview size: 768 x 432
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(15)        APPLOG        Camera Preview size: 720 x 480
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(15)        APPLOG        Camera Preview size: 640 x 480
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(16)        APPLOG        Camera Preview size: 576 x 432
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(17)        APPLOG        Camera Preview size: 480 x 320
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(17)        APPLOG        Camera Preview size: 384 x 288
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(18)        APPLOG        Camera Preview size: 352 x 288
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(18)        APPLOG        Camera Preview size: 320 x 240
08-03 16:00:20.007    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(19)        APPLOG        Camera FrameRate: 7500 , 30000
08-03 16:00:20.087    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(95)        Invoke        SetSDKOption(BRAC_SO_CORESDK_EXTVIDEOINPUT=1)
08-03 16:00:20.087    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(96)        Invoke        SetInputVideoFormat(pixfmt:8, 320x240, 30fps, flags:0)
08-03 16:00:20.087    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(96)        video init finish:320x240, NV21, fps:30, codecid:1
08-03 16:00:20.097    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(100)        Invoke        SetSDKOption(BRAC_SO_CORESDK_EXTVIDEOINPUT=1)
08-03 16:00:20.097    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(103)        Invoke        SetInputVideoFormat(pixfmt:8, 320x240, 30fps, flags:0)
08-03 16:00:20.097    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(103)        video init finish:320x240, NV21, fps:30, codecid:1
08-03 16:00:20.097    8543-8543/com.uaf.activity D/ANYCHAT﹕ InitAudioRecorder, profile: 1
08-03 16:00:20.107    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(118)        Invoke        SetInputAudioFormat(1, 16000, 16, flags:0)
08-03 16:00:20.107    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(119)        Audio Init, error:0, device:-1, 1, 16000, 16, capmode:0
08-03 16:00:20.107    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(119)        Audio codec init, handle:2, 11, 1, 16000, 16, 15850
08-03 16:00:20.107    8543-8543/com.uaf.activity D/ANYCHAT﹕ mMinRecordBufSize = 1280
08-03 16:00:20.207    8543-9340/com.uaf.activity D/ANYCHAT﹕ audio record....
08-03 16:00:20.217    8543-9340/com.uaf.activity I/ANYCHAT﹕ 16:00:20(222)        Audio FX Status: VAD:1, NS:1, AGC:1, AEC:1
08-03 16:00:20.297    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(303)        video codec init:codec:1, 15fps, 320x240, bitrate:90kbps, quality:3, preset:3, gop:30, handle:3
08-03 16:00:20.337    8543-8543/com.uaf.activity I/ActivityManager﹕ Timeline: Activity_idle id: android.os.BinderProxy@419f40a0 time:32241867
08-03 16:00:20.417    8543-9275/com.uaf.activity I/ANYCHAT﹕ 16:00:20(428)        userid(123) audio decode, codec:11, 1 channel, 16000Hz
08-03 16:00:20.697    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(702)        Invoke        LeaveRoom(roomid=-1)        Elapse:119 ms
08-03 16:00:20.707    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(714)        Invoke        LogoutServer(userid=115)        Elapse:12 ms
08-03 16:00:20.717    8543-8543/com.uaf.activity D/ANYCHAT﹕ ReleaseAudioRecorder
08-03 16:00:20.717    8543-9340/com.uaf.activity D/ANYCHAT﹕ audio record stop....
08-03 16:00:20.757    8543-8543/com.uaf.activity D/ANYCHAT﹕ ReleaseAudioPlayer
08-03 16:00:20.757    8543-9273/com.uaf.activity D/ANYCHAT﹕ audio play stop....

作者: admin    时间: 2015-8-3 16:17
您好,根据日志来看,是您主动调用了API:Logout导致断线,请检查一下代码,谢谢!
作者: liweiqiang888    时间: 2015-8-3 17:00
admin 发表于 2015-8-3 16:17
您好,根据日志来看,是您主动调用了API:Logout导致断线,请检查一下代码,谢谢!

从日志上看是Android端调了logout吗?
作者: admin    时间: 2015-8-3 17:04
是的
作者: 佰锐科技-李永星    时间: 2015-8-3 17:05
您好!
roomid=-1)        Elapse:119 ms
08-03 16:00:20.707    8543-8543/com.uaf.activity I/ANYCHAT﹕ 16:00:20(714)        Invoke        LogoutServer




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