Appliv Games編集部ブログ

Discordをゲーム公式Twitterと連携させよう【Discordコミュニティ運用術・機能編8】

「Discordコミュニティ運用術」の第8回(機能編8)は、「Discord」にツイートやYouTube動画を自動投稿するBOTが作れる「IFTTT(イフト)」の使い方を紹介していきます。

「IFTTT」でツイート自動投稿BOTを作れるようになろう!

Discordのチャットを使っているとよく見かける、ツイートが自動でどんどん投稿されていくテキストチャンネル。

これは、「IFTTT(イフト)」というサイトで作った「ツイート取得のBOT機能」を使っているのですが、やったことがない人にはさっぱりですよね。

そこで今回は、IFTTTを利用して、Discordのチャットにツイートや動画を自動投稿する方法を紹介します!

※ちなみに、ここでいうBOTは、ツイート自動投稿BOTのことを指します。Discord自体の拡張機能としてもいろいろなBOTを使えますが、それとは導入方法が異なる別物なので混同しないように注意が必要です

■目次

・「IFTTT」でBOTを作れるようになろう!
 └IFTTT(イフト)ってなに?

・IFTTTの導入方法/初期設定
 └IFTTTアカウントの作成
 └DiscordのウェブフックURL取得

・IFTTTを使ってみよう!
 └IFTTTの基本的な使い方
  └1.Createメニューから「This」を選択する
  └2.検索画面から「Twitter」を選択する
  └3.Discordに飛ばしたいTwitterアカウントを設定する
  └4.「That」に「webhooks」を設定する
  └5.IFTTTのActionを設定する
 └Discordで動作を確認してみよう
 └ThisとThatについて

・Twitter連携でよく使うBOT設定
 └特定のユーザーのツイートを表示させる
 └指定したハッシュタグを含むツイートを表示させる
 └Twitterにアップされた動画のみを表示させる
 └Search forで使える検索方法まとめ

・YouTube連携でよく使うBOT設定
 └特定のYouTubeチャンネルの投稿通知を表示させる

IFTTT(イフト)ってなに?

IFTTTというのは、Webサービス同士を連携させてくれる、外部ツールのようなもの。

サイト内でアカウント登録をするだけで利用できて、超簡単な設定をするだけで、いろんなWebサービス同士を連携させることができます。

DiscordとTwitterの連携では、「Discordに作ったチャンネル」と「Twitterアカウントや特定の#ハッシュタグ」を紐付けると、そのツイートが投稿されたときに、Discordのテキストチャンネルに自動でお知らせしてくれるようになります。

【例1】コンパスの公式アカウント(@cps_niconico)を登録
公式がツイートするとDiscordに飛んでくる
【例2】「#コンパス」のハッシュタグを登録
「#コンパス」でツイートするとDiscordに飛んでくる

コンパス公式TwitterをIFTTTで連携。公式がツイートすると、DiscordのチャンネルにツイートのURLが自動投稿されます

Twitterを開かずに、Discordだけでゲームの最新情報を見られるようになるので、Discordを使う人たちに取ってもすごく便利ですね。

Discordでゲームのギルドなどを運用するときは、絶対にやるべきです!

IFTTTの導入方法/初期設定

IFTTTを使うときに最低限必要なものが、「IFTTTアカウント」と「DiscordのウェブフックURL」の2つ。

IFTTT公式サイトで「IFTTTアカウント」を、Discordで「ウェブフックURL」の準備をしましょう。

IFTTTアカウントの作成

まずは、IFTTT公式サイトで使うアカウントを作成します。サイト内はすべて英語で戸惑いそうになりますが、登録に必要なステップはいたってシンプル。

サイトにアクセスしたら、トップの右上にある「Sign up」からアカウント作成画面に移動できます。

アカウント作成には、「Apple IDGoogleアカウントFacebook」が必要になります(PCでアクセスするとフリーのメールアドレスでも登録可能)。

使用するアカウントを選択したら、自動的にログインが完了。アカウントの作成はこれで終わり、簡単ですね。

DiscordのウェブフックURL取得

Discord側では、IFTTTにDiscordを連携するために必要な「webhook(ウェブフック)」のURLを発行します。

まずは、Discordでツイート自動投稿BOTの受け取り先になるチャンネルを作成。既存チャンネルでもいいですが、ツイートがぽんぽん飛んでくることになるので、専用チャンネルを作るのがおすすめです。

ツイート用のカテゴリとチャンネルをそれぞれ作成。チャンネル名はあとで変えても動作に問題はないので、仮のものでもOKです

