feat(channels): add signal-cli channel adapter
This commit is contained in:
+17
-1
@@ -1,6 +1,6 @@
|
||||
import type { Config } from '../config/index.js';
|
||||
import type { HookEngine } from '../hooks/index.js';
|
||||
import { ChannelRegistry, TelegramAdapter, WebChatAdapter, DiscordAdapter, SlackAdapter, WhatsAppAdapter, MatrixAdapter, PairingManager } from '../channels/index.js';
|
||||
import { ChannelRegistry, TelegramAdapter, WebChatAdapter, DiscordAdapter, SlackAdapter, WhatsAppAdapter, MatrixAdapter, SignalAdapter, PairingManager } from '../channels/index.js';
|
||||
import { CronScheduler, WebhookHandler, GmailWatcher } from '../automation/index.js';
|
||||
import type { GatewayServer } from '../gateway/index.js';
|
||||
|
||||
@@ -85,6 +85,22 @@ export function registerChannels(deps: ChannelsDeps): ChannelsResult {
|
||||
channelRegistry.register(matrixAdapter);
|
||||
}
|
||||
|
||||
// Register Signal adapter (if configured)
|
||||
if (config.signal) {
|
||||
const signalAdapter = new SignalAdapter({
|
||||
account: config.signal.account,
|
||||
signalCliPath: config.signal.signal_cli_path,
|
||||
allowedNumbers: config.signal.allowed_numbers.length > 0 ? config.signal.allowed_numbers : undefined,
|
||||
allowedGroupIds: config.signal.allowed_group_ids.length > 0 ? config.signal.allowed_group_ids : undefined,
|
||||
requireMention: config.signal.require_mention,
|
||||
mentionName: config.signal.mention_name,
|
||||
pollIntervalMs: config.signal.poll_interval_ms,
|
||||
sendTimeoutMs: config.signal.send_timeout_ms,
|
||||
pairingManager,
|
||||
});
|
||||
channelRegistry.register(signalAdapter);
|
||||
}
|
||||
|
||||
// Register WebChat adapter (wraps the gateway)
|
||||
const webChatAdapter = new WebChatAdapter({ gateway });
|
||||
channelRegistry.register(webChatAdapter);
|
||||
|
||||
Reference in New Issue
Block a user