広告:この記事には紹介リンクが含まれます。対象の申込みにより、LavaToolsが報酬を受け取る場合があります。

この記事の内容
  1. 新規作成と更新のどちらを知らせるか決める
  2. Watch Files in a Folderを設定する
  3. 取得したファイルIDを残す
  4. Slackの宛先を固定して通知文を作る
  5. リンク通知とファイル公開を区別する
  6. 成功後に通知記録を保存する
  7. 四つの操作で通知条件を確かめる
  8. 通知遅延と取得上限を運用に合わせる

新規作成と更新のどちらを知らせるか決める

例の完成条件は、練習用フォルダで新規作成したPDF一件につきSlackへ一件届くことです。同じファイルの編集は通知対象にしません。「フォルダへ追加」には新規作成、既存ファイルの移動、ショートカット追加などがあり、同じ動作とは限りません。必要な操作をテスト項目に分けます。

Watch Files in a Folderを設定する

Google DriveのWatch Files in a Folderで対象ドライブ、練習用フォルダ、ファイル種類、少ない取得件数を選びます。Watch FilesはBy Created Timeから始めます。変更通知が目的ならBy Modified Timeを検討しますが、名前変更や編集が再び対象になる設計です。サブフォルダや既存ファイルの移動まで拾えると想定せず、必要な範囲を個別に確認します。

取得したファイルIDを残す

通知の識別子にはファイル名ではなくDriveのファイルIDを使います。同名ファイルは別物であり、名前が変わっても同じIDを追えるためです。管理用の表にfile_id、notified_at、slack_message_idを用意し、練習用の一件が何を指すか確認します。更新通知も行う場合はIDだけで除外せず、対象とする版や更新時刻を含む別の規則を決めます。

Slackの宛先を固定して通知文を作る

SlackのSend a Messageで練習用チャンネルを指定します。「新着資料:TEST-D001.pdf/ファイルID:…/確認リンク:…」のように、名前と返された閲覧用リンクを割り当てます。リンクが出力されない場合はGet a File/Folder Metadataで必要な値を確認します。受信したファイル名を投稿先やメンションとして扱わないでください。

リンク通知とファイル公開を区別する

SlackへURLを送っても、Driveの閲覧権限は自動的に付与されません。想定する担当者が既存の権限で開けるかを確認します。見られないときに、誰でもリンクで閲覧できる設定へ一括変更するのは避け、必要な共有先だけを管理者と確認してください。内容のプレビューが不要ならSlack側のリンク展開設定も確認します。

成功後に通知記録を保存する

投稿が成功した後で、ファイルID、投稿時刻、返されたメッセージIDを管理表へ記録します。復旧では管理表とSlackを照合してから再投稿します。複数の実行が同じIDを処理すると、検索で未通知を確認してから保存する間に競合することがあります。単なる検索を厳密な一回限りの保証として扱わず、同時処理を抑えるか一意キーを持つ管理方法を検討します。

四つの操作で通知条件を確かめる

新しいPDFの作成、同じファイルの編集、既存ファイルの移動、同名の別ファイルを用意します。各操作の期待する通知数を先に書き、Run onceの出力とSlackの実物を比べます。閲覧できないユーザーでもリンクが開けたと決めつけず、権限を持つ確認用アカウントの範囲を記録します。

通知遅延と取得上限を運用に合わせる

新着件数が取得上限を超える場面や、実行間隔より短時間で多数追加される場面を確認します。通知が一度届いたことと、全件を漏れなく処理できることは別です。変更検知に切り替えると通知量が増える可能性があるため、履歴・未処理件数・消費を見てから対象を広げてください。

Makeで小さな自動化から始める

まず練習用データで必要な処理を確認し、利用量と機能に合うプランを選んでください。登録時の料金・特典・適用条件は公式画面で確認できます。

Make公式サイトで登録する広告リンク

利用量から費用を確かめる

月の処理件数、課金対象のステップ数、再試行を入力し、サービスごとに異なる課金単位を確認できます。

費用を試算する

参照した公式情報

料金・提供条件・対応範囲は変更されることがあります。契約前に、下記の公式ページでご確認ください。

比較方針を読む広告について