チャンネルを作ったら、左上のDiscord名の右にあるメニューから「サーバー設定」を選択。「Integrations」にある「webhooks」の項目から、ウェブフックを作成します。

ウェブフックを作成したら、編集画面の下のところに「ウェブフックURL」の項目があります。このURLをIFTTTの設定のときに使うので覚えておきましょう。

URLは編集画面にくれば、いつでも確認できます

IFTTTを使ってみよう!

「IFTTTのアカウント作成」と「DiscordのウェブフックURL取得」ができたら、早速IFTTTを使ってみましょう。

IFTTTの基本的な使い方

基本中の基本である「ゲーム公式Twitterのツイート取得」を例に挙げて、IFTTTを使うときの手順を紹介していきます。

今回はエグゾスヒーローズの公式Twitter(@exosheroes_jp)のツイートをDiscordのチャットに持ってきます。

準備ができたら、下のリンクからIFTTTの公式サイトにジャンプしてください。

1. Createメニューから「If This」を選択する

まずは公式サイトの右上にあるメニューから「Create」を選択します。

If This」と「Then That」という文章が表示されるので、「If This」の部分をクリックします。

2. 検索画面から「Twitter」を選択する

Thisを選ぶと検索画面が表示されるので、「Twitter」と入力。Twitterのアイコンが出てくるので、クリックして選択してください。

IFTTT初めて使うときは、Twitterのログイン画面になるので、個人のTwitterでログインすればOKです。

3. Discordに飛ばしたいTwitterアカウントを設定する

Twitterを選ぶと、10個の項目が表示されるので、その中から「New tweet by a specific user」を選択します。

ユーザー名を入力する画面になるので、ここにDiscordに飛ばしたいTwitterのアカウント名(@以降のID)を入力します。

「@」は含めずに、IDの英数字のみを入力します

Create Triggerをクリックしたら、「This」の設定は完了です。

4. 「Then That」に「webhooks」を設定する

「If This」が終わったら、「If This(Twitterアイコン)」と「Then That」の画面に戻ってくるので、今度は「Then That」を選択します。

検索画面が表示されるので、「webhooks」と入力。webhooksのアイコンが出てくるので、クリックして選択してください。

5. IFTTTのActionを設定する(DiscordのウェブフックURLを入力)

webhooksを選ぶと、「Make a web request」の項目が出てくるので、これを選択します。

Actionを設定する画面になるので、以下のように設定してください。

  • URL:Discordチャンネルの「ウェブフックURL」を入力
  • Method:「POST」を選択
  • Content Type:「Application/json」を選択
  • Body:下記を参照

ウェブフックURLは、Discordチャンネルの設定から確認できるやつです!

Bodyの項目には、特殊なコードを入れる必要があります。以下のテキストをコピーして、そのまま入力しましょう!

{ “content”:”@{{UserName}} {{CreatedAt}}: {{LinkToTweet}}”}

完成したAction画面がこちら。(URLは隠してあります)

「Create Action」を選択して、最後に「Finish」を押したら、IFTTT側の設定は完了。これでDiscordのチャットにツイートが自動投稿されるようになります。

Discordで動作を確認してみよう

IFTTTの設定が完了したら、Discordを開いて動作を確認してみましょう。

ちゃんと動作していれば、ツイートがあったときに自動でチャットに投稿されるはずなので、Twitterと見比べながら、ツイートがチャットに反映されるかチェックしてみてください。

公式Twitterは不定期すぎるので、すぐに確認したい場合は、あとで紹介する「#ハッシュタグ」でツイートを持ってくるBOTのほうがいいかもしれないです

もし失敗している場合は、「IFTTTのAction設定」が間違っている可能性が高いと思います。IFTTTのトップページに行くと、作成したBOTの一覧が表示されているので、設定を確認してみましょう。

トップでBOTを選んだら、右上の「setings」から、設定の確認と修正ができます

ThisとThatについて

なんかよく分からない感じで英語が出てきましたが、ThisとThatはこんなイメージで覚えておけばいいと思います。

This:弾を発射するトリガー(Twitter/RSS【YouTube関連】)
That:弾を受け取る場所(Discordのチャンネル)

IFTTTで毎回使う、基本中の基本になるので、しっかり覚えておきましょう!

Twitter連携でよく使うBOT設定

DiscordのTwitter関連BOTで使う情報をまとめておきます。

