@ihazz/bitrix24 1.1.8 → 1.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +11 -10
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # @ihazz/bitrix24
2
2
 
3
3
  OpenClaw channel plugin for Bitrix24 Messenger based on Bot Platform 2.0 (`imbot.v2.*` / `im.v2.*`).
4
+ This is the official, Bitrix24-certified OpenClaw plugin for Bitrix24 Messenger.
4
5
 
5
6
  ## Current Status
6
7
 
@@ -65,7 +66,7 @@ Minimal configuration:
65
66
  "groupPolicy": "webhookUser",
66
67
  "requireMention": true,
67
68
  "historyLimit": 100,
68
- "showTyping": true,
69
+ "showTyping": true,
69
70
  "capabilities": [
70
71
  "inlineButtons",
71
72
  "reactions"
@@ -173,10 +174,10 @@ The direct-message scenario is configured independently through `dmPolicy`. Grou
173
174
  | `4. Add the bot to a group chat where it responds to all of my messages in that chat.` | The bot stores all delivered group messages in RAM history, but answers only the webhook owner and does not require mention. | `groupPolicy: "webhookUser"`, `requireMention: false` |
174
175
  | `5. Add the bot to a group chat where it responds only to my mentions in that chat.` | The bot stores all delivered group messages in RAM history, but answers only the webhook owner and only on mention. | `groupPolicy: "webhookUser"`, `requireMention: true` |
175
176
  | `6. Add the bot to a group chat where scenarios 2 through 5 apply only to users from my allowlist.` | The bot stores all delivered group messages in RAM history, but group replies are limited to the merged allowlist. | `groupPolicy: "allowlist"`, `allowFrom: ["77", "42"]`, plus `requireMention: false` or `true` |
176
- | `7. The bot can summarize or search messages from any direct or group chat it participates in.` | This is baseline behavior. All delivered messages are recorded in RAM history and can later be used for in-chat context or explicit cross-chat lookup. | No extra flag. Usually `historyLimit: 100`. Use explicit Bitrix24 chat mention like `[CHAT=520]Green Chat 15[/CHAT]` for cross-chat lookup. |
177
+ | `7. The bot can summarize recent messages from the current chat and from previously seen group chats it participates in.` | This is baseline behavior. All delivered messages are recorded in RAM history for in-chat context. Previously seen group chats can also be injected from RAM by explicit Bitrix24 chat mention. | No extra flag. Usually `historyLimit: 100`. Use explicit Bitrix24 chat mention like `[CHAT=520]Green Chat 15[/CHAT]` for group cross-chat lookup. |
177
178
  | `8. In a group chat, the bot can watch a specific user and answer only on selected topics.` | The bot records all delivered messages and may answer watched users without mention when a watch rule matches. | `groups.<chat>.watch: [{ "userId": "77", "topics": ["secret", "contract"] }]` |
178
- | `9. In a group chat, the bot can watch a specific user or all users and notify the bot owner in DM with a forwarded copy of the matched message.` | The bot records all delivered messages. When a watch rule matches, it does not answer in the group and instead sends the webhook owner a DM notice with a context URL, plus a native forwarded message copy. | `groups.<chat>.watch: [{ "userId": "*", "topics": ["incident"], "mode": "notifyOwnerDm" }]` |
179
- | `10. The bot can watch all accessible group chats for a phrase and notify the bot owner in DM with a forwarded copy of the matched message.` | The bot records all delivered group messages. A wildcard group watch applies across every allowed group chat, even when a specific chat also has its own overrides. | `groups["*"].watch: [{ "userId": "*", "topics": ["incident"], "mode": "notifyOwnerDm" }]` |
179
+ | `9. In a group chat, the bot can watch a specific user or all users and notify the bot owner in DM with a copy of the matched message.` | The bot records all delivered messages. When a watch rule matches, it does not answer in the group and instead sends the webhook owner a DM notice with a context URL, then tries a native forwarded copy and falls back to a quoted copy if forwarding is unavailable. | `groups.<chat>.watch: [{ "userId": "*", "topics": ["incident"], "mode": "notifyOwnerDm" }]` |
180
+ | `10. The bot can watch all accessible group chats for a phrase and notify the bot owner in DM with a copy of the matched message.` | The bot records all delivered group messages. A wildcard group watch applies across every allowed group chat, even when a specific chat also has its own overrides. Delivery uses the same native-forward-first flow with quoted fallback when forwarding is unavailable. | `groups["*"].watch: [{ "userId": "*", "topics": ["incident"], "mode": "notifyOwnerDm" }]` |
180
181
 
181
182
  Default profile:
182
183
 
@@ -323,7 +324,7 @@ For a matching `watch` rule:
323
324
  - the sender is matched by Bitrix24 user ID; use `"*"` to match any sender
324
325
  - `topics` are matched by normalized text inclusion / token prefix matching
325
326
  - `mode: "reply"` answers in the group even if the normal group policy would otherwise require a mention
326
- - `mode: "notifyOwnerDm"` sends the webhook owner a DM notice with a user mention and a deep link back to the original chat context, plus a native forwarded copy of the matched message instead of replying in the group
327
+ - `mode: "notifyOwnerDm"` sends the webhook owner a DM notice with a deep link back to the original chat context, then tries a native forwarded copy of the matched message and falls back to a quoted copy if forwarding is unavailable
327
328
  - `groups["*"].watch` applies the same rule set to every allowed group chat
328
329
  - if a specific group also defines `watch`, those chat-specific rules are checked first and the wildcard rules remain available as a fallback
329
330
 
@@ -364,7 +365,7 @@ If `mode` is omitted, `reply` is used.
364
365
  - Forwarded-message hydration from Bitrix24 message context, including merge with buffered neighboring context when related events arrive close together
365
366
  - Cross-chat lookup from RAM memory by explicit Bitrix24 chat mention like `[CHAT=520]Green Chat 15[/CHAT]`
366
367
  - Topic watches for specific group users
367
- - Owner-DM watch notifications with native forwarded messages
368
+ - Owner-DM watch notifications with native forward and quoted fallback
368
369
  - Agent-mode ingestion of user-visible messages through combined polling
369
370
  - Agent-mode owner-DM watch notifications through `agentWatch`
370
371
 
@@ -377,13 +378,13 @@ Arbitrary local server paths are rejected on purpose for safety.
377
378
  ## Not Supported
378
379
 
379
380
  - Persistent SQLite or search-based history layer
380
- - Persistent reply or forward search across chats beyond what Bitrix24 `Chat.Message.get` / `getContext` can return
381
- - “Reply to me in DM because this started in a group” behavior
381
+ - Persistent cross-chat reply or forward retrieval beyond current RAM history and what Bitrix24 `Chat.Message.get` / `getContext` can return
382
+ - Generic reply to me in DM because this started in a group” behavior
382
383
  - Sending replies as the user through `im.v2.Chat.Message.*`
383
- - Agent-triggered user auto-replies or one-shot autoresponder flows
384
+ - Agent-mode user-event auto-replies or one-shot autoresponder flows
384
385
  - Production-ready multi-account operation in one process
385
386
 
386
- There is already account-config scaffolding in the plugin, but the current production recommendation is still one active Bitrix24 portal per instance.
387
+ There is already account-config scaffolding in the plugin, but the runtime still enforces a singleton Bitrix24 gateway per process, so the current production recommendation remains one active Bitrix24 portal per instance.
387
388
 
388
389
  ## Verification
389
390
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ihazz/bitrix24",
3
- "version": "1.1.8",
3
+ "version": "1.1.9",
4
4
  "description": "Bitrix24 Messenger channel for OpenClaw",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",