feat: enhance chunking mode documentation and configuration
- Added `chunkMode` option to the BlueBubbles account configuration, allowing users to choose between "length" and "newline" for message chunking. - Updated documentation to clarify the behavior of the `chunkMode` setting. - Adjusted account merging logic to incorporate the new `chunkMode` configuration.
This commit is contained in:
parent
4e4ff506da
commit
50cec30c76
@ -196,6 +196,7 @@ Provider options:
|
|||||||
- `channels.bluebubbles.sendReadReceipts`: Send read receipts (default: `true`).
|
- `channels.bluebubbles.sendReadReceipts`: Send read receipts (default: `true`).
|
||||||
- `channels.bluebubbles.blockStreaming`: Enable block streaming (default: `true`).
|
- `channels.bluebubbles.blockStreaming`: Enable block streaming (default: `true`).
|
||||||
- `channels.bluebubbles.textChunkLimit`: Outbound chunk size in chars (default: 4000).
|
- `channels.bluebubbles.textChunkLimit`: Outbound chunk size in chars (default: 4000).
|
||||||
|
- `channels.bluebubbles.chunkMode`: `newline` (default) splits on every newline and sends each line immediately during streaming; `length` splits only when exceeding `textChunkLimit`.
|
||||||
- `channels.bluebubbles.mediaMaxMb`: Inbound media cap in MB (default: 8).
|
- `channels.bluebubbles.mediaMaxMb`: Inbound media cap in MB (default: 8).
|
||||||
- `channels.bluebubbles.historyLimit`: Max group messages for context (0 disables).
|
- `channels.bluebubbles.historyLimit`: Max group messages for context (0 disables).
|
||||||
- `channels.bluebubbles.dmHistoryLimit`: DM history limit.
|
- `channels.bluebubbles.dmHistoryLimit`: DM history limit.
|
||||||
|
|||||||
@ -47,7 +47,8 @@ function mergeBlueBubblesAccountConfig(
|
|||||||
};
|
};
|
||||||
const { accounts: _ignored, ...rest } = base;
|
const { accounts: _ignored, ...rest } = base;
|
||||||
const account = resolveAccountConfig(cfg, accountId) ?? {};
|
const account = resolveAccountConfig(cfg, accountId) ?? {};
|
||||||
return { ...rest, ...account };
|
const chunkMode = account.chunkMode ?? rest.chunkMode ?? "newline";
|
||||||
|
return { ...rest, ...account, chunkMode };
|
||||||
}
|
}
|
||||||
|
|
||||||
export function resolveBlueBubblesAccount(params: {
|
export function resolveBlueBubblesAccount(params: {
|
||||||
|
|||||||
@ -38,7 +38,7 @@ export type BlueBubblesAccountConfig = {
|
|||||||
dms?: Record<string, unknown>;
|
dms?: Record<string, unknown>;
|
||||||
/** Outbound text chunk size (chars). Default: 4000. */
|
/** Outbound text chunk size (chars). Default: 4000. */
|
||||||
textChunkLimit?: number;
|
textChunkLimit?: number;
|
||||||
/** Chunking mode: "length" (default) splits by size, "newline" splits on every newline. */
|
/** Chunking mode: "newline" (default) splits on every newline; "length" splits by size. */
|
||||||
chunkMode?: "length" | "newline";
|
chunkMode?: "length" | "newline";
|
||||||
blockStreaming?: boolean;
|
blockStreaming?: boolean;
|
||||||
/** Merge streamed block replies before sending. */
|
/** Merge streamed block replies before sending. */
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user