Twitterで見逃したくないツイートをSlackに連携する


## 目的：見逃したくないつぶやきを拾う
Twitterのタイムラインでは、ツイートの少ないアカウントは、他のツイートに埋もれて見逃しやすいため、特定のツイートをSlackに連携することで必ずチェックできるようにします。

＜補足＞

* 2017年4月29日時点の各サービスの仕様にもとづく情報です。
* 無償での連携を想定して書いています。


# Twitterの特定ツイートをSlackに連携する
連携する方法は、下記の3通りがあります。

1. とにかくかんたんに連携したい　→　[Slack App連携(特定ユーザ指定)](https://slack.com/apps/A0F7XDW93-twitter)

2. ツイート内容を見やすくしたい　→　[IFTTT連携(特定ユーザ指定)](https://ifttt.com/twitter) **※要IFTTTアカウント**

3. 特定のツイートだけ連携したい　→　[IFTTT連携(検索条件指定)](https://ifttt.com/twitter)　 **※要IFTTTアカウント**

設定のしやすさや表示の見やすさなど、お好みの方法でご利用ください。（おすすめはIFTTT連携です）


## かんたん編：Slack App連携(特定ユーザ指定)
①https://slack.com/apps/A0F7XDW93-twitter にアクセスします。
※Slackの「App Directory」から「Twitter」を検索して移動した先と同じです。

②「Install」ボタンをクリックします。
※2回目以降は、「Add Configuration」ボタンになっています。

![Twitter_Slack_install.png](https://qiita-image-store.s3.amazonaws.com/0/148986/92d9eedf-9ae8-b25f-7566-2b5864c0c7a7.png "Twitter_Slack_install.png")

③「Add Twitter Integration」ボタンをクリックします。

![Twitter_Slack_integration.png](https://qiita-image-store.s3.amazonaws.com/0/148986/39c49f5a-b700-108e-a2ab-2f0e1a86a340.png "Twitter_Slack_integration.png")


④「連携アプリを認証」ボタンをクリックします。

![Twitter_アプリケーション認証.png](https://qiita-image-store.s3.amazonaws.com/0/148986/372a7d9e-635d-f725-62d7-074a090ea5a1.png "Twitter_アプリケーション認証.png")

⑤設定画面で「Auto-post Tweets in Slack」と「Post to Channel」(投稿先チャンネル)を設定して「Save Settings」ボタンをクリックすると完了です。（その他の設定項目はデフォルトのままでも大丈夫です）

**「Auto-post Tweets in Slack」について**

* 「CHOOSE A TWITTER ACCOUNT」は、チェックしたいTwitterアカウント名を入力します。
* 「CHOOSE THE TWEETS TO DISPLAY」は、「CHOOSE A TWITTER ACCOUNT」で入力したアカウントに関連するどのツイートをSlackに連携するかを設定します。
 * このアカウントへ送信されたツイート
 * このアカウントから送信されたツイート
     * @repliesを除外する　
     * リツイートを表示する

![Twitter_Slack_configration.png](https://qiita-image-store.s3.amazonaws.com/0/148986/c67f5cff-6add-241a-46ae-48e9e2972303.png "Twitter_Slack_configration.png")

※上記の画像では、説明のために自分のアカウント名を入力していますが、実際には自分以外のアカウント名を入力することになります。

### かんたん編：実際の表示

**▼Twitterに投稿されたツイート**
![つぶやき_ Twitter.png](https://qiita-image-store.s3.amazonaws.com/0/148986/9a1b9936-ab9d-abac-dab4-3457baa5370e.png "つぶやき_ Twitter.png")

**▼Slack投稿されたツイート**
![つぶやき_Slack.png](https://qiita-image-store.s3.amazonaws.com/0/148986/017d2521-91b0-ccc5-a86a-322f9c0b5178.png "つぶやき_Slack.png")


## 見やすい編：IFTTT連携(特定ユーザ指定)
①https://ifttt.com/create にアクセスします。
※IFTTTの「My Applets」メニューをクリックした後、「New Applets」ボタンをクリックした先と同じです。

②「if +this then that」の「+this」をクリックした後、「Twitter」をクリックします。

③「Choose trigger」にて、「New tweet by a specific user」をクリックします。

![IFTTT_user_6-2_1.png](https://qiita-image-store.s3.amazonaws.com/0/148986/8dcbfa98-982f-ea58-a8d6-8215852bfddc.png "IFTTT_user_6-2_1.png")

④チェックしたいTwitterアカウント名を入力して「Create trigger」ボタンをクリックします。

![IFTTT_user_6-2_2.png](https://qiita-image-store.s3.amazonaws.com/0/148986/41cc51e1-aab7-7b31-6839-89dce557211a.png "IFTTT_user_6-2_2.png")

※上記の画像では、[@junkudo_ike_pc](https://twitter.com/junkudo_ike_pc) を入力しています。

⑤「if this then ✚that」の「+ that」をクリックした後、「Slack」をクリックします。

⑥「Choose action」にて、「Post to channel」をクリックします。

![IFTTT_user_6-4.png](https://qiita-image-store.s3.amazonaws.com/0/148986/c93db1fd-eec6-6161-b297-5e6831af2635.png "IFTTT_user_6-4.png")

⑦「Which channel?」では、投稿先のチャンネルを選択し、「Message」にて投稿内容を設定した後、「Create Action」ボタンをクリックします。
※「Title」、「Title URL」、「Thumbnail URL」は任意項目なので、空欄で大丈夫です。

**「Message」の設定内容について**

* 「add ingredient」をクリックすると、使用可能な変数を入力することができます。
* 直接文字列を入力すると、その文字がそのままSlackに投稿されます。

![IFTTT_user_6-5.png](https://qiita-image-store.s3.amazonaws.com/0/148986/b41ad35a-8e84-a3e5-4c20-ec8510f505c8.png "IFTTT_user_6-5.png")


⑧最後の確認画面で「Finish」ボタンをクリックすれば、完了です。

### 見やすい編：実際の表示

**▼Twitterに投稿されたツイート**
![ジュンク堂書店池袋本店_PC書さんのツイート.png](https://qiita-image-store.s3.amazonaws.com/0/148986/8fd094d1-146f-e3bb-1bfe-b38574793822.png "ジュンク堂書店池袋本店_PC書さんのツイート.png")

**▼Slack投稿されたツイート**
![junkudo_ike_pc___Will-meaning_Slack 2.png](https://qiita-image-store.s3.amazonaws.com/0/148986/ad628d1f-b604-cc83-0d17-17766bcab350.png "junkudo_ike_pc___Will-meaning_Slack 2.png")
※Slack AppにてTwitterを連携している場合は、TwitterのURLを自動展開してしまいますが、連携していない場合は赤枠の部分だけが通知されます。
※もちろん、投稿内容にTwitterのURLを含めなければ、Slack AppのTwitter連携の影響はありません。


## 絞り込み編：IFTTT連携(検索条件指定)
※かんたん編との違いは③、④のみ異なりますので、差分のみ記載します。

①https://twitter.com/search-advanced?lang=ja にアクセスして、検索条件を指定して「検索」ボタンをクリックします。

![Twitterの高度な検索.png](https://qiita-image-store.s3.amazonaws.com/0/148986/ef541bdd-7053-9256-88b5-b12376e72644.png "Twitterの高度な検索.png")

※上記の画像では、[@jvnjp](https://twitter.com/jvnjp) が「java apache tomcat struts spring seasar」のいずれかのキーワードを含むつぶやきを条件にしています。

②表示された検索結果が問題なければ、検索フィールドに内の検索条件をコピーします。
※「話題のツイート」ではなく、「すべてのツイート」で確認します。

![Twitter_検索結果.png](https://qiita-image-store.s3.amazonaws.com/0/148986/66e1d853-9bc2-951e-2737-936e87a95a5a.png "Twitter_検索結果.png")

→「java OR apache OR tomcat OR struts OR spring OR seasar from:jvnjp」


③見やすい編の①〜②を実施します。

④「Choose trigger」にて、「New tweet from search」をクリックします。

![IFTTT_search_6-2_1.png](https://qiita-image-store.s3.amazonaws.com/0/148986/b03f5fc5-2e5a-259b-4ecb-eececd6f361d.png "IFTTT_search_6-2_1.png")

④「Search for」に②でコピーした検索条件を入力して「Create trigger」ボタンをクリックします。

![IFTTT_search_6-2_2.png](https://qiita-image-store.s3.amazonaws.com/0/148986/58a5289c-145a-c8a1-713e-0bacf2bebbba.png "IFTTT_search_6-2_2.png")

⑤見やすい編の⑤〜⑧を実施して完了です。
※今回は⑦の「Thumbnail URL」で「UserImageUrl」を指定しています。


### 絞り込み編：実際の表示

**▼Twitterに投稿されたツイート**
![JVN_脆弱性レポートさんのツイート.png](https://qiita-image-store.s3.amazonaws.com/0/148986/bf02b839-bb20-fea5-4abb-4084d95028c0.png "JVN_脆弱性レポートさんのツイート.png")

**▼Slack投稿されたツイート**
![security_Slack.png](https://qiita-image-store.s3.amazonaws.com/0/148986/00355bf1-2111-4645-c471-d14878b250cb.png "security_Slack.png")
※「Thumbnail URL」で「UserImageUrl」を設定したので、右側にユーザ画像が表示されています。


## 参考サイト
* 今回ご紹介させていただいたサイト
  * [IFTTT](https://ifttt.com)

* Slack連携させていただいたTwitterアカウント
  * [@junkudo_ike_pc (ジュンク堂書店池袋本店/PC書)](https://twitter.com/junkudo_ike_pc)
  * [@jvnjp (JVN 脆弱性レポート)](https://twitter.com/jvnjp)

* SlackへのTwitter連携が便利だなと思ったきっかけのSlackチーム
  * [Annict](https://annict.com/) -> [Slackチーム](https://slack.annict.com/)