设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 13109|回复: 24

坐席(客服)转接功能

[复制链接]

1

主题

13

帖子

49

积分

新手上路

Rank: 1

积分
49
发表于 2017-5-22 14:05:41 | 显示全部楼层 |阅读模式
客户登录手机端anyChat Queue 智能排队系统,排队等待坐席人员服务,坐席人员A接入客户采用:
var errorcode = BRAC_ObjectControl(ANYCHAT_OBJECT_TYPE_AGENT, mSelfUserId, ANYCHAT_AGENT_CTRL_SERVICEREQUEST, 0, 0, 0, 0, "");建立视频连接。现在坐席人员A将当前客户转接给坐席人员B服务。按照AnyChatCallCenter这个demo上讲述的转接功能,需要传入sessionId的,demo上的sessionId是这样来的://呼叫用户双击
function VideoCallRequest(ID) {
    if (mSelfUserId == ID)
        ForSession("不能呼叫自己...");
    else {
        mTargetUserId = ID;
        var cmdMsg={};
        cmdMsg.cmdOption=CMD_SESSION_REQUEST;
        cmdMsg.srcUserId=mSelfUserId;
        cmdMsg.tarUserId=mTargetUserId;
        cmdMsg.sessionId=-1;
        cmdMsg.sessionType=SESSION_TYPE_CALL;
        BRAC_TransBuffer(0, JSON.stringify(cmdMsg));
        //BRAC_VideoCallControl(BRAC_VIDEOCALL_EVENT_REQUEST,mTargetUserId,0,0,0,"");  // 向指定的用户发送会话邀请
    }
}
但是我们坐席接入调用的不是这个方法,那我们该如何获取sessionId呢。

回复

使用道具 举报

1

主题

13

帖子

49

积分

新手上路

Rank: 1

积分
49
 楼主| 发表于 2017-5-22 17:16:56 | 显示全部楼层
排队系统在手机端,坐席服务在pc端 web网页: 坐席服务通过这个方法向手机端发送视频邀请。var errorcode = BRAC_VideoCallControl(BRAC_VIDEOCALL_EVENT_REQUEST, ID, 0, 0, 0, "");
回复 支持 反对

使用道具 举报

发表于 2017-5-23 11:58:31 | 显示全部楼层
您好,由于接口特性,VideoCallControl只能支持一对一视频,如果是实现转接或三方,那就只能用透明通道来模拟了
回复 支持 反对

使用道具 举报

1

主题

13

帖子

49

积分

新手上路

Rank: 1

积分
49
 楼主| 发表于 2017-5-23 13:35:55 | 显示全部楼层
佰锐科技-梁国桦 发表于 2017-5-23 11:58
您好,由于接口特性,VideoCallControl只能支持一对一视频,如果是实现转接或三方,那就只能用透明通道来模 ...

pc端的网页能否通过透明通道向android手机上的anyChat Queue app中的客户发起视频邀请?
function VideoCallRequest(ID) {
  
        mTargetUserId = ID;
        var cmdMsg={};
        cmdMsg.cmdOption=CMD_SESSION_REQUEST;
        cmdMsg.srcUserId=mSelfUserId;
        cmdMsg.tarUserId=mTargetUserId;
        cmdMsg.sessionId=-1;
        cmdMsg.sessionType=SESSION_TYPE_CALL;
        BRAC_TransBuffer(0, JSON.stringify(cmdMsg));
        //BRAC_VideoCallControl(BRAC_VIDEOCALL_EVENT_REQUEST,mTargetUserId,0,0,0,"");  // 向指定的用户发送会话邀请
   
}
手机端无法接收到视频邀请,用BRAC_VideoCallControl(BRAC_VIDEOCALL_EVENT_REQUEST, ID, 0, 0, 0, "");则可以接收到邀请。
回复 支持 反对

使用道具 举报

发表于 2017-5-23 13:48:28 | 显示全部楼层
零度以下 发表于 2017-5-23 13:35
pc端的网页能否通过透明通道向android手机上的anyChat Queue app中的客户发起视频邀请?
function Video ...

