设为首页收藏本站

AnyChat技术支持论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 21455|回复: 40
打印 上一主题 下一主题

实现打开网页直接是视频接通状态

[复制链接]

10

主题

66

帖子

198

积分

注册会员

Rank: 2

积分
198
跳转到指定楼层
#
发表于 2015-10-14 10:51:27 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
请问使用anychatweb 可以实现打开网页直接是视频接通状态吗?目前我在页面加载完成调用的函数中,调用了var errorcode = BRAC_InitSDK(NEED_ANYCHAT_APILEVEL);         // 初始化插件  errorcode = BRAC_Connect(mDefaultServerAddr,mDefaultServerPort);//连接服务器  errorcode = BRAC_EnterRoom(mDefaultRoomID, "", 0); //进入房间。但是网页打开后未显示视频连接状态。如果想实现打开网页直接是视频联通状态,我应该还调用哪些方法,同样在<body onload= 加载完成调用的函数中调用可以吗?

在线等答复,十分感谢
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

40#
发表于 2015-10-19 10:20:58 | 只看该作者
本帖最后由 佰锐科技-李友勤 于 2015-10-19 10:41 编辑
liangchao 发表于 2015-10-19 10:05
谢谢,再请问一个问题。我发现在BRAC_Login("AnyChat","",0);//登陆服务器之后设置弹框alert("log"+error ...

您好,
BRAC_EnterRoom("1", "", 0);,这时enterroom进入房间返回码是-1

这个不影响程序的运行,是正常的现象。
这是由于三步异步操作,执行的速度快于返回值的速度,所以会返回-1.

最好的办法是在上一步的回调中执行下一步操作,这样就不会返回-1了

比如在BRAC_Login的回调中调用BRAC_EnterRoom
js示例代码如下:
  1. // 客户端登录系统,dwUserId表示自己的用户ID号,errorcode表示登录结果:0 成功,否则为出错代码,参考出错代码定义
  2. function OnAnyChatLoginSystem(dwUserId, errorcode) {
  3.         DisplayLoadingDiv(false);
  4.         AddLog("OnAnyChatLoginSystem(userid=" + dwUserId + ", errorcode=" + errorcode + ")", LOG_TYPE_EVENT);
  5.     if (errorcode == 0) {       
  6.                 ConfigAnyChatParameter();
  7.                 mSelfUserId = dwUserId;       
  8.                 ShowHallDiv(true);
  9.                
  10. //在此处进入房间
  11.                 var errorcode = BRAC_EnterRoom(roomid, "", 0); //进入房间
  12.                 AddLog("BRAC_EnterRoom(" + roomid + ")=" + errorcode, LOG_TYPE_API);
  13.                 if(errorcode == 0)
  14.                 DisplayLoadingDiv(true);
  15.                
  16.     } else {
  17.                 ShowHallDiv(false);
  18.     }
  19. }
复制代码
回复 支持 反对

使用道具 举报

10

主题

66

帖子

198

积分

注册会员

Rank: 2

积分
198
39#
 楼主| 发表于 2015-10-19 10:05:17 | 只看该作者
佰锐科技-邵光清 发表于 2015-10-17 15:38
请问是不是视频分辨率和DIV层大小不匹配呢?这个帖子里面有介绍如何设置滚动条,请参考:2015-08-05 在We ...

谢谢,再请问一个问题。我发现在BRAC_Login("AnyChat","",0);//登陆服务器之后设置弹框alert("log"+errorcode);,再调用BRAC_EnterRoom("1", "", 0);,enterroom返回码是0,视频显示成功。
可是将弹框去掉,调用BRAC_Login("AnyChat","",0),BRAC_EnterRoom("1", "", 0);,这时enterroom进入房间返回码是-1.
这是什么原因呢?如何解决呢?弹框最后肯定要去掉的啊
回复 支持 反对

使用道具 举报

38#
发表于 2015-10-17 15:38:15 | 只看该作者
liangchao 发表于 2015-10-17 15:11
请问下demo里边进入房间之后垂直和水平的滚动条是哪里设置的啊

