Advertisement
Guest User

Untitled

a guest
Jan 20th, 2019
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.62 KB | None | 0 0
  1. navigator.mediaDevices.getUserMedia({
  2. audio: true,
  3. video: true
  4. }).then(function(stream){
  5. let userVideo=document.getElementById('userVideo');
  6. userVideo.srcObject=stream;
  7. userVideo.play();
  8. var Peer=require('simple-peer');
  9. var peer=new Peer({
  10. initiator: location.hash==="#init",
  11. trickle: false,
  12. stream: false
  13. });
  14. window.SpeechRecognition = window.webkitSpeechRecognition || window.SpeechRecognition;
  15. const recognition=new window.SpeechRecognition();
  16. recognition.lang="en";
  17. // recognition.interimResults=true;
  18. recognition.onresult = (event) => {
  19. const speechToText = event.results[0][0].transcript;
  20. console.log(speechToText);
  21. }
  22. recognition.onaudiostart=function(event){
  23. console.log('started');
  24. }
  25. recognition.onaudioend=function(event){
  26. console.log('ended');
  27. recognition.stop();
  28. startRecognition(25);
  29. }
  30. function startRecognition(delay){
  31. setTimeout(function(){
  32. try{
  33. recognition.start();
  34. }catch(e){
  35. startRecognition(delay);
  36. }
  37. },delay)
  38. }
  39. recognition.start();
  40. peer.on('signal',function(data){
  41. document.getElementById('yourId').value=JSON.stringify(data);
  42. })
  43. document.getElementById('connect').addEventListener('click',function(){
  44. let otherId=JSON.parse(document.getElementById('otherId').value);
  45. peer.signal(otherId);
  46. })
  47. document.getElementById('testBtn').addEventListener('click',function(){
  48. console.log('calling send');
  49. send();
  50. })
  51. document.getElementById('send').addEventListener('click',function(){
  52. let yourMessage=document.getElementById('message').value;
  53. document.getElementById('messages').textContent+='S: '+yourMessage+"\n"
  54. peer.send(yourMessage);
  55. })
  56. peer.on('data',function(data){
  57. document.getElementById('messages').textContent+='R: '+data+"\n"
  58. })
  59. peer.addStream(stream);
  60. peer.on('stream',function(stream){
  61. console.log('got stream');
  62. let video=document.getElementById('receivedVideo');
  63. video.srcObject=stream;
  64. video.play();
  65.  
  66. })
  67.  
  68. }).catch(function(err){
  69. alert("Error: "+err);
  70. })
  71. function send() {
  72. console.log('sending');
  73. let rand=Math.random();
  74. var number = {
  75. value: rand
  76. }
  77. var xhr = new window.XMLHttpRequest()
  78. xhr.open('POST', '/num', true)
  79. xhr.setRequestHeader('Content-Type', 'application/json;charset=UTF-8')
  80. xhr.send(JSON.stringify(number))
  81. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement