新乡民调(来自息县民调) - 主标

cutVideo000.js 4.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195
  1. /**
  2. * 录屏/回拨
  3. * */
  4. ////来电时传输的数据
  5. //var phoneNumber = helper.request.queryString("Number");
  6. //var CallID = helper.request.queryString("CallID");
  7. // //测试数据
  8. // if (CallID == "") {
  9. // var phoneNumber = "13663801989";
  10. // var CallID = "148";
  11. // }
  12. // 初始化数组
  13. let events = [];
  14. let stopFn = null;
  15. startPlayers();
  16. function startPlayers() {
  17. // let stopFn = rrweb.record({
  18. console.log(rrweb.record)
  19. stopFn = rrweb.record({
  20. emit(event) {
  21. //将 event 存入 events 数组中
  22. events.push(event);
  23. },
  24. });
  25. $("#playersing").text("录屏中...");
  26. }
  27. var body_result = null;
  28. // 保存录屏 - ceshi
  29. // save 函数用于将 events 发送至后端存入,并重置 events 数组
  30. function save() {
  31. const body = JSON.stringify({
  32. events
  33. });
  34. body_result = events;
  35. // 清空数组
  36. events = [];
  37. // fetch('http://YOUR_BACKEND_API', {
  38. // method: 'POST',
  39. // headers: {
  40. // 'Content-Type': 'application/json',
  41. // },
  42. // body,
  43. // });
  44. }
  45. // 停止录屏 - 保存
  46. function stopPlayers(CallID) {
  47. // 点击外呼用
  48. //alert(top.hidCallID);
  49. //if(CallID==""){
  50. CallID = top.hidCallID
  51. //}
  52. stopFn(); // 停止录屏
  53. savePlayers(CallID); // 保存录屏
  54. // body_result = events;
  55. // events = [];
  56. //alert('停止录屏');
  57. }
  58. // 保存录屏
  59. function savePlayers(CallID) {
  60. if (events != null && CallID != "") {
  61. var eventsS = JSON.stringify(events);
  62. var eventsStr = escape(eventsS)
  63. // $.post(huayi.config.callcenter_url + 'CutScreen/AddCutScreen', {
  64. // callid: CallID, // callid
  65. // cutdata: eventsStr, // 录屏代码decodeURIComponent(
  66. // token: $.cookie("token")
  67. // }, function(result) {
  68. // result = $.parseJSON(result);
  69. // if (result.state.toLowerCase() == "success") {
  70. // body_result = events;
  71. // events = [];
  72. // $("#playersing").text("");
  73. // //layer.msg("保存成功");
  74. // //alert('保存录屏');
  75. // }else{
  76. // debugger
  77. // }
  78. // })
  79. $.ajax({
  80. type:"post",
  81. url:huayi.config.callcenter_url + 'CutScreen/AddCutScreen',
  82. async:false,
  83. data:{
  84. callid: CallID, // callid
  85. cutdata: eventsStr, // 录屏代码decodeURIComponent(
  86. token: $.cookie("token")
  87. },
  88. success:function(result){
  89. result = $.parseJSON(result);
  90. if (result.state.toLowerCase() == "success") {
  91. body_result = events;
  92. events = [];
  93. $("#playersing").text("");
  94. //layer.msg("保存成功");
  95. //alert('保存录屏');
  96. }
  97. }
  98. });
  99. } else {
  100. $("#playersing").text("录屏中...操作失败");
  101. }
  102. }
  103. // // 每 10 秒调用一次 save 方法,避免请求过多
  104. // setInterval(save, 10 * 1000);
  105. // // 回放录屏
  106. // function rePlayers() {
  107. // const events = body_result;
  108. // if (events != null) {
  109. // const replayer = new rrweb.Replayer(events);
  110. // replayer.play();
  111. // alert('回放成功');
  112. // } else {
  113. // var dd = "asdfasdf";
  114. // }
  115. // }
  116. // // 回放录屏 - 播放器
  117. // function rePlayers() {
  118. // const events = body_result;
  119. // if (events != null) {
  120. // //const replayer = new rrweb.Replayer(events);
  121. // //replayer.play();
  122. // new rrwebPlayer({
  123. // target: document.body, // document.getElementById('.ld-sercon')可以自定义 DOM 元素
  124. // data: {
  125. // events,
  126. // },
  127. // });
  128. // alert('回放成功');
  129. // } else {
  130. // var dd = "asdfasdf";
  131. // }
  132. // }
  133. // 回放录屏 - 播放器
  134. function rePlayers(CallID) {
  135. document.getElementById('replayers').innerHTML = ""; // 清空
  136. $.ajax({
  137. url: huayi.config.callcenter_url + 'CutScreen/GetCutScreenByCallId',
  138. type: 'get',
  139. data: {
  140. callid: CallID,
  141. token: $.cookie("token")
  142. },
  143. dataType: "json",
  144. async: true,
  145. success: function(res) {
  146. if (res.state.toLowerCase() === "success") {
  147. var data = res.data;
  148. if (data != null) {
  149. result = data.VideoHtml;
  150. rePlayers2(result);
  151. }else{
  152. $("#replayers").text("暂无录屏信息");
  153. }
  154. }
  155. },
  156. });
  157. }
  158. // 回放录屏 - 播放器
  159. function rePlayers2(res) {
  160. const events = JSON.parse(unescape(res));
  161. //const events = body_result;
  162. if (events != null) {
  163. //const replayer = new rrweb.Replayer(events);
  164. //replayer.play();
  165. $("#replayers").text("");
  166. new rrwebPlayer({
  167. target: document.getElementById('replayers'), // document.getElementById('.ld-sercon')可以自定义 DOM 元素
  168. data: {
  169. events,
  170. },
  171. });
  172. // alert('回放成功');
  173. } else {
  174. // var dd = "asdfasdf";
  175. $("#replayers").text("暂无录屏信息");
  176. }
  177. }