sendMessage

各チャットサイトでメッセージを送信するライブラリです。

此脚本不应直接安装,它是一个供其他脚本使用的外部库。如果您需要使用该库,请在脚本元属性加入:// @require https://update.cn-greasyfork.org/scripts/417889/876786/sendMessage.js

  1. // ==UserScript==
  2. // @name sendMessage
  3. // @namespace http://tampermonkey.net/
  4. // @version 1.0.3
  5. // @license MIT
  6. // @description 各チャットサイトでメッセージを送信するライブラリです。
  7. // @author You
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function(window) {
  12. 'use strict';
  13. // エクスポート
  14. window.sendMessage = function(str, discord_token) {
  15. if (!str) return;
  16. // サイト別処理
  17. switch (location.href.replace(/^.+?\/\/|\/.*$/g, "").replace(/^(www)[0-9]+(\.x-feeder\.info)$/, "$1$2").replace(/^[^\.]*\.(open2ch\.net)$/, "$1")) {
  18. case "www.x-feeder.info":
  19. if (str.length > 1000) return;
  20. var xhr = new XMLHttpRequest(),
  21. fd = new FormData();
  22. xhr.open("POST", location.href + "post_feed.php");
  23. fd.append("name", document.querySelector("#post_form_name").value);
  24. fd.append("comment", str);
  25. fd.append("is_special", 0);
  26. fd.append("category_id", 0);
  27. xhr.send(fd);
  28. break;
  29. case "pictsense.com":
  30. if (str.length > 200) return;
  31. document.querySelector("#chatText").value = str;
  32. document.querySelector("#chatSubmitButton").click();
  33. break;
  34. case "drrrkari.com":
  35. document.querySelector("textarea[name='message']").value = str;
  36. document.querySelector("input[name='post']").click();
  37. break;
  38. case "himachat.jp":
  39. if (str.length > 150) return;
  40. document.querySelector(".frombar").value = str;
  41. document.querySelector(".formbtn").click();
  42. break;
  43. case "www.3751chat.com":
  44. if (str.length > 1000) return;
  45. document.querySelector("#chat").value = str;
  46. document.querySelector("#say").click();
  47. break;
  48. case "discord.com":
  49. if (str.length > 2000 || !discord_token) return;
  50. var xhr = new XMLHttpRequest();
  51. xhr.open("POST", "https://discord.com/api/v8/channels/" + location.href.match(/^https:\/\/discord\.com\/channels\/[0-9]+\/([0-9]+)$/)[1] + "/messages");
  52. xhr.setRequestHeader("authorization", discord_token);
  53. xhr.setRequestHeader("content-type", "application/json");
  54. xhr.send(JSON.stringify({
  55. content: str,
  56. tts: false
  57. }));
  58. break;
  59. case "open2ch.net":
  60. document.querySelector("#MESSAGE").value = str;
  61. document.querySelector("#submit_button").click();
  62. break;
  63. };
  64. };
  65. })(window);