chatlink.html 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8" />
  5. <meta http-equiv="X-UA-Compatible " content="IE=edge" />
  6. <meta name="viewport"
  7. content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  8. <title>在线咨询</title>
  9. <style>
  10. html,
  11. body {
  12. width: 100%;
  13. height: 100%;
  14. margin: 0;
  15. padding: 0
  16. }
  17. </style>
  18. </head>
  19. <body>
  20. <script type="text/javascript">
  21. function parse(query) {
  22. var qs = {};
  23. var i = query.indexOf('?');
  24. if (i < 0 && query.indexOf('=') < 0) {
  25. return qs;
  26. } else if (i >= 0) {
  27. query = query.substring(i + 1);
  28. }
  29. var parts = query.split('&');
  30. for (var n = 0; n < parts.length; n++) {
  31. var part = parts[n];
  32. var key = part.split('=')[0];
  33. var val = part.split('=')[1];
  34. key = key.toLowerCase();
  35. if (typeof qs[key] === 'undefined') {
  36. qs[key] = decodeURIComponent(val);
  37. } else if (typeof qs[key] === 'string') {
  38. var arr = [qs[key], decodeURIComponent(val)];
  39. qs[key] = arr;
  40. } else {
  41. qs[key].push(decodeURIComponent(val));
  42. }
  43. }
  44. return qs;
  45. }
  46. function init() {
  47. (function (m, ei, q, i, a, j, s) {
  48. m[i] =
  49. m[i] ||
  50. function () {
  51. (m[i].a = m[i].a || []).push(arguments);
  52. };
  53. (j = ei.createElement(q)), (s = ei.getElementsByTagName(q)[0]);
  54. j.async = true;
  55. j.charset = 'UTF-8';
  56. j.src = 'https://static.meiqia.com/widget/loader.js';
  57. s.parentNode.insertBefore(j, s);
  58. })(window, document, 'script', '_MEIQIA');
  59. var data = parse(window.location.search);
  60. var entId = data.entid || data.eid;
  61. if (Object.prototype.toString.call(entId) === '[object Array]') {
  62. entId = +entId[0];
  63. } else {
  64. entId = +entId;
  65. }
  66. _MEIQIA('entId', 'f758191144218537fefab6dc9d0e3449' || entId);
  67. _MEIQIA('standalone', function (config) {
  68. if (config.color) {
  69. document.body.style['background-color'] = '#' + config.color;
  70. }
  71. if (config.url) {
  72. document.body.style['background-image'] = 'url(' + config.url + ')';
  73. document.body.style['background-repeat'] = 'no-repeat';
  74. document.body.style['background-size'] = '100% 100%';
  75. }
  76. });
  77. _MEIQIA('withoutBtn');
  78. if (data.metadata) {
  79. try {
  80. var metadata = JSON.parse(data.metadata);
  81. _MEIQIA('metadata', metadata);
  82. } catch (e) { }
  83. }
  84. if (data.encryptedmetadata) {
  85. _MEIQIA('encryptedmetadata', data.encryptedmetadata);
  86. }
  87. if (data.requestperms) {
  88. localStorage.setItem('requestperms', data.requestperms);
  89. }
  90. if (data.language) {
  91. if (data.languagelocal !== 'true') {
  92. _MEIQIA('language', data.language);
  93. }
  94. }
  95. if (data.languagelocal === 'true') {
  96. _MEIQIA('languageLocal', true);
  97. }
  98. if (data.subsource) {
  99. _MEIQIA('subSource', data.subsource);
  100. }
  101. if (data.fallback) {
  102. _MEIQIA('fallback', +data.fallback);
  103. }
  104. if (data.socketprotocol) {
  105. _MEIQIA('socketProtocol', data.socketprotocol);
  106. }
  107. _MEIQIA('handleParams', data);
  108. if (data.clientid) {
  109. _MEIQIA('clientId', data.clientid);
  110. }
  111. if (data.agentid || data.groupid) {
  112. _MEIQIA('assign', { agentToken: data.agentid || null, groupToken: data.groupid || null });
  113. }
  114. _MEIQIA('showPanel', {
  115. greeting: data.greeting || '',
  116. agentToken: data.agentid || null,
  117. groupToken: data.groupid || null
  118. });
  119. }
  120. init();
  121. </script>
  122. </body >
  123. </html >