bitrix24-im について
オンプレミス版 Bitrix24 のサーバーサイドメッセンジャー開発向けリファレンススキルです。メッセージ、チャット、通知、ボットに加え、ユーザー確認とバックグラウンド処理の制約を扱います。
主な機能
- 01メッセージ送信とチャット管理
- 02通知の種類、タグ、削除
- 03チャットボット、スラッシュコマンド、オープンライン
- 04ユーザー識別と送信権限の確認
- 05送信後のバックグラウンド処理
活用シーン
- 01チャットメッセージとメンバー変更の実装
- 02重複を抑え削除可能な通知の作成
- 03モジュールベースのチャットボットとコマンド構築
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ bxmaximum/ bitrix-framework-skills --skill bitrix24-imインストール後、Claude Code で/bitrix24-imを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
rules/bots.mdmessages-chats.mdnotifications.mdpitfalls.md詳細
Bitrix24 メッセンジャー(サーバー側)
対象範囲:Bitrix24 オンプレミス · 検証済み:im 26.900.0、imbot 26.400.0、main 26.800.0
| タスク | 参照 |
|---|---|
| メッセージ、システムメッセージの送信、添付/キーボード、チャットの作成、メンバー、im イベント | rules/messages-chats.md |
| 通知:タイプ、タグ、削除、確認ボタン、ユーザー設定のスキーマ | rules/notifications.md |
モジュールからのチャットボットとスラッシュコマンド、REST imbot.v2、オープンライン | rules/bots.md |
| im 26.700–26.900 の破壊的変更、REST ↔ PHP のマッピング | rules/pitfalls.md |
不変条件
- メッセンジャーのクラス(
Bitrix\Im\V2\Chat、CIMChat、CIMNotifyなど)を使用する前に、Loader::includeModule('im')を実行します。 - ユーザー ID(
FROM_USER_ID、AUTHOR_ID、TO_USER_ID、コンテキストユーザー)は明示的に渡します。エージェントと CLI には$USERがありません。 Bitrix\Im\V2\Chat::sendMessage()は作成者の権限を確認しません。先にcanDo(Action::Send)を呼び出すか、SYSTEM/SKIP_USER_CHECKがYでない限り権限を確認するCIMChat::AddMessage()を使用します。- 送信後の処理(プッシュ、カウンター、
OnAfterMessagesAdd、ボット)は、レスポンス後にバックグラウンドジョブとして実行されます。CLI スクリプトでは$result->getPromise()?->wait()を呼び出します。CIM*ラッパーはデフォルトで待機します。 - 通知には
CIMNotify::Add()のみを使用します。im 26.900 ではNotifyChat::sendMessage()はスタブです。 - すべての通知に
NOTIFY_TAGを設定します。これにより重複が排除され(同じタグの通知はユーザーに対して古い通知を置き換えます)、削除も可能になります。 - 独自のエンティティに紐づくカスタムチャットでは、独自の名前空間の
ENTITY_TYPEとaddUniqueChat()を使用します。b_im_*テーブルには書き込みません。
コメント
Markdown 対応