目次
1. 全体像
このアプリは、LLMモデル関連ニュースを収集して feeds/*.xml にRSSフィードを生成し、公開GCSバケットから配信します。Power AutomateのRSSトリガーからこのフィードを監視できます。
- Cloud Scheduler が毎日 Cloud Run Job をトリガーし、記事を収集してRSSを生成します。
- 生成された
data/models.jsonとfeeds/*.xmlが公開GCSバケットへ書き込まれ、そのままHTTPS配信されます。 - Power AutomateがRSSの新着アイテムを検知します。
- Microsoft Teamsの指定チャネルへメッセージを投稿します。
画面のURLは Firebase Hosting の
https://{プロジェクト}.web.app(独自ドメインも無料で接続可)です。
一方 RSSフィードは公開GCSバケットが配信し、URLは https://storage.googleapis.com/{バケット名}/feeds/all.xml です(Power AutomateにはこのフィードURLを登録します)。
2. 公開URLの確認
2.1 配信を確認する
- デプロイ手順(
DEPLOY.md)に従い、公開GCSバケット・Cloud Run Job・Firebase Hosting を構築します。 - ニュース更新ジョブが1回実行されると、
data/models.jsonとfeeds/*.xmlがバケットへ配信されます。
2.2 公開URLへアクセスする
- 画面URL
https://{プロジェクト}.web.appを開きます。 - トップページに「Power Automate連携手順書」と「公開RSSフィード」が表示されることを確認します。
- フィードURL
https://storage.googleapis.com/{バケット名}/feeds/all.xmlを開き、XMLが表示されることを確認します。
Power Automateには、ローカルファイルや
file:// のURLではなく、公開された https:// のRSS URLを登録してください。
3. RSSフィードURLの選択
通知したい情報の範囲に応じて、登録するRSSフィードを選びます。最初は all.xml を使うと、重要度AまたはBの主要更新をまとめて確認できます。
| フィード | URLパス | 用途 |
|---|---|---|
| All | /feeds/all.xml | 重要度AまたはBのすべてのLLMモデル関連情報 |
| Major Models | /feeds/major-models.xml | 重要度Aの主要モデル情報だけを通知したい場合 |
| Pricing | /feeds/pricing.xml | 価格やコスト関連の更新を追いたい場合 |
| Open Models | /feeds/open-models.xml | オープンウェイトモデル関連を追いたい場合 |
| Coding | /feeds/coding.xml | コーディングモデルやコード生成性能を追いたい場合 |
| Multimodal | /feeds/multimodal.xml | 音声、画像、動画などのマルチモーダル更新を追いたい場合 |
公開URLが https://storage.googleapis.com/{バケット名}/ の場合、AllフィードのURLは次のようになります。
https://storage.googleapis.com/{バケット名}/feeds/all.xml
4. Power Automateフロー作成
4.1 自動化クラウドフローを作成する
- Power Automate を開きます。
- 左メニューから 作成 を開きます。
- 自動化したクラウド フロー を選択します。
- フロー名に
LLMモデル更新をTeamsへ通知など、用途が分かる名前を入力します。 - トリガー検索で
RSSと入力します。 - フィード項目が発行されるとき を選択します。
- 作成 を押します。
4.2 RSSトリガーを設定する
- RSS フィード URL に、公開されたRSS URLを入力します。
- 例:
https://storage.googleapis.com/{バケット名}/feeds/all.xml - 保存後にフローが有効化されていることを確認します。
RSSアイテムの重複通知を避けるため、RSSの
guid は記事ごとのIDまたはURLを使っています。同じ記事が再生成されても、通常は新着として扱われません。
5. Teams投稿メッセージ設定
5.1 Teamsアクションを追加する
- RSSトリガーの下で 新しいステップ を押します。
- 検索欄に
Teamsと入力します。 - Microsoft Teams コネクタを選択します。
- チャットまたはチャネルでメッセージを投稿する を選択します。
- 投稿者 は通常 Flow bot を選びます。
- 投稿先 は Channel を選びます。
- 通知先のTeamとChannelを選択します。
5.2 メッセージ本文を作る
本文欄には、RSSトリガーの動的コンテンツを差し込みます。以下は実運用しやすい例です。
新しいLLMモデル関連ニュースが公開されました。
タイトル: Feed title
リンク: Primary feed link
公開日: Feed published on
概要:
Feed summary
Power Automateの動的コンテンツ名は環境の言語設定やコネクタ表示によって少し変わる場合があります。対応関係は次の通りです。
| 入れたい内容 | 選ぶ動的コンテンツの目安 |
|---|---|
| 記事タイトル | Feed title または フィード タイトル |
| 記事URL | Primary feed link または プライマリ フィード リンク |
| 公開日時 | Feed published on または フィードの公開日時 |
| 概要 | Feed summary または フィードの概要 |
5.3 HTMLリンク形式にする場合
Teams本文でHTMLが許可される形式の場合は、次のようにリンクを見やすくできます。
<p>新しいLLMモデル関連ニュースが公開されました。</p>
<p><a href="Primary feed link">Feed title</a></p>
<p>Feed summary</p>
動的コンテンツは文字として入力するのではなく、Power Automateの右側パネルから選択してください。手入力した
Feed title は変数として展開されません。
6. テストと運用確認
6.1 フローを保存してテストする
- 画面右上の 保存 を押します。
- テスト を押します。
- 手動テストを選択します。
- Cloud Run Job(ニュース更新ジョブ)を手動実行するか、新しいRSSアイテムが生成されるまで待ちます。
- フローの実行履歴に成功ログが出ることを確認します。
- Teamsの対象チャネルにメッセージが投稿されることを確認します。
6.2 運用前チェックリスト
- 公開URLのトップページが開ける。
- 登録したRSS URLをブラウザで開くとXMLが表示される。
- Power AutomateのRSSトリガーに
https://のURLを登録している。 - Teams投稿先のTeamとChannelが正しい。
- フロー所有者にTeams投稿権限がある。
- Cloud Run Job が正常に実行され、フィードが更新されている。
7. トラブルシュート
| 症状 | 確認すること | 対応 |
|---|---|---|
| Power AutomateがRSSを読み込めない | RSS URLが公開された https:// URLになっているか |
トップページのRSS URLをコピーし直して登録します。 |
| Teamsに投稿されない | フローの実行履歴、Teams投稿先、接続アカウントの権限 | 失敗した実行の詳細を開き、Teamsコネクタの認証を更新します。 |
| 新しい記事が通知されない | Cloud Run Job が成功しているか、RSSに新しい item があるか |
ジョブを手動実行し、feeds/all.xml の更新日時を確認します。 |
| 同じ内容が複数回通知される | RSSアイテムの guid が変わっていないか |
記事IDまたはURLが安定しているか確認します。フィードを再作成するだけなら通常は重複しません。 |
| 概要がHTMLタグ付きで見える | Teamsアクションの本文形式 | プレーンテキストの本文例を使うか、HTMLとして解釈される投稿形式に変更します。 |