Tools
リアクション
エージェントは、message ツールの react
アクションを使用して絵文字リアクションを追加および削除します。動作はチャンネルによって異なります。
仕組み
{ "action": "react", "messageId": "msg-123", "emoji": "thumbsup"}- リアクションを追加する場合、
emojiは必須です。 - 対応しているチャンネルでボットのリアクションを削除するには、
emojiを空文字列("")に設定します。 - 特定の絵文字を1つ削除するには、
remove: trueを設定します(空でないemojiが必要です)。 - ステータスリアクションに対応するチャンネルでは、リアクションで
trackToolCalls: trueを指定すると、 ランタイムは同じターン中にそのリアクション対象メッセージを、以降のツール進行状況 リアクションに再利用できます。
チャンネルごとの動作
Discord と Slack
- 空の
emojiを指定すると、メッセージ上のボットのすべてのリアクションが削除されます。 remove: trueを指定すると、指定した絵文字のみが削除されます。
Nextcloud Talk
- リアクションの追加のみ対応しています。
emojiは必須で、空にできません。 - リアクションの削除はまだ削除呼び出しに接続されていません。
remove: trueは何もせずに暗黙的に処理されるのではなく、明示的なエラーで拒否されます。 reaction機能を使用して登録された Talk ボットが必要です(Nextcloud Talk チャンネルのドキュメントを参照)。
Telegram
- 空の
emojiを指定すると、ボットのリアクションが削除されます。 remove: trueでもリアクションは削除されますが、ツールの検証では引き続き空でないemojiが必要です。
- 空の
emojiを指定すると、ボットのリアクションが削除されます。 remove: trueは内部的に空の絵文字へマッピングされます(ツール呼び出しでは引き続きemojiが必要です)。- WhatsApp では、メッセージごとにボット用のリアクション枠が1つあります。新しいリアクションを送信すると、複数の絵文字が積み重なるのではなく、既存のリアクションが置き換えられます。
Zalo Personal (zalouser)
- 追加と削除のどちらにも、空でない
emojiが必要です。 remove: trueを指定すると、その特定の絵文字リアクションが削除されます。
Feishu/Lark
- 個別のツールではなく、他のチャンネルと同じ
reactアクションを使用します(メッセージリアクション ID を介した追加、削除、一覧取得)。 - 追加には空でない
emojiが必要です(Feishu のemoji_typeにマッピングされます。例:SMILE、THUMBSUP、HEART)。 remove: trueには空でないemojiが必要で、その絵文字タイプに一致するボット自身のリアクションを削除します。clearAll: trueとともに空のemojiを指定すると、メッセージ上のボットのすべてのリアクションが削除されます。
Signal
- 受信リアクション通知は
channels.signal.reactionNotificationsで制御します。"off"は通知を無効にし、"own"(デフォルト)はユーザーがボットのメッセージにリアクションしたときにイベントを発行し、"all"はすべてのリアクションについてイベントを発行し、"allowlist"はchannels.signal.reactionAllowlistに含まれる送信者についてのみイベントを発行します。
iMessage
- 送信リアクションは iMessage のタップバック(
love、like、dislike、laugh、emphasize、question)です。リアクションを追加するには、emojiがこれらの種類のいずれかにマッピングされる必要があります。 - 認識されるタップバックの種類を指定せずに
remove: trueを使用すると、すべてのタップバックの種類が削除されます。認識される種類を指定すると、その種類のみが削除されます。
リアクションレベル
チャンネルごとの reactionLevel は、エージェントが自身のリアクションを送信する頻度を
制限します。値:off、ack、minimal、extensive。
- Telegram のリアクション通知 -
channels.telegram.reactionLevel(デフォルト:minimal) - WhatsApp のリアクションレベル -
channels.whatsapp.reactionLevel(デフォルト:minimal) - Signal のリアクション -
channels.signal.reactionLevel(デフォルト:minimal)
関連項目
Was this useful?