Discord Embeddedをとりあえず動かしてみた。
動作環境
- Node v20.11.1
- Windows 11
- Git
とりあえず公式のHello,worldデモを動かすまで
- 諸々環境作成に必要なものをインストール
Node.jsインストール
embedded app SDKインストール
npm install @discord/embedded-app-sdk
cloudflaredインストール
winget install --id Cloudflare.cloudflared
- Discord側の設定
New Applicationから新規アプリを作成する。
OAuth2からCLIENT IDを控える
CLIENT ID と CLIENT SECRET の両方が必要なので注意
ACTIVITIESよりGetting Startをクリックする。
ここからアクティビティの画面の向きや対象プラットフォームを指定できる。
- サンプルコードの実行
サンプルコードをGitからクローンする。
git clone https://github.com/discord/getting-started-activity.git
getting-started-activity/example.env
このファイルを.env
にリネームする。
CLIENT IDなどを入力する。
VITE_DISCORD_CLIENT_ID=CLIENT IDをここに入力
DISCORD_CLIENT_SECRET=CLIENT SECRETをここに入力
getting-started-activity/client/
フォルダからnpm install
→npm run dev
を実行。
Discordで表示するにはもう一つ作業が必要となる。 別途PowerShellにて
cloudflared tunnel --url http://localhost:5173
URLは先程のnpm run dev
で実行されたときに表示されたURLを指定する。
四角で囲まれたところにURLが記載されているのでこれを控える。
DiscordのデベロッパーポータルサイトのURL MappingsにURLを登録する。
最終確認
- クローンしたサンプルコードのClientから実行している。
- cloudflaredを実行し生成されたURLをポータルサイトに登録している。
以上の二点を満たせてる状態になっていれば実行できるはずです。
Discordの通話に参加しアクティビティを選択する画面を開くと自分のアクティビティが存在するはずです。
それを選択すると以下のようにサンプルが実行され表示されます。
ついにアクティビティを自分で作れるようになったのでBot制作以外にもやれることが増えて最高です。
Webつよつよ人間は本領発揮できそうなのでこれからが楽しみですね。