本文へスキップ
JVSL日本仮想学生連盟
Integration / Discord

Discord 連携

サイトのお知らせ・ブログ記事を JVSL 公式 Discord サーバへ自動配信したり、Discord 上から最新情報を取得できる連携機能です。本ページは UI デモで、まだ実際の配信は行われません。

01

接続状態

チェックリスト
  • DISCORD_WEBHOOK_URL未設定
  • DISCORD_PUBLIC_KEY未設定
  • DISCORD_APPLICATION_ID未設定
  • Sanity Webhook(→ /api/discord/notify)未登録
  • Slash Commands 登録未実行

すべての項目を設定すると、サイトと Discord の連携が動き始めます。下の手順で順に進めてください。

02

自動通知 プレビュー

お知らせ・ブログ記事を Studio で公開すると、Discord の指定チャンネルにこのような形で自動配信されます。

お知らせ
JVSLBOT今日 14:32
📢 新しいお知らせ: 4月総会の開催について

JVSL 第 5 回総会を 4 月 21 日に開催します。会員の皆さんはオンラインで参加可能です。詳細は会員ポータルを確認してください。

JVSL · お知らせ · 2026.04.05
ブログ
JVSLBOT昨日 22:08
by ymurakami
📝 新しい記事: 学生 VR 配信の始め方

VR Chat と OBS を使って初めての配信をするまでの手順をまとめました。機材選びからシーン構築までを実例ベースで紹介します。

JVSL · ブログ · 2026.04.04
03

スラッシュコマンド

Discord 上で /jvsl-... と入力すると、JVSL Bot が応答します。

  • /jvsl-notices — 最近のお知らせ
  • /jvsl-articles — 最近のブログ
  • /jvsl-info — JVSL 概要
user
/jvsl-notices
JVSLBOT
📢 最近のお知らせ • 2026.04.05 — 4月総会の開催について https://jvs-league.org/notices/spring-meeting • 2026.03.30 — 新年度受付スタート https://jvs-league.org/notices/new-year-open
user
/jvsl-info
JVSLBOT
JVSL / 日本仮想学生連盟 学生を中心に VR の世界を広げる、全国的な学生ネットワーク。 Web: https://jvs-league.org 入会申請: https://forms.gle/oVwCpQmCRaD7AH1v8
04

セットアップ手順

本物の Discord サーバとつなぐときに必要な手順です。この順番でやれば最短で動かせます。

  1. 01.

    Discord webhook を作成

    対象チャンネル → 編集 → 連携サービス → ウェブフック → 新しいウェブフック → URL をコピー。

  2. 02.

    .dev.vars に Webhook URL を設定

    DISCORD_WEBHOOK_URL="https://discord.com/api/webhooks/..." を JVSL-site/.dev.vars に追記。本番では wrangler secret 経由で。

  3. 03.

    Sanity Webhook を登録

    sanity.io/manage → API → Webhooks → URL に /api/discord/notify を、Filter に _type in ["notice", "article"] && !(_id in path("drafts.**")) を指定。

  4. 04.

    Discord アプリケーション登録(スラッシュ用)

    discord.com/developers → New Application で PUBLIC_KEY と APPLICATION_ID、Bot タブで BOT_TOKEN を取得して .dev.vars に。

  5. 05.

    スラッシュコマンド登録

    node scripts/register-discord-commands.mjs を実行(DISCORD_GUILD_ID を渡せば対象サーバに即時反映)。

  6. 06.

    Interactions Endpoint URL を設定

    Developer Portal の General Information で /api/discord/interactions の公開 URL を貼る。