mcpField
B
bitrix24-im

bitrix24-im

github.com/bxmaximum开发4780 次安装2 周前更新
代码仓库

关于 bitrix24-im

面向 Bitrix24 本地部署门户服务端即时通信开发的参考 Skill,涵盖消息、聊天、通知和机器人,并说明用户校验与后台任务的实现约束。

主要功能

  1. 01发送消息与管理聊天
  2. 02通知类型、标签与删除
  3. 03聊天机器人、斜杠命令与开放线路
  4. 04用户身份与发送权限检查
  5. 05发送后的后台处理

适用场景

  1. 01实现聊天消息与成员变更
  2. 02创建可去重和删除的通知
  3. 03构建基于模块的聊天机器人与命令

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bxmaximum/bitrix-framework-skills --skill bitrix24-im

安装后在 Claude Code 中输入/bitrix24-im确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

rules/
bots.md
messages-chats.md
notifications.md
pitfalls.md

详细介绍

Bitrix24 即时通讯(服务端)

范围:Bitrix24 本地部署 · 已验证版本:im 26.900.0、imbot 26.400.0、main 26.800.0

任务阅读
发送消息、系统消息、附件/键盘、创建聊天、成员、即时通讯事件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、上下文用户)。Agent 和 CLI 中没有 $USER。
  • Bitrix\Im\V2\Chat::sendMessage() 不会检查作者的权限:请先调用 canDo(Action::Send),或使用 CIMChat::AddMessage();除非 SYSTEM/SKIP_USER_CHECK 为 Y,否则它会进行检查。
  • 发送后的工作(推送、计数器、OnAfterMessagesAdd、机器人)会在响应返回后作为后台任务运行。在 CLI 脚本中调用 $result->getPromise()?->wait();CIM* 包装器默认会等待。
  • 通知:仅使用 CIMNotify::Add()。在 im 26.900 中,NotifyChat::sendMessage() 是空实现。
  • 为每条通知设置 NOTIFY_TAG:它可去重(同一标签会替换该用户较早的通知),并支持删除通知。
  • 与自有实体绑定的自定义聊天:在自有命名空间中使用 ENTITY_TYPE + addUniqueChat();绝不要写入 b_im_* 表。

评论

支持 Markdown