|
|
@@ -0,0 +1,44 @@
|
|
|
+const io = require("socket.io-client")
|
|
|
+const fs = require('fs');
|
|
|
+const { spawn } = require('child_process')
|
|
|
+const socket = io('', {
|
|
|
+ auth: {
|
|
|
+ roomID: 'test',
|
|
|
+ name: '666'
|
|
|
+ }
|
|
|
+});
|
|
|
+socket.on('connect', () => {
|
|
|
+ console.log('连接成功');
|
|
|
+})
|
|
|
+socket.on('leaved', (user) => {
|
|
|
+ console.log(`${user.name}-${user.ip}离开${user.roomID}房间,人数${user.Length}`)
|
|
|
+})
|
|
|
+socket.on('joined', (user) => {
|
|
|
+ console.log(`${user.name}-${user.ip}加入${user.roomID}房间,人数${user.Length}`)
|
|
|
+})
|
|
|
+socket.on('msg', data => {
|
|
|
+ console.log('用户信息', data);
|
|
|
+ if (data.type === 'Meadia') {
|
|
|
+ // 处理buffer写入文件
|
|
|
+ fs.writeFile('test.wav', data.Meadia, (er) => {
|
|
|
+ if (er) {
|
|
|
+ return console.error(err);
|
|
|
+ }
|
|
|
+ console.log("数据写入成功!,需要开启线程去播放");
|
|
|
+ const ls = spawn('omxplayer', ['test.wav'])
|
|
|
+
|
|
|
+ ls.on('close', (code) => {
|
|
|
+ if (code === 0) {
|
|
|
+ console.log('播放结束,进程结束');
|
|
|
+ } else {
|
|
|
+ console.log('其它问题');
|
|
|
+ }
|
|
|
+ });
|
|
|
+ })
|
|
|
+
|
|
|
+ }
|
|
|
+})
|
|
|
+socket.on('connect_error', err => {
|
|
|
+ console.log('连接错误', err)
|
|
|
+
|
|
|
+})
|