やりたいことによって、途中で選ぶメニューやプログラムのコードが違うので、用途に合わせて使い分けてください!

特定のユーザーのツイートを表示させる

「IFTTTの使い方」でも紹介した、特定のユーザーのツイートのみを取得するBOT。

「This」と「That」の設定は、以下のとおり。

  • This:Twitter→New tweet by a specific user
  • That:webhooks→Make a web request

指定するアカウント名(Twitter_id)は「@以降の英数字(@は含めない)

コードは以下をコピペ。

{ “content”:”@{{UserName}} {{CreatedAt}}: {{LinkToTweet}}”}

指定したハッシュタグを含むツイートを表示させる

「#ゲーム名」など、指定したハッシュタグを含むツイートを取得するBOT。

「This」と「That」の設定は、以下のとおり。

  • This:Twitter→New tweet from search
  • That:webhooks→Make a web request

テキスト入力画面が表示されるので、「#(任意のハッシュタグ)」を入力します。

Search forに入力するテキストは、Twitterで検索するときと同じ感覚でOK。「#」なしの入力もできますが、検索結果がめちゃくちゃ多くなるので、ちょっと微妙かも……?

コードは以下をコピペ。

{ “content” : ” {{CreatedAt}} : {{LinkToTweet}} ” }

Twitterにアップされた動画のみを表示させる

「#ゲーム名」のハッシュタグ付きにプラスして、動画を含むツイートのみを取得するBOT。

「This」と「That」の設定は、そのまま。

  • This:Twitter→New tweet from search
  • That:webhooks→Make a web request

#ハッシュタグの指定のときに、「#ハッシュタグ filter:videos」(半角スペースで間を空ける)と入力します。

コードもそのまま、以下をコピペ。

{ “content” : ” {{CreatedAt}} : {{LinkToTweet}} ” }

Search forで使える検索方法まとめ

上記以外にも、「Search for」に入力するテキストでは、いろんな検索方法が使えます。その一例をまとめて紹介します。

コードは、#ハッシュタグのときと同じく、以下をコピペ。

{ “content” : ” {{CreatedAt}} : {{LinkToTweet}} ” }

リツイート数検索

min_retweets:◯◯(数字)→リツイート数が◯◯以上のツイートを表示

例:「#エグゾスmin_retweets:100」
→#エグゾスのハッシュタグ付きのツイートの中から、リツイート数が100以上のものを表示

お気に入り数検索

min_faves:◯◯(数字)→お気に入り数が◯◯以上のツイートを表示

例:「#エグゾス filter:videos min_retweets:50」
→#エグゾスのハッシュタグで、動画を含むツイートの中から、お気に入り数が50以上のものを表示

除外検索

-◯◯(特定のワード)→ワードを含むツイートを除外して表示

例:「#エグゾス -ガチャ」
→#エグゾスのハッシュタグ付きのツイートの中から、「ガチャ」のワードを含むツイートを除外して表示

いわゆるTwitterで検索するときに使える検索テクニックをそのまま使えるので、より高度な検索をしたい場合は、いろいろ調べてみましょう!

YouTube連携でよく使うBOT設定

DiscordのYouTube関連BOTで使う情報をまとめておきます。

YouTubeのBOTは、Thisを検索するときに「YouTube」ではなく「RSS Feed」を使うので注意しましょう。

特定のYouTubeチャンネルの投稿通知を表示させる

お気に入りのYouTubeチャンネルで動画が投稿されたときの通知を取得するBOT。

「This」と「That」の設定は、以下のとおり。

  • This:RSS Feed→New feed item
  • That:webhooks→Make a web request

Thisに「New feed item」を選択すると「Feed URL」を入力する画面が表示されるので、次のように入力してください。

https://www.youtube.com/feeds/videos.xml?channel_id=チャンネルID

チャンネルIDは、投稿通知を受け取りたいYouTubeチャンネルのURLの最後の部分になります。

Appliv Gamesチャンネルの場合は、トップ画面を開くと、

https://www.youtube.com/channel/UCnFKXr5_S0KFhF5PWdXm8pg」というURLが表示されるので、最後の「UCnFKXr5_S0KFhF5PWdXm8pg」の部分をコピペ。

入力するFeed URLは以下のようになります。

https://www.youtube.com/feeds/videos.xml?channel_id=UCnFKXr5_S0KFhF5PWdXm8pg

コードは以下をコピペ。

{ “content” : “{{EntryAuthor}}\r{{EntryPublished}}\r**{{EntryTitle}}**\r{{EntryUrl}}” }