技術系の情報収集について今まで、Feedly 、 Gmail 、 Twitter を使用していました。
最近になってよく Twitter を見るようになったのですが、そうなると Feedly や、 Gmail はあまり見なくなってきていて、Twitter が 速報性があっていいなとは思うのですが、ノイズも多かったりします。
Feedly、Gmail、Twitter の情報を いい感じでまとめてみるいい方法はないかなと思っていました。

Web 情報を見てみると、Slack で RSS Integration を使って 情報を集めるといい感じになりそうなのがわかりましたが、仕事では Chatwork を使っており、どうせなら会社でも使える可能性がある Chatwork で似たようなことができないか試してみました。

結果、IFTTT と Chatwork を組み合わせたところ、レシピ設定は必要ですがいい感じに情報収集の環境を構築できました。
実施したことを記載します。


動機

繰り返しになるかもしれないですが、実施する動機を記載します。


Chat ツールに情報を集める理由

  • Feedly を見て、Gmail を見て、Twitter を見るという情報収集のフローをなんとかしたかった。1つのツールで情報を見たい。

  • Chat ツールではなくてもいいが、現状 Chat ツールを使うと実現ができそうであった。

  • WebHook もある、メッセージのポーリングもできるので、情報をため込んだ後にそれに対して何かすることもできる。


Chatwork を使用する理由

Slack ではなく、Chatwork を使用する理由は以下になります。


Chatwork を使うの前提条件の元、IFTTT を使った理由

現在 は IFTTT の Chatwork レシピがあり、Postmessage は実行可能です。
少し前までは実装されていなかったようですが、最近実装されたようです。
IFTTT連携 – ChatWorkに関するご意見・ご要望

Google Apps Script 等で Chatwork に メッセージ送信している例もありましたが、IFTTT であれば画面から設定ができるのでそっちのほうが簡単そうに思いました。
Zapier でも同様のことができるのですが、Zapier は タスク制限の厳しいため、制限の緩い、というかない IFTTT を使用しました。


情報収集フローの Before、After

情報収集フローの Chatwork 導入前と導入後の、Before、After について記載します。

  • Before
    "Before"

    1. Feedly 、 Gmail 、 Twitter から情報を収集。
    2. 気になった情報は Web クリップで Evernote へ 保存。
  • After
    "After"

    1. Feedly を使わなくなった。(アカウントも削除した)
    2. IFTTT で、各種情報を取得、Chatwork へ通知。 (愚直に Applet を定義)
    3. 気になった情報は、Web クリップで Pocket に保存 (タグもつける)

作成した Applets について

以下、3つの Applets を大量に作成しました。


RSS の更新 を Chatwork に通知する

この Applets で Google アラート、や 購読していた RSS を Gmail、Feedly から移行しました。
作成手順を説明します。
事前に IFTTT のアカウント、ChatWork のアカウントを取得する必要があります。

1. Applets から New Appletクリックします。

"New Applet"

2. + thisクリックします。

"+ this"

3. Rss Feed をクリックします。

"RSS Feed"

4. New feed Item をクリックします。もう1つ Match Feed というのもありますが、そちらは使いませんでした。

"New feed Item"

5. Feed URL を入力して、Create triggerクリックします。

"Input feed URL"

6. + thatクリックします。

"+ that"

7. ChatWork をクリックします。

"ChatWork"

8. Post a messageクリックします。いうか Post a message しかありません。

"Post a message"

9. Chat通知先のルーム名とメッセージ内容を設定します。

"Settings"
デフォルトで設定されるメッセージは以下のフォーマットです。

  • RSS から Chatwork へ転送するデフォルトメッセージ

    {{EntryTitle}}<br>
    {{EntryUrl}}<br>
    {{EntryContent}}<br>
    via {{FeedTitle}} {{FeedUrl}}<br>
    {{EntryPublished}}
    
    RSSから転送するデフォルトメッセージが少し見ずらいと感じたため、以下のように内容を変更しました。
    ChatWorkは改行が\n ですが、IFTTT から転送する場合は<br >設定で上手く改行され、\n では上手く改行されませんでした。

  • RSS から Chatwork へ転送するメッセージ

    [info][title]{{EntryTitle}}[/title]{{EntryUrl}}<br>{{EntryContent}}<br>
    提供元:{{FeedTitle}} {{FeedUrl}}<br>
    公開日:{{EntryPublished}} [/info]
    

10. Applet に名前をつけて、Finish をクリックで完成です。

"Review And Finish"

特定ユーザーの Tweet を Chatwork に通知する

続いて、特定ユーザーの Tweet を Chatwork に通知する方法を説明します。
スクリーンショットの添付がつらいので、抜粋して説明します。

1. + thisクリック、Twitter を選択して、レシピ New tweet by a specific userクリックします。

"New tweet by a specific user"

2. Tweet を転送するユーザ名を入力して、Create triggerクリックします。

"Username to watch"

3. + that ChatWork を選択、Chat通知先のルーム名とメッセージ内容を設定します。

"Post a message"

デフォルトで設定されるメッセージは以下のフォーマットです。

  • デフォルトのメッセージ
    {{TweetEmbedCode}}<br>
    <br>
    {{CreatedAt}}<br>
    via Twitter https://twitter.com/{{UserName}}
    

以下のようにメッセージのフォーマットは変更しました。タイトル欄がないので、何か入れた方が見やすいかもしれません。

  • Twitter から Chatwork へ転送するメッセージ
    [info]
    {{TweetEmbedCode}}<br>
    作成日:{{CreatedAt}}  <br> 
    ユーザ:https://twitter.com/{{UserName}}<br>
    [/info]
    

Gmail を Chatwork に通知する

続いて、Gmail の転送方法を記載します。

1. + thisクリック、Gmail を選択して、レシピ Any new email in inboxクリックします。

ちなみにinbox なので、フィルタ等で 受信トレイをスキップしている場合、そのメールは対象になりません。
これがわからず少し困惑しました。
"Any new email in inbox"

2. + that ChatWork を選択、Chat通知先のルーム名とメッセージ内容を設定します。

"Post a message"

デフォルトで設定されるメッセージは以下のフォーマットです。

  • デフォルトのメッセージ
    From: {{FromAddress}}<br>
    <br>
    Subject: {{Subject}}<br>
    <br>
    First Attachment: {{FirstAttachmentFilename}} {{FirstAttachmentPublicURL}}<br>
    <br>
    Date: {{ReceivedAt}}<br>
    <br>
    {{BodyPlain}}
    

以下のようにメッセージを変更しました。
基本的には本文がきちんと見れますが、Subject に、<> 等の文字が含まれている場合、途中で途切れたりします。

  • Gmail から Chatwork へ転送するメッセージ
    [info][title]{{Subject}}[/title]
    受信日:{{ReceivedAt}}<br>
    {{BodyPlain}}[/info]
    

失敗した

  • RSS をいい感じに表示できない
    Chatwork の場合、RSS の取得結果をリッチな表示にはしてくれません。
    Feedly 等の RSS リーダー、Slack のほうが HTML をいい感じで表示してくれそうです。

  • IFTTT からの Chatwork への Postmessage が未読にならない
    IFTTT の Chatwork 連携 は 自分宛のメッセージは 現在 全て既読になってしまいます。
    2018年7月 リリースノート | ChatWorkブログ 自分が<wbr>送った<wbr>メッセージを<wbr>自分から<wbr>見ても<wbr>「未読」に<wbr>する<wbr>フラグ追加されましたので、これが反映されれば、連携するレシピも未読でメッセージ送信できるようになるのかと思います。
    遠くない未来に、実装されそうに思いますので、既読のまま気にしないで待とうかと思います。

追記

  • 未読で送信されるようになった
    後日確認したら、未読で送信されるようになっていました!

企業利用するなら

  • IFTTT を企業で使ってる事例があまり見つからない
    基本的に IFTTT は 権限管理ができなそうだったり、オーディエンス情報としてデータは使用されそうに思いますので、エンプラ向きではない気がします。
    企業利用するなら、Zapier、Microsoft flow でしょうか。

  • Google Apps Scriptを使う
    RSS を連携するくらいであれば、Google Apps Script で スクリプトを書いて転送しても良いかと思います。


参考

コメント