・はじめに
一度pythonでDiscordのbotを作成したものの、実行しておくサーバーを持っていなかったため、なんとかしてサーバーレスで作ろうとして、GASについていろいろ調べました。
私自身GASは一回も触ったことがなく、またjavascriptも使ったことがなく、大してDiscordBotの仕組みも理解していない状況です。
作ろうと考えているbotはメッセージにコマンドを入力すると、それに対してbotが応答するというシンプルなもの
・まずはGoogle先生に聞いてみた
ところ・・・
「GAS Discord bot」で🔎しても出てこないんですね。誰も作ってないとは言いませんが、slackばっかり出てきてなんでDiscordにないんだろうかと何度も思いました。
・そこで とりあえずslackbotの作り方を調べてみた
すると分かったことがいくつか
まず、GASには当然ですけど関数を実行するトリガーがいくつかあって
デフォルトで設定できるのが、
何分毎とか何時間ごと、スタイルシートが編集された時 とかですね
あとはdoGet関数とdoPost関数みたいなのがあって 要は作ったGASのコードをアプリとして登録したときにそこにPOSTされたら実行するみたいなのもあるんですね
で、slackで似たような機能を持つbotの作り方のサイト見てたら、
まずslackで入力されたメッセージを外部のサイトへPOSTする(今回はGAS)
GASがPOSTされたメッセージをdoPostで受け取って、なんらかの処理をしてメッセージをslackへPOSTする
っていう流れなんですよね
・Discordではどうなのか
DiscordではWebhookと呼ばれるbot 簡単に言うと外部ツールからメッセージを入力するbotです はテキストチャンネルごとに簡単に作れます
しかし なぜなのか Discordには外部にPOSTするシステムがありません。
slackではoutgoing webhookと呼ばれているらしく、公式の機能として存在しています。
つまり
Discordでのメッセージの入力をGASのトリガーにする方法が存在しない?
可能性があります
Discord.jsとかまともに読んでないので何とも言えないですけど
誰か強い人、うまいやり方がないか教えてください
というわけでこのpythonで作ったbotさんはいまだに自分のゲーム用PCの上で動いています。PCの電源が切れてる間はbotの命はありません。
無料で簡単にpythonbotを実行できるサーバーとかあれば教えてください。
herokuはなんかダメになったらしいしIBMなんとかはクレカの登録が必要とかなんとかで使いにくい。
bloggerのソースコード貼り付けフォーマット作らないと
0 件のコメント:
コメントを投稿