如何在Webrtc視頻調用中使用socket.io實現?如何在Webrtc中執行socket.io實現視頻調用,以及我在server.js中需要更改哪些內容?
-3
A
回答
0
一點點超載,但它的工作原理:SocialVidRTC
0
我從你的問題,你已經有了一個的WebRTC項目和server.js,可能的WebSockets一些信號機制理解。
要用socket.io或SIP/XHR/AJAX等其他信號代替它,你需要用新的基於socket.io的代碼替換server.js以獲取請求和響應。
遵循以下步驟:
創建一個HTTPS服務器(因爲的WebRTC頁捕捉網絡攝像頭,只能從安全來源輸入)爲socket.io。將服務器分配給變量說應用程序。
var fs = require('fs'); var https = require('https'); var options = { key: fs.readFileSync('ssl_certs/server.key'), cert: fs.readFileSync('ssl_certs/server.crt'), ca: fs.readFileSync('ssl_certs/ca.crt'), requestCert: true, rejectUnauthorized: false }; var app = https.createServer(options, function(request, response){ request.addListener('end', function() { file.serve(request, response); }).resume(); }); app.listen(8081);
這裏server.key,server.crt這和ca.crt是假的SSL證書和8081是我選擇的HTTPS端口。 您也可以重複使用相同的https服務器來託管網頁。
聽此相同的端口socket.io使用應用前面定義
var io = require('socket.io').listen(app, { log: false, origins: '*:*' }); io.set('transports', [ 'websocket' ]);
立即執行的簽名nalling具體功能和電話等,
io.sockets.on('connection', function (socket) { ... socket.on('webrtc-joinchannel',function(data){ var resp=joinChannel(data); socket.emit('resp-webrtc-joinchannel', resp); }); ... });
我只選擇WebSocket的,但你可以設置其他類型的傳輸太如
socket.set('transports', [
'websocket'
, 'flashsocket'
, 'htmlfile'
, 'xhr-polling'
, 'jsonp-polling'
]);
注:我使用socket.io V0.9。
如果你想要一個示例實現,你可以查看任何示例項目,如here
相關問題
- 1. 如何以及何時在OpenGL中實現視口更改? (glViewport)
- 2. 我在哪裏以及如何在我的XAML中實現ScrollViewer?
- 3. 我需要在我的文檔中涵蓋哪些內容?
- 4. 使用FirebaseListAdapter需要在Gradle中進行哪些更改?
- 5. 如何在c#中實現log4net以及需要什麼log4net?
- 6. 如何在boost中實現boost :: property_map以及如何更改它
- 7. 更新http到https時需要更改Paypal的哪些內容?
- 8. 如何跟蹤調用哪些方法以及更改哪些值?
- 9. 如何訂購表格,更改的內容以及將要更改的內容?
- 10. 在.htaccess文件中需要進行哪些更改?
- 11. 如何更改在視圖中調用的JavaScript中呈現的內容?
- 12. 在Android中使用GoogleHeaders時需要包含哪些內容?
- 13. 如何在codelab中執行「node server.js」?
- 14. 在哪裏執行onClickListener以及如何?
- 15. 在node.js中使用socket.io通過webrtc廣播現場音頻
- 16. 在Java中無法運行的NBody代碼 - 我需要修復哪些內容?
- 17. 如何修改WebRTC MediaStream視頻軌道的內容?
- 18. 需要在線程中升級SQLite,如何以及在哪裏?
- 19. 需要在SharePoint 2010中更改哪些MasterPage/CSS以進行自定義設計?
- 20. 無法在Eclipse中執行此程序。如果能夠執行它,需要完成哪些更改?
- 21. 要在Linux中執行的文件的順序以及如何更改它
- 22. 在asp.net 5中,我需要哪些包?
- 23. 在BillingService模塊中,需要修改哪些內容才能提高安全性?
- 24. 如何在android中實現視頻庫
- 25. 如何在iOS中實現視頻DRM
- 26. 我可以在RPython中使用哪些前端實現語言?
- 27. WebRTC - 在通信過程中更改視頻流
- 28. 如何在鍵盤出現時提升整個視圖,需要進行哪些佈局更改?
- 29. 在java中需要內部實現HashTable
- 30. 我需要在asp classic中針對sql注入進行參數化,在開始進行更改之前,我應該花些時間瞭解哪些內容?