请问是不是视频分辨率和DIV层大小不匹配呢?这个帖子里面有介绍如何设置滚动条,请参考:2015-08-05 在Web页面实现1:1显示视频
回复 支持 反对

使用道具 举报

37#
发表于 2015-10-17 15:36:22 | 只看该作者
liangchao 发表于 2015-10-17 15:11
请问下demo里边进入房间之后垂直和水平的滚动条是哪里设置的啊

您好,目前的demo里面是没有任何界面对滚动属性进行设置的。
您如果在浏览器缩小后看到的滚动条是浏览器对body自动设置的滚动属性。您可以在body中进行更改。
如:在body中设置overflow:hidden,则不会出现滚动条
回复 支持 反对

使用道具 举报

10

主题

66

帖子

198

积分

注册会员

Rank: 2

积分
198
36#
 楼主| 发表于 2015-10-17 15:11:49 | 只看该作者
admin 发表于 2015-10-16 15:00
建议您对比一下标准示例页面(http://www.anychat.cn/web/item/AnyChatWebDemo/)里面的相关代码,特别是 ...

请问下demo里边进入房间之后垂直和水平的滚动条是哪里设置的啊
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
35#
发表于 2015-10-16 15:00:48 | 只看该作者
可是没有收到WM_GV_CONNECT  WM_GV_LOGINSYSTEM WM_GV_ENTERROOM等消息

建议您对比一下标准示例页面(http://www.anychat.cn/web/item/AnyChatWebDemo/)里面的相关代码,特别是初始化SDK部分的。
回复 支持 反对

使用道具 举报

10

主题

66

帖子

198

积分

注册会员

Rank: 2

积分
198
34#
 楼主| 发表于 2015-10-16 14:55:44 | 只看该作者
佰锐科技-李友勤 发表于 2015-10-15 13:35
您好,这些消息是异步自动执行的,不需要人工干预。

如进入房间成功,则会自动调用OnAnyChatEnterRoom ...

我大概明白是怎样执行的。
可是我自己写的网页设断点发现和demo调的函数一样,但就是只出现视频位置,显示一张anychat图片不出现视频。
我又试了一次将demo网页的登陆层隐藏,然后loginit函数调用初始化  连接 登陆 进入房间。后边该调用的函数同样也调用了。但依然是显示视频位置是图片,没有视频。
两个网页摄像头也都在相应函数调用时打开了
我实在想不明白什么问题
就是网页中设置视频位置的问题吗?
回复 支持 反对

使用道具 举报

33#
发表于 2015-10-15 13:35:03 | 只看该作者
liangchao 发表于 2015-10-15 13:30
可是没有收到WM_GV_CONNECT  WM_GV_LOGINSYSTEM WM_GV_ENTERROOM等消息, 我如何判断进入房间成功事件呢
...

您好,这些消息是异步自动执行的,不需要人工干预。

如进入房间成功,则会自动调用OnAnyChatEnterRoom()回调,请求音视频操作也是在这里面进行的。您只需要在回调函数中写好相应功能。系统如果进入房间成功就会自动进入,如果不成功会返回错误码。
回复 支持 反对

使用道具 举报

10

主题

66

帖子

198

积分

注册会员

Rank: 2

积分
198
32#
 楼主| 发表于 2015-10-15 13:30:48 | 只看该作者
admin 发表于 2015-10-15 11:44
亲,videocontrol应该放到进入房间成功的事件里面执行喔,而不应该放在logicInit里面。

可是没有收到WM_GV_CONNECT  WM_GV_LOGINSYSTEM WM_GV_ENTERROOM等消息, 我如何判断进入房间成功事件呢
谢谢
回复 支持 反对

使用道具 举报

249

主题

2967

帖子

9108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9108
31#
发表于 2015-10-15 11:44:50 | 只看该作者
if(typeof(videocontrol) == "function")
        videocontrol();

亲,videocontrol应该放到进入房间成功的事件里面执行喔,而不应该放在logicInit里面。
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-23 00:55 , Processed in 0.135891 second(s), 22 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

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