魔方實時通訊/協作引擎(Web SDK)是一個全能力的實時雲端協作引擎
繼上一個im聊天元件增加了發動語音,語音視訊通話功能
專案結構如下:
直接開啟瀏覽器訪問index.html頁面,效果圖如下:
音視屏通話效果:
複製index.html就可以用了:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<link rel="stylesheet" type="text/css" href="http://cube.getcube.cn/webSourceCode/cubeComponent/css/reset.css" />
<link rel="stylesheet" type="text/css" href="http://cube.getcube.cn/webSourceCode/cubeComponent/css/grid.css" />
<link rel="stylesheet" type="text/css" href="http://cube.getcube.cn/webSourceCode/cubeComponent/css/message.css" />
</head>
<body>
<div id="root">登入中。。。</div>
<!--sendImg 傳送圖片按鈕
sendFile 傳送檔案按鈕
sendAudio傳送語音訊息
sendVoice語音通話
sendVideo視訊通話-->
<cube-message class="app-drawer" sendImg sendFile sendAudio sendVoice sendVideo></cube-message>
</body>
<script type="text/javascript">
//必填登入資訊
var loginInfo = {
'messagePeer': '10255986', //接收方的userId
'userId': '10255984', //登入使用者的userId
'appId': '9c2ed36ae5d34131b3768ea432da6cea005',
'appKey': '5df6d5495fb74b35ad157c94977527ff005',
};
</script>
<!-- 引擎js -->
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/lib/Genie-min.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/lib/cube-core.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/lib/cube-message.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/lib/cube-signaling.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/lib/cube-sipworker.js"></script>
<!-- 自定義元素 -->
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/component/Component.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/component/CubeMessage.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/base/message.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/base/signaling.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/base/conference.js"></script>
<script type="text/javascript" src="http://cube.getcube.cn/webSourceCode/cubeComponent/js/base/base.js"></script>
</html>
複製程式碼
在啟動之前,你只需要引入需要的各個js檔案。
lib/Genie-min.js 為引擎依賴庫
lib/cube-core.js 引擎核心庫
lib/cube-message.js 即時訊息庫
lib/cube-signaling.js 音視訊通話
lib/cube-sipworker.js 會議模組
base/base.js 使用者登入的相關資訊配置(loginInfo裡面的資訊去時信魔方官網註冊獲取)
base/message.js 定義一個 AppMessageListener 來監聽訊息的收取、傳送、檔案上傳、訊息撤回等各種事件
component/CubeMessage.js 自定義元素的js
在html引入我們所需要的js,使用<cube-message class="app-drawer" sendImg sendFile sendAudio sendVoice sendVideo></cube-message>
聊天介面就搭建好了。
你可以根據需求是否需要傳送圖片,檔案等訊息型別
在cube-message標籤上新增 sendImg屬性就可以傳送圖片
在cube-message標籤上新增 sendFile屬性就可以傳送檔案
在cube-message標籤上新增 sendAudio屬性就可以傳送語音訊息
在cube-message標籤上新增 sendVoice屬性就可以語音通話
在cube-message標籤上新增 sendVideo屬性就可以視訊通話
【注意】:新版本的視訊獲取介面要用HTTPS協議,否則會丟擲錯誤,當然現在在本地訪問通過 localhost, 127.0.0.1 或者檔案協議,都可以正常使用
capturing_audio_video.html:28 getUserMedia() no longer works on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS. See https://goo.gl/rStTGz for more details.