|
在一些远程服务的业务场景中,前端机具通常拥有双显示屏,其中主显示屏进行业务操作,扩展屏与后台客服(坐席)进行视频通话。
在之前的版本中,AnyChat for Web SDK只支持在主显示屏进行视频显示,而且需要双击才能全屏,在上述应用场景中,需要将远程视频自动显示到扩展屏上,AnyChat r5450版本增加了对扩展屏全屏显示视频的支持,用户需要重新安装Web插件,并更新anychatsdk.js脚本。
新增API接口:- var ANYCHATWEB_VIDEO_SO_EXTENDEDSCREEN = 10; // 扩展屏显示视频
复制代码 示例代码:本地用户进入房间时设置参数,远程视频自动显示在扩展屏上
- // 客户端进入房间,dwRoomId表示所进入房间的ID号,errorcode表示是否进入房间:0成功进入,否则为出错代码
- function OnAnyChatEnterRoom(dwRoomId, errorcode) {
- if (errorcode == 0) {
- ShowRoomDiv(true);
- RoomUserListControl(mSelfUserId, true); // 将自己插入用户列表
- BRAC_UserCameraControl(mSelfUserId, 1); // 打开本地视频
- BRAC_UserSpeakControl(mSelfUserId, 1); // 打开本地语音
- // 设置本地视频显示位置
- BRAC_SetVideoPos(mSelfUserId, GetID("AnyChatLocalVideoDiv"), "ANYCHAT_VIDEO_LOCAL");
- // 设置远程视频显示位置(没有关联到用户,只是占位置)
- BRAC_SetVideoPos(0, GetID("AnyChatRemoteVideoDiv"), "ANYCHAT_VIDEO_REMOTE");
- // 远程用户视频自动全屏显示到扩展屏上
- BRAC_GetDmoObject("ANYCHAT_VIDEO_REMOTE").SetSDKOptionInt(ANYCHATWEB_VIDEO_SO_EXTENDEDSCREEN, 1);
- }
- }
复制代码 示例代码:离开房间时隐藏扩展屏幕上的视频窗口- //退出房间
- GetID("leaveroom").onclick = function () {
-
- // 取消远程用户视频在扩展屏上的显示
- BRAC_GetDmoObject("ANYCHAT_VIDEO_REMOTE").SetSDKOptionInt(ANYCHATWEB_VIDEO_SO_EXTENDEDSCREEN, 0);
-
- var errorcode = BRAC_LeaveRoom(-1);
- AddLog("BRAC_LeaveRoom(" + -1 + ")=" + errorcode, LOG_TYPE_API);
- }
复制代码 注意事项:
1、当视频流显示在扩展屏上时,主显示屏的小视频窗口还会继续存在,业务层可以将其大小设置为1x1,使其“隐藏”;
2、当不存在扩展显示屏时,远程视频不会自动弹出满屏显示;
|
|