server.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. var app = require('express')();
  2. var server = server = require('http').createServer(app);
  3. var webRTC = require('webrtc.io').listen(server);
  4. server.listen(8000);
  5. app.get('/', function(req, res) {
  6. res.sendfile(__dirname + '/index.html');
  7. });
  8. app.get('/style.css', function(req, res) {
  9. res.sendfile(__dirname + '/style.css');
  10. });
  11. app.get('/webrtc.io.js', function(req, res) {
  12. res.sendfile(__dirname + '/webrtc.io.js');
  13. });
  14. webRTC.rtc.on('connect', function(rtc) {
  15. //Client connected
  16. });
  17. webRTC.rtc.on('send answer', function(rtc) {
  18. //answer sent
  19. });
  20. webRTC.rtc.on('disconnect', function(rtc) {
  21. //Client disconnect
  22. });
  23. webRTC.rtc.on('chat_msg', function(data, socket) {
  24. var roomList = webRTC.rtc.rooms[data.room] || [];
  25. for (var i = 0; i < roomList.length; i++) {
  26. var socketId = roomList[i];
  27. if (socketId !== socket.id) {
  28. var soc = webRTC.rtc.getSocket(socketId);
  29. if (soc) {
  30. soc.send(JSON.stringify({
  31. "eventName": "receive_chat_msg",
  32. "data": {
  33. "messages": data.messages,
  34. "color": data.color
  35. }
  36. }), function(error) {
  37. if (error) {
  38. console.log(error);
  39. }
  40. });
  41. }
  42. }
  43. }
  44. });