ポーリングイベントの使用方法
ポーリングイベント機能を使用すると、リモートAPIから定期的にイベントを取得し、自動的にコマンドを実行できます。
設定方法
1. ポーリングイベントの有効化
ポーリングイベント機能を有効にするには、以下の設定を行います:
- ポーリングイベントURL: イベントを取得するAPIのエンドポイント
- 例: code
https://api.example.com/events
- 例:
- ポーリング間隔(秒): ポーリングリクエスト間の間隔
- 推奨: 30秒以上
- ポーリングイベントBearerトークン: API認証用のトークン
2. 設定画面での入力
設定画面では以下の項目を入力できます:
code
ポーリングイベントURL: https://api.example.com
ポーリング間隔(秒): 30
ポーリングイベントBearerトークン: ••••••••••••••••動作仕様
ポーリング処理
- 有効化されると、指定した間隔でポーリングイベントURLにGETリクエストが送信されます
- 取得したレスポンスに基づいて、自動的にコマンドが実行されます
- 各イベントは一意のIDを持ち、重複実行を防ぎます
APIレスポンス形式
ポーリングエンドポイントは以下のスキーマでイベントリストを返す必要があります:
typescript
// ベースイベントスキーマ
id: z.string(), // ユニークなイベントID
createdAt: z.string(), // イベント作成日時
type: z.literal('performSearch'),
tag: z.string(), // 検索タグ
query: z.string(), // 検索クエリスケジューリング機能
この仕組みでは直接的なスケジュール機能はありませんが、 外部でイベントリストを更新することで、スケジューリングを実現することが可能です。
対応イベントタイプ
現在サポートされているイベントタイプ:
performSearch
検索を実行するイベント
- tag: 検索対象のタグ(LLMを実行する場合は、このタグでLLMが実行されます)
- query: 検索クエリ文字列(LLM実行時は実質的にプロンプトとして機能します)
LLM実行機能
- tagでLLMを実行できる場合、queryは実質的にプロンプトとして機能します
- TabToolが搭載されている場合は、任意のページを開いて内容を解析することが可能です
実装例
APIエンドポイント例
json
{
"events": [
{
"id": "event-001",// uuidを使う
"type": "performSearch",
"tag": "claude-4-0",
"query": "https://example.com のページを開いて、その内容を取得して、特定のURLに送信してください。終了後tabをcloseしてください",
"createdAt": "2024-01-15T10:32:00Z"
},
{
"id": "event-002",
"type": "performSearch",
"tag": "gemini-flash-2.5",
"query": "指定されたWebページの内容を解析して、要約を作成してください。
markdownToolをつかって、saveしてください。
終了後tabをcloseしてください",
"createdAt": "2024-01-15T10:33:00Z"
},
{
"id": "event-003",
"type": "performSearch",
"tag": "gpt-5",
"query": "定期的にニュースサイトをチェックして、重要な情報を抽出してください。終了後tabをcloseしてください",
"createdAt": "2024-01-15T10:34:00Z"
}
]
}ユースケース
Google Chrome操作の活用
Google Chromeを操作できる利点を活用した様々なユースケースが可能です:
ログインが必要なページの処理
- ログインが必要なページの内容を取得
- 取得したデータを解析
- 解析結果を特定のエンドポイントにクエリパラメータ付きで送信
柔軟なプロンプト実行
- プロンプトを柔軟に投げることができるため、複雑な処理も実行可能
- 定期的な自動処理にも十分対応
タブ管理の最適化
- タブが増えすぎる問題を解決するため、TabToolの「closeTab」機能を活用
- promptに「終了後tabをcloseしてくださいと」含めることを推奨
具体的な活用例
定期データ収集
- ログインが必要なダッシュボードからデータを取得
- 取得したデータを分析してレポート生成
- 結果を指定されたAPIエンドポイントに送信
Webサイト監視
- 特定のWebサイトの変更を定期的にチェック
- 重要な更新があった場合に通知
- 変更内容を解析して要約を作成
自動化ワークフロー
- 複数のWebページを順次処理
- 各ページのデータを統合
- 最終結果を外部システムに送信
重複実行の防止
- 各イベントのidは一意である必要があります
- 一度実行されたイベントIDは内部で記録され、重複実行されません
- 同じIDのイベントが再度受信されても、実行はスキップされます
注意事項
- ポーリング間隔は30秒以上に設定することを推奨します
- APIエンドポイントは適切な認証(Bearerトークン)を実装してください
- レスポンス形式は指定されたスキーマに従ってください
- 大量のイベントを一度に送信する場合は、APIのレート制限に注意してください
トラブルシューティング
よくある問題
ポーリングが開始されない
- URLが正しく設定されているか確認
- Bearerトークンが有効か確認
イベントが実行されない
- レスポンス形式がスキーマに合っているか確認
- イベントIDが重複していないか確認
認証エラー
- Bearerトークンが正しく設定されているか確認
- トークンの有効期限を確認
まとめ
ポーリングイベント機能は、リモートAPIから定期的にイベントを取得して自動実行する強力な機能です。主なポイント:
- 設定: URL、間隔、Bearerトークンを設定
- イベントタイプ: performSearchでLLM実行が可能
- スケジューリング: 外部システムとの連携で実現
- Chrome操作: ログインが必要なページの処理も可能
- タブ管理: closeTab機能でタブの増加を制御
- 重複防止: 一意のIDで重複実行を防止
この機能を活用することで、定期的なデータ収集、Webサイト監視、自動化ワークフローなど、様々な業務を効率化できます。