那是因为手机端没有做相应的回调处理
回复 支持 反对

使用道具 举报

1

主题

13

帖子

49

积分

新手上路

Rank: 1

积分
49
 楼主| 发表于 2017-5-24 14:34:17 | 显示全部楼层
谢谢,那android端接收pc端web网页调用以下代码
    mTargetUserId = ID;
       var cmdMsg={};
      cmdMsg.cmdOption=CMD_SESSION_REQUEST;
    var curSessionUser={
    "srcUser":{"userId":mSelfUserId},
    "tarUser":{"userId":mTargetUserId}
};
    cmdMsg.curSessionUser=curSessionUser;
    cmdMsg.srcUserId= mSelfUserId;
    cmdMsg.tarUserId= mTargetUserId;
    cmdMsg.sessionId= -1;
    cmdMsg.sessionType=SESSION_TYPE_CALL;
    var errorCode=BRAC_TransBuffer(mTargetUserId , JSON.stringify(cmdMsg));
    AddLog("VideoCallRequest("  + "cellphone Clinet ID" + ID + ")=" + errorCode, LOG_TYPE_API);
后android应该怎么处理呢。以下代码是否可行
        public void OnAnyChatTransBuffer(int dwUserid, byte[] lpBuf, int dwLen) {
                 
            
                 String returnData = new String(lpBuf, "UTF-8");
                 JSONObject json = new JSONObject(returnData);
                 
                 JSONObject json1 = new JSONObject(json.optString("curSessionUser"));
                 
                 JSONObject json2 =new JSONObject(json1.optString("tarUser"));
                 
                 int mTargetUserId = json2.optInt("userId");   
                     anychat.VideoCallControl(AnyChatDefine.BRAC_VIDEOCALL_EVENT_REQUEST, mTargetUserId, 0, 0, 0, "");
        }
还是要调用anychat.TransBuffer(0, lpBuf, lpBuf.length);
回复 支持 反对

使用道具 举报

发表于 2017-5-24 15:03:00 | 显示全部楼层
零度以下 发表于 2017-5-24 14:34
谢谢,那android端接收pc端web网页调用以下代码
    mTargetUserId = ID;
       var cmdMsg={};

Web端调TransBuffer来发送消息,Android自然也要用TransBuffer的回调来接收。。。Android端如何设置该回调,请参考AnyChatFeatures这个Demo的透明通道部分
回复 支持 反对

使用道具 举报

1

主题

13

帖子

49

积分

新手上路

Rank: 1

积分
49
 楼主| 发表于 2017-5-24 15:07:26 | 显示全部楼层
佰锐科技-梁国桦 发表于 2017-5-24 15:03
Web端调TransBuffer来发送消息,Android自然也要用TransBuffer的回调来接收。。。Android端如何设置该回 ...

能否发给我一份AnyChatFeatures的demo呢2328787988@qq.com,非常感谢
回复 支持 反对

使用道具 举报

发表于 2017-5-24 15:10:58 | 显示全部楼层
零度以下 发表于 2017-5-24 15:07
能否发给我一份AnyChatFeatures的demo呢,非常感谢

到官网下载中心下载Android的SDK,解压后,在src目录中就有AnyChatFeatures的项目源码,下载中心地址:http://sdk.anychat.cn/html/download.html
回复 支持 反对

使用道具 举报

0

主题

5

帖子

28

积分

新手上路

Rank: 1

积分
28
发表于 2017-5-24 16:30:28 | 显示全部楼层
是AlphaChannel.java 下OnAnyChatTransBuffer里面么,mMessageList.add(anyChatSDK.GetUserName(dwUserid) + ": " + srtReceMsg);
                mMessageListView.SetFileList(mMessageList);,这里啥也没呀,还是transMessage方法,这里也只是传送数据,还要写新的视频界面么,能不能说详细点呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|AnyChat ( 粤ICP备13022410号-1 )  

GMT+8, 2024-4-19 01:48 , Processed in 0.144444 second(s), 22 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表