欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

node如何實(shí)現(xiàn)語音聊天

本篇內(nèi)容主要講解“node如何實(shí)現(xiàn)語音聊天”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“node如何實(shí)現(xiàn)語音聊天”吧!

成都創(chuàng)新互聯(lián)公司主要從事網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)涇源,10余年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

node實(shí)現(xiàn)語音聊天的方法:1、使用nodejs模塊express創(chuàng)建一個(gè)web服務(wù)器;2、創(chuàng)建https連接;3、通過“socket.io”實(shí)現(xiàn)客戶端與服務(wù)端實(shí)時(shí)通信即可。

基于nodejs的語音聊天

node如何實(shí)現(xiàn)語音聊天

描述

程序在 iamshaunjp 的群聊功能基礎(chǔ)上利用webRTC技術(shù),添加了語音群聊功能,在其他人鍵盤輸入時(shí),會(huì)出現(xiàn)類似微信的對(duì)方正在輸入字樣。

使用的nodejs模塊

  • express:創(chuàng)建一個(gè)web服務(wù)器

  • https:創(chuàng)建https連接(局域網(wǎng)或者外網(wǎng)webRTC需要https連接,具體見tutoril)

  • socket.io:客戶端與服務(wù)端實(shí)時(shí)通信

js文件

  • chat.js:實(shí)現(xiàn)按鈕事件的注冊(cè)、文本數(shù)據(jù)的發(fā)送等

  • record.js:實(shí)現(xiàn)語音消息的錄取、播放、發(fā)送等

結(jié)構(gòu)圖和流程圖

node如何實(shí)現(xiàn)語音聊天

node如何實(shí)現(xiàn)語音聊天

文本通信

詳情見public/js/chat.js注釋

發(fā)送數(shù)據(jù)

  • 進(jìn)入頁面進(jìn)行與服務(wù)器的socket連接

  • 客戶端輸入文本數(shù)據(jù)

  • 客戶點(diǎn)擊sent按鈕,觸發(fā)click事件,并產(chǎn)生chat事件準(zhǔn)備想服務(wù)器emit

  • soket連接發(fā)送給服務(wù)器chat事件和客戶端產(chǎn)生的數(shù)據(jù)

接收數(shù)據(jù)

  • socket接受到服務(wù)器發(fā)送來的data和服務(wù)器發(fā)送來的chat事件

  • 提取data文本

  • js在index.html添加文本數(shù)據(jù),完成接收數(shù)據(jù)并顯示

語音通信

詳情見public/js/record.js注釋

  • 接受和發(fā)送語音數(shù)據(jù)類似與文本數(shù)據(jù)的通信

  • 利用webRTC獲取到用戶的視頻或者音頻轉(zhuǎn)換為blob格式數(shù)據(jù),并發(fā)送給服務(wù)器數(shù)據(jù)。

  • 接受消息時(shí),數(shù)據(jù)類型是blob格式,對(duì)blob數(shù)據(jù)解析,利用html5的audio標(biāo)簽進(jìn)行播放

服務(wù)器轉(zhuǎn)發(fā)數(shù)據(jù)

客戶端發(fā)送給服務(wù)器數(shù)據(jù),服務(wù)器觸發(fā)chat事件,將客戶端發(fā)送來的數(shù)據(jù)以廣播的形式發(fā)送到每一個(gè)客戶端,完成群聊的功能。

創(chuàng)建https證書

在localhost中使用webRTC不需要使用https,但是在局域網(wǎng)或者外網(wǎng)使用webRTC,必須強(qiáng)制使用webRTC,這里采用自己生成證書供測(cè)試使用,具體生成方法和設(shè)置https方法參考博客:

  • 生成自己簽名的證書(有效期365天)

 openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365
  • 使用https連接的express,例子如下:

  var fs = require('fs'),
   https = require('https'),
   express = require('express'),
   app = express();

   https.createServer({
     key: fs.readFileSync('key.pem'),
     cert: fs.readFileSync('cert.pem')
   }, app).listen(55555);

   app.get('/', function (req, res) {
     res.header('Content-type', 'text/html');
     return res.end('<h2>Hello, Secure World!</h2>');
   });

到此,相信大家對(duì)“node如何實(shí)現(xiàn)語音聊天”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

文章題目:node如何實(shí)現(xiàn)語音聊天
網(wǎng)頁地址:http://aaarwkj.com/article16/jejcdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、外貿(mào)建站、軟件開發(fā)、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
91精品国产综合久久不国产大片| 欧美黄色日本一区二区| 国产饥渴熟女在线三区| 激情五月,开心五月深情五月| 日本久久91跳蛋视频| 欧美欧美欧美欧美在线| 日本黄色一区二区三区四区| 黄色亚洲日本欧美在线观看| 亚洲黄色手机在线网站| 一区二区先锋深夜中文字幕| 最近av中文字幕电影| 一区二区三区毛片观看| 国产一区二区三区日本精品| 久久亚洲综合精品少妇| 日韩国产传媒在线精品| 91啪在线观看91色| 欧美人妻精品一区二区| 饥渴少妇高潮特殊按摩| 性色乱码一区二区三区| 秒播视频午夜福利在线观看| 国产一区二区主播不卡| 久久综合热这里只有精品| 东京热男人的天堂色狠爱| 91美女黑丝免费国产视频| 十八禁在线观看国产一区| 久久亚洲女同第一区综合| 91麻豆粉色视频在线| 中文字幕丝袜精品久久| 人妻中文字幕一区二区三| 男女啪啪国产精品视频| 97视频高清在线观看| 成年人免费在线观看国产| 国内熟妇人妻色在线三级| 国产精品一区二区免费式| 韩国三级福利在线观看| jvid视频在线观看免费| 丰满高潮少妇在线观看| 国产高清学生三级一区二区| 国产真实乱偷精品视频免| 久久国产欧美日韩精品免费| 欧美一区二区三区成人网|