皆さんこんにちは。サイトエンジンのYouTube担当のコヤマです。ChatworkとTwitter簡単に連携させたい!と思っている同士のために今回の記事を書きました。少しでも参考にしていただければと思います。
背景
弊社では現在、「SNSをもっと活用していろんなきっかけを作ろう!」という方針のもと「社員全員1日1ツイート」というルールを設けて、社員全員でTwitter活動を行っています。
そこで、業務時間の最後にその日の社員のツイートの中で一番良いツイートをChatwork内で表彰する「ベストツイートのコーナー」という活動をコヤマが担当しています。
今までひとりひとりのツイートを見て回っていたのですが、これが地味にめんどくさいです。
どうにか社員のツイートだけを表示させる方法はないものかと探した結果、今回の方法に至りました。
目的
「特定のアカウントのツイートをChatwork内のルームでbotに投稿させる」
では順を追って設定していきます。この記事の上部から設定していくのが一番効率的なので、是非真似してみてください。
Chatworkでの設定
IFTTT用のアカウントを作成
Chatwork内でツイート内容をさせる投稿アカウント(メールアドレス)を作成します。もともとあるbot用のアカウントがあればそれを使用してもかまいません。
API利用申請
TwitterとChatworkを連携するにあたり、ChatworkのAPIを使う必要があるので、管理者であればそのままでも良いですが、管理者でなければ、管理者にChatworkの組織管理者様にAPIの利用申請をしましょう。
Chatwork内にツイートを流すルームを作成する
ツイートを流したいルームを作ります。今回は「Twitterメンバー投稿」という名前でルームを作りました。
これでChatworkでの設定は終わりです。
IFTTTでの設定
IFTTTとは
今回はChatworkとTwitterを連携させるためにIFTTT(イフト)というツールを使用します。
IFTTTはプラットフォームやソーシャルメディアなどの「サービス同士」を連携させるWebサービスです。
IFTTTは「IF This Then That」の頭文字を取ったサービス名となっており、日本語訳では「もし○○したら□□する」という意味になります。
IFTTT内では「○○(if this)」を「トリガー」と呼び、「□□(then that)」をアクションと呼びます。
IFTTTを利用してサービスとサービスを連携させるにはApplets(アプレット)と呼ばれるものを作成します。アプレットは簡単にいうと「サービス同士の連携とその動作を指示するもの」です。つまり、先述したトリガーとアクションをまとめたもの、ということです。
IFTTT内でこのアプレットをいくつも作成すれば、いろんなサービスを連携、自動化させることができます。
IFTTT内で元から設定されているアプレットを検索して使用する方法もあれば、自分自身で設定して好みのアプレットを作る方法もあります。
今回は自分でアプレットを作成します。
サインアップ
botのメールアドレスでIFTTTにサインアップします。
サインアップするとスラックとコネクトする画面が出てくるが右上のスキップを押して画面をスキップします。
アプレットの作成
自作のアプレットを作っていきます。今回のアプレットのイメージです。
右上の「Create」をクリックします。
Twitterをトリガーとする
まずは「if this」をクリックして、Twitterをトリガーにします。
トリガーを設定する画面でサービスを選択できるので、「Twitter」と検索してアイコンをクリックします。
今回の目的として「特定のアカウントのツイートをChatwork内のルームでbotに投稿させる」というものがあるので、「New tweet by a specific user」を選択したいところですが、試してみたところ1アカウントにつき1アプレットという仕様みたいでした(僕のやり方が間違っていたのかもしれませんが…)。
なのでTwitterの「高度な検索の使い方」を利用して特定のアカウントのツイートを取得(検索)します。「New tweet by a specific user」ではなく「New tweet from search」を選択します。
この画面が出てくるので「Connect」をクリックします。
Twitter許可画面が登場するので、許可ボタンをクリックしてください。アカウントなんでもいいのですが、念のため会社のものが望ましいと思います。
先ほどの検索機能を使って特定のアカウントを入力します。
アカウント名を以下のように入力していきます。2人以上の場合も同じ要領で増やしていきます。
(from:tomohiko11 OR from:naoyan_hashimoto)
「Create trigger」をクリックします。これでトリガーは完成です。
Chatworkをアクションに設定する
次にthen thatをChatworkに設定します。「then that」をクリックして、Twitterの追加時と同じようにChatworkを追加します。
Chatworkを追加します。
目的として「特定のアカウントのツイートをChatwork内のルームでbotに投稿させる」というものがあるので、「Post a message」を選択。
「Connect」をクリックします。
許可を選択します。この時Chatworkにログインしている自分のアカウントがAPI利用申請を許可されていない場合、Connectすることができません。本記事の冒頭にあるように、API利用申請の許可をもらっておいてください。
「room」はクリックするとプ接続しているChatworkのルームがルダウンで表示されるので、投稿したいルームをここで選択します。
「message」は好みで投稿のテンプレートを変更できます。今回はなにも変更はしません。
「Create action」をクリックします。
「Continue」をクリックします。
「Applet title」にはアプレットのタイトルを入力します。
「Finish」をクリックします。
「Connected」になっていることを確認し、アクションの設定は完了です。
検証
検証してみます。以下のツイートをしてみました。
時間を見てみると、ツイートは9:40に投稿されているのに対し、Chatworkでは10:02に投稿されています。若干の遅れがあるみたいです。
次に引用リツイートをしてみます。
少しわかりづらいですね。引用したツイートはChatworkには投稿されず、引用したツイートのリンクのみが投稿されます。
まとめ
初めてIFTTTを使った連携をしてみました。もう一つの候補としてZapierというツールもあったのですが、Zapierのほうが「扱いが若干難しい代わりに、連携できるサービスの量が多い」ということだったので、今回は簡単にできるIFTTTを使用しました。
とても簡単にできたので、機会があればほかのサービスの連携も試してみたいです。