convert2vmess

test

  1. // ==UserScript==
  2. // @name convert2vmess
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.5
  5. // @author hello world
  6. // @description test
  7. // @require https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js
  8. // @require https://cdn.jsdelivr.net/npm/js-base64@3.6.0/base64.min.js
  9. // @match https://cdn.jsdelivr.net/gh/Alvin9999/PAC@latest/guiNConfig.json
  10. // @match https://gitlab.com/free9999/ipupdate/-/raw/master/v2rayN/guiNConfig.json
  11. // @match https://gitlab.com/free9999/ipupdate/-/raw/master/v2rayN/2/guiNConfig.json
  12. // @match https://cdn.jsdelivr.net/gh/Alvin9999/PAC@latest/2/guiNConfig.json
  13. // ==/UserScript==
  14.  
  15. (function (){
  16. 'use strict';
  17. var origin_data = $.parseJSON(document.getElementsByTagName("pre")[0].innerHTML);
  18. var vmess_data = origin_data.vmess[0];
  19. var export_data = {};
  20.  
  21. export_data.v = String(vmess_data.configVersion);
  22. export_data.ps = vmess_data.remarks;
  23. export_data.add = vmess_data.address;
  24. export_data.port = String(vmess_data.port);
  25. export_data.id = vmess_data.id;
  26. export_data.aid = String(vmess_data.alterId);
  27. export_data.net = vmess_data.network;
  28. export_data.type = vmess_data.headerType;
  29. export_data.host = vmess_data.requestHost;
  30. export_data.path = vmess_data.path;
  31. export_data.tls = vmess_data.streamSecurity;
  32.  
  33. var vmess_base64 = "vmess://" + Base64.encode(JSON.stringify(export_data));
  34. var jqueryScriptBlock = document.createElement('a');
  35. jqueryScriptBlock.href = vmess_base64;
  36. jqueryScriptBlock.innerHTML = "vmess";
  37. $(document.body).append(jqueryScriptBlock)
  38. })();