main.js 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. // login
  2. var setting = {
  3. username: "huashe1",
  4. password: "huashe123",
  5. ip: "10.55.134.3",
  6. host: "http",
  7. port: "6699",
  8. };
  9. setting.URL = setting.host + "://" + setting.ip + ":" + setting.port;
  10. localStorage.setItem("url", setting.URL);
  11. window.onload = () => {
  12. window.addEventListener(
  13. "message",
  14. async (e) => {
  15. // 指定域名 防止xss 攻击
  16. // if (e.origin != "") return;
  17. if (e.data === "onload") {
  18. // 登陆 && 保活
  19. var package = new Package(setting.URL, {
  20. username: setting.username,
  21. password: setting.password,
  22. });
  23. await package.login();
  24. }
  25. // 打开单兵视频
  26. if (e.data.key === "danbing") {
  27. const meeting = new Meeting();
  28. await meeting.getLocalUserInfo();
  29. const res = await meeting.queryUser(e.data.value);
  30. meeting.localUserInfo.name = "danbing_Meeting";
  31. await meeting.creatMeeting();
  32. await meeting.startInvite({
  33. userName: res.userName,
  34. userId: res.userCode,
  35. region: res.paasId,
  36. type: "single",
  37. // speak:'true',
  38. number: res.userPhone,
  39. deviceId: e.data.deviceCode,
  40. channelId: e.data.channelId,
  41. });
  42. await meeting.openClient();
  43. await meeting.playVideo(meeting.InvitedMembers);
  44. }
  45. // 视频会议
  46. if (e.data === "creatMeeting") {
  47. const el = document.querySelector("#createMeAction");
  48. const closeEl = document.querySelector("#closeMeAction");
  49. const userEl = document.querySelector(".user-list");
  50. const meeting = new Meeting();
  51. closeEl.addEventListener("click", () => {
  52. window.parent.postMessage("closeIframe", "*");
  53. });
  54. // 创建会议并打开窗口
  55. el.addEventListener("click", async () => {
  56. await meeting.getLocalUserInfo();
  57. const res = await meeting.queryUser(e.data.value);
  58. meeting.localUserInfo.name = "video_Meeting";
  59. await meeting.creatMeeting();
  60. await meeting.startInvite();
  61. await meeting.openClient();
  62. const videoEl = document.querySelector(".video-container");
  63. videoEl && (videoEl.style.visibility = "visible");
  64. });
  65. // 添加人员, 并播放视频
  66. userEl.addEventListener("click", async (e) => {
  67. console.log(e, e.target, e.target.className, e.target.dataset, "+++");
  68. if (e.target.className === "videoAction" && e.target.dataset.code) {
  69. const res = await meeting.queryUser(e.target.dataset.code);
  70. await meeting.startInvite({
  71. userName: res.userName,
  72. userId: res.userCode,
  73. region: res.paasId,
  74. type: "single",
  75. // speak:'true',
  76. number: res.userPhone,
  77. deviceId: e.data.deviceCode,
  78. channelId: e.data.channelId,
  79. });
  80. await meeting.playVideo(meeting.InvitedMembers);
  81. }
  82. });
  83. }
  84. if (e.data === "openClient") {
  85. await meeting.openClient();
  86. }
  87. },
  88. false
  89. );
  90. };