[メモ] 少人数グループへの一斉通知方法に関する調査


この記事について

有名サービスのWebAPI活用についての調査メモ。

前提

以下の条件のとき、どのようなサービスを活用すれば効率が良いかを考える。

  • 100人以下のグループに対して業務連絡を行う。
  • スマートフォンユーザーが大半でガラケーユーザーもいる。
  • 無料or少額で使えるサービスを使う

結論

  • スマートフォンユーザーにはチャットサービス経由でスマホアプリにPush通知を送信する。
    • 基本Slack、もしくはChatWorkを使う。
  • 一部のガラケーユーザーにはメールを送信する。
    • WebアプリSESやSendGridなどを想定

Push通知とメールの組み合わせで大体カバーができる。
どちらも少人数・通知目的で使うなら無料枠の範囲で収まる。

結構応答時間があるので、Webアプリで利用する場合は非同期処理での実装が望ましい。

以下、各サービスを使ってみたときのメモ。

チャットサービス

Slack

概要

  • 世界的に勢いのあるビジネス向けグループチャットサービス。2017年11月に日本語に対応した。
  • スマートフォンのアプリがある。投稿内容をPush通知で受け取ることができる。

WebAPI設定方法

  • ワークスペース(≒組織アカウント)にアプリ(追加機能)をインストールすることで外部との連携が可能になる。
    • 「着信Webフック(incoming webhooks)」で投稿リクエストを受け、
    • 「発信Webフック(Outgoing Webhooks)」で投稿内容を外部サービスに通知する。

参考

メモ

ChatWorkより以下の点で優れている。
- Push通知に投稿内容が表示される。
- 業務時間外の通知OFF設定をサービス側で調整できる。
- 対応するWeb自動連携サービス(IFTTT等)の種類が多い

ChatWork

概要

  • 日本発のチャットサービス。日本ではSlackよりユーザー数が多い。
  • Slackより機能面が少ない分シンプルで使いやすいという評価がある。
  • 日本のサービスなのでサポート面で安心
  • チャット部屋のことを「チャット」と呼ぶ。

WebAPI設定方法

  • 外部投稿用のアカウントを作成しチャットに招待する。
  • ユーザーの設定メニューより「API」を選び、APIトークンを取得する。
  • エンドポイントに対してトークンを使って投稿リクエストを送る。

参考

公式:ChatWork API ドキュメント

Line

概要

  • 説明不要の国内最大手チャットサービス。
  • 特定メンバーのチャット機能は「グループ」と呼ぶ

設定作業

ここの通りに進めればOK
- LINE Messaging APIでgroupIdを取得してPush APIでグループにメッセージを送る
- グループIDの取得のためにGASを利用する。
三十路街道 ボンバィエ GASでLINEのグループIDを確認する

メモ

一斉通知には広告用の機能を使うことになる。
アプリの性質を考えると、業務連絡で使うのは避けた方がいいと思う。

SNS

Twitter

概要

  • 公的な情報公開をするときに使うことがあるかも

WebAPI設定作業

ここの通りに進めればOK
PythonでTwitter API を利用していろいろ遊んでみる

認証処理が厳しくcurlコマンドで一発投稿というのはできない。何かしらのプログラムが必要となる。

電話・SMS・FAX

Twilio

概要

  • WebAPI経由で自動読み上げの電話を掛けたりSMSやFAXを送ったりできる
  • サンプルコードを使えば割と簡単に実装できる。
  • 海外のサービスから日本の電話への通知は不通や文字化けの問題があるが、TwilioならKDDIが代理店なので日本語サポートも安心。

参考