关于 bitrix24-im
面向 Bitrix24 本地部署门户服务端即时通信开发的参考 Skill,涵盖消息、聊天、通知和机器人,并说明用户校验与后台任务的实现约束。
主要功能
- 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
| 任务 | 阅读 |
|---|---|
| 发送消息、系统消息、附件/键盘、创建聊天、成员、即时通讯事件 | 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