agent-nuvira 1.94.0 → 1.96.0
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.
- package/dist/gateway/registry.d.ts +14 -0
- package/dist/gateway/registry.d.ts.map +1 -1
- package/dist/gateway/registry.js +32 -0
- package/dist/gateway/registry.js.map +1 -1
- package/dist/web-dashboard/server.d.ts +6 -0
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +213 -0
- package/dist/web-dashboard/server.js.map +1 -1
- package/package.json +1 -1
|
@@ -99,6 +99,15 @@ export interface GatewayRegistryOptions {
|
|
|
99
99
|
* a chat-answer test never touches a model or the CLI router.
|
|
100
100
|
*/
|
|
101
101
|
chatEngine?: import('../web-dashboard/chat-console.js').ChatEngine;
|
|
102
|
+
/**
|
|
103
|
+
* Callback invoked when the gateway starts/stops processing a chat message.
|
|
104
|
+
* The dashboard server uses this to broadcast typing indicators via SSE.
|
|
105
|
+
*/
|
|
106
|
+
onTyping?: (event: {
|
|
107
|
+
platform: string;
|
|
108
|
+
channelId: string;
|
|
109
|
+
typing: boolean;
|
|
110
|
+
}) => void;
|
|
102
111
|
}
|
|
103
112
|
export declare class GatewayRegistry {
|
|
104
113
|
readonly directory: ChannelDirectory;
|
|
@@ -129,6 +138,7 @@ export declare class GatewayRegistry {
|
|
|
129
138
|
/** Per-contact conversation history for gateway chat (WhatsApp/Telegram/etc.).
|
|
130
139
|
* Disk-backed via GatewayChatStore so history survives gateway restarts. */
|
|
131
140
|
private chatStore;
|
|
141
|
+
private onTypingCallback;
|
|
132
142
|
constructor(options?: GatewayRegistryOptions, configManager?: ConfigManager);
|
|
133
143
|
/**
|
|
134
144
|
* Build the effective policy map: explicit options < env < config (most
|
|
@@ -197,6 +207,10 @@ export declare class GatewayRegistry {
|
|
|
197
207
|
* so a gateway that only ever runs pipelines never pays for the CLI router.
|
|
198
208
|
* Never throws — a model failure falls back to the help line in handleInbound.
|
|
199
209
|
*/
|
|
210
|
+
/** Set the typing callback after construction (e.g. when dashboard attaches). */
|
|
211
|
+
setOnTyping(callback: GatewayRegistryOptions['onTyping']): void;
|
|
212
|
+
/** Write/delete typing.json for cross-process communication with dashboard. */
|
|
213
|
+
private writeTypingFile;
|
|
200
214
|
private runInboundChat;
|
|
201
215
|
/** Allow-list check: no allowIds configured = everyone; else exact platform:channelId. */
|
|
202
216
|
private isAllowed;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EACL,gBAAgB,EAIhB,KAAK,UAAU,EAEf,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClF,OAAO,EAAE,cAAc,EAAsB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,WAAW,EAA2B,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/gateway/registry.js
CHANGED
|
@@ -25,6 +25,9 @@ import { DeliveryLedger } from './delivery.js';
|
|
|
25
25
|
import { InboxLedger } from './inbox.js';
|
|
26
26
|
import { GatewayChatStore } from './chat-store.js';
|
|
27
27
|
import { logger } from '../utils/logger.js';
|
|
28
|
+
import { existsSync, mkdirSync, writeFileSync, unlinkSync } from 'node:fs';
|
|
29
|
+
import { join } from 'node:path';
|
|
30
|
+
import { resolveBuffConfigDir } from '../config/paths.js';
|
|
28
31
|
/** How often the running gateway drains due delivery entries (ms). */
|
|
29
32
|
const DELIVERY_DRAIN_INTERVAL_MS = 30_000;
|
|
30
33
|
// ─── Response cleanup ──────────────────────────────────────────────────────
|
|
@@ -249,6 +252,7 @@ export class GatewayRegistry {
|
|
|
249
252
|
/** Per-contact conversation history for gateway chat (WhatsApp/Telegram/etc.).
|
|
250
253
|
* Disk-backed via GatewayChatStore so history survives gateway restarts. */
|
|
251
254
|
chatStore;
|
|
255
|
+
onTypingCallback = null;
|
|
252
256
|
constructor(options = {}, configManager) {
|
|
253
257
|
const allowFromEnv = (envBuff('GATEWAY_ALLOW_IDS') ?? '')
|
|
254
258
|
.split(',')
|
|
@@ -265,6 +269,7 @@ export class GatewayRegistry {
|
|
|
265
269
|
this.configManager = configManager ?? new ConfigManager();
|
|
266
270
|
this.chatEngine = options.chatEngine ?? null;
|
|
267
271
|
this.chatStore = new GatewayChatStore(options.deliveryConfigDir);
|
|
272
|
+
this.onTypingCallback = options.onTyping ?? null;
|
|
268
273
|
this.explicitPolicies = options.policies ?? {};
|
|
269
274
|
this.policies = this.readPolicies();
|
|
270
275
|
}
|
|
@@ -572,8 +577,31 @@ export class GatewayRegistry {
|
|
|
572
577
|
* so a gateway that only ever runs pipelines never pays for the CLI router.
|
|
573
578
|
* Never throws — a model failure falls back to the help line in handleInbound.
|
|
574
579
|
*/
|
|
580
|
+
/** Set the typing callback after construction (e.g. when dashboard attaches). */
|
|
581
|
+
setOnTyping(callback) {
|
|
582
|
+
this.onTypingCallback = callback ?? null;
|
|
583
|
+
}
|
|
584
|
+
/** Write/delete typing.json for cross-process communication with dashboard. */
|
|
585
|
+
writeTypingFile(event) {
|
|
586
|
+
try {
|
|
587
|
+
const dir = join(resolveBuffConfigDir(), 'gateway');
|
|
588
|
+
if (!existsSync(dir))
|
|
589
|
+
mkdirSync(dir, { recursive: true });
|
|
590
|
+
const file = join(dir, 'typing.json');
|
|
591
|
+
if (event.typing) {
|
|
592
|
+
writeFileSync(file, JSON.stringify({ platform: event.platform, channelId: event.channelId, ts: Date.now() }), 'utf-8');
|
|
593
|
+
}
|
|
594
|
+
else if (existsSync(file)) {
|
|
595
|
+
unlinkSync(file);
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
catch { /* best-effort */ }
|
|
599
|
+
}
|
|
575
600
|
async runInboundChat(msg) {
|
|
576
601
|
try {
|
|
602
|
+
// Broadcast typing indicator start.
|
|
603
|
+
this.onTypingCallback?.({ platform: msg.platform, channelId: msg.channelId, typing: true });
|
|
604
|
+
this.writeTypingFile({ platform: msg.platform, channelId: msg.channelId, typing: true });
|
|
577
605
|
const engine = this.chatEngine ??
|
|
578
606
|
// Instantiate + cast: ChatCommand's answerOnce is a prototype method,
|
|
579
607
|
// and the console's ChatEngine is the loose slice it satisfies (same
|
|
@@ -673,10 +701,14 @@ export class GatewayRegistry {
|
|
|
673
701
|
// have context. Persisted to disk via GatewayChatStore so it survives
|
|
674
702
|
// gateway restarts. The store handles trimming to max pairs.
|
|
675
703
|
this.chatStore.append(historyKey, msg.text, content);
|
|
704
|
+
this.onTypingCallback?.({ platform: msg.platform, channelId: msg.channelId, typing: false });
|
|
705
|
+
this.writeTypingFile({ platform: msg.platform, channelId: msg.channelId, typing: false });
|
|
676
706
|
return { content, generationFailed: answer.generationFailed };
|
|
677
707
|
}
|
|
678
708
|
catch (err) {
|
|
679
709
|
logger.error(`gateway: inbound chat failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
710
|
+
this.onTypingCallback?.({ platform: msg.platform, channelId: msg.channelId, typing: false });
|
|
711
|
+
this.writeTypingFile({ platform: msg.platform, channelId: msg.channelId, typing: false });
|
|
680
712
|
return { content: '', generationFailed: true };
|
|
681
713
|
}
|
|
682
714
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/gateway/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,12 @@ import { ChatConsole } from './chat-console.js';
|
|
|
16
16
|
export declare function isQuotaWatcherArmed(): boolean;
|
|
17
17
|
/** Test hook: override the always-on quota watcher flag (config re-read on next create). */
|
|
18
18
|
export declare function setAlwaysWatchQuota(value: boolean): void;
|
|
19
|
+
/** Broadcast a typing indicator event to all SSE clients. */
|
|
20
|
+
export declare function broadcastTyping(event: {
|
|
21
|
+
platform: string;
|
|
22
|
+
channelId: string;
|
|
23
|
+
typing: boolean;
|
|
24
|
+
}): void;
|
|
19
25
|
/**
|
|
20
26
|
* A real-time DAG state that the orchestrator can push updates to.
|
|
21
27
|
* Reset before each new execution. Served via /api/dag and SSE events.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web-dashboard/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,YAAY,EAAmC,MAAM,WAAW,CAAC;AA6B1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AA2JlE,4DAA4D;AAC5D,wBAAgB,mBAAmB,IAAI,OAAO,CAE7C;AAED,4FAA4F;AAC5F,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAOxD;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web-dashboard/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -252,6 +252,17 @@ function broadcastConversationUpdate() {
|
|
|
252
252
|
}
|
|
253
253
|
catch { /* best-effort — a failed broadcast must never break the dashboard */ }
|
|
254
254
|
}
|
|
255
|
+
let typingWatchTimer = null;
|
|
256
|
+
function broadcastTypingFromFile() {
|
|
257
|
+
try {
|
|
258
|
+
const file = join(getGatewayDir(), 'typing.json');
|
|
259
|
+
if (existsSync(file)) {
|
|
260
|
+
const data = JSON.parse(readFileSync(file, 'utf-8'));
|
|
261
|
+
broadcastTyping({ platform: data.platform, channelId: data.channelId, typing: true });
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
catch { /* best-effort */ }
|
|
265
|
+
}
|
|
255
266
|
function armConvWatcher() {
|
|
256
267
|
if (convWatcher)
|
|
257
268
|
return;
|
|
@@ -261,6 +272,17 @@ function armConvWatcher() {
|
|
|
261
272
|
mkdirSync(dir, { recursive: true });
|
|
262
273
|
convWatcher = watch(dir, (_eventType, filename) => {
|
|
263
274
|
const name = basename(String(filename || ''));
|
|
275
|
+
// Handle typing.json changes (typing indicator).
|
|
276
|
+
if (name === 'typing.json') {
|
|
277
|
+
if (typingWatchTimer)
|
|
278
|
+
clearTimeout(typingWatchTimer);
|
|
279
|
+
typingWatchTimer = setTimeout(() => {
|
|
280
|
+
typingWatchTimer = null;
|
|
281
|
+
broadcastTypingFromFile();
|
|
282
|
+
}, 100);
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
285
|
+
// Handle chat-history.json changes (conversation updates).
|
|
264
286
|
if (name && name !== 'chat-history.json')
|
|
265
287
|
return;
|
|
266
288
|
if (convWatchTimer)
|
|
@@ -288,6 +310,115 @@ function disarmConvWatcher() {
|
|
|
288
310
|
convWatcher = null;
|
|
289
311
|
}
|
|
290
312
|
}
|
|
313
|
+
/** Broadcast a typing indicator event to all SSE clients. */
|
|
314
|
+
export function broadcastTyping(event) {
|
|
315
|
+
const payload = `event: typing\ndata: ${JSON.stringify({ ...event, serverTime: Date.now() })}\n\n`;
|
|
316
|
+
for (const client of sseClients) {
|
|
317
|
+
try {
|
|
318
|
+
client.res.write(payload);
|
|
319
|
+
}
|
|
320
|
+
catch { /* client disconnected */ }
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
// ─── ZIP Generation (no external dependencies) ─────────────────────────────
|
|
324
|
+
/** CRC-32 lookup table (precomputed). */
|
|
325
|
+
const CRC_TABLE = new Uint32Array(256);
|
|
326
|
+
for (let i = 0; i < 256; i++) {
|
|
327
|
+
let c = i;
|
|
328
|
+
for (let j = 0; j < 8; j++) {
|
|
329
|
+
c = (c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1);
|
|
330
|
+
}
|
|
331
|
+
CRC_TABLE[i] = c;
|
|
332
|
+
}
|
|
333
|
+
function crc32(buf) {
|
|
334
|
+
let crc = 0xFFFFFFFF;
|
|
335
|
+
for (let i = 0; i < buf.length; i++) {
|
|
336
|
+
crc = CRC_TABLE[(crc ^ buf[i]) & 0xFF] ^ (crc >>> 8);
|
|
337
|
+
}
|
|
338
|
+
return (crc ^ 0xFFFFFFFF) >>> 0;
|
|
339
|
+
}
|
|
340
|
+
/** DOS date/time format for ZIP headers. */
|
|
341
|
+
function dosDateTime(date) {
|
|
342
|
+
const time = ((date.getHours() & 0x1F) << 11) | ((date.getMinutes() & 0x3F) << 5) | ((date.getSeconds() >> 1) & 0x1F);
|
|
343
|
+
const d = ((date.getFullYear() - 1980) & 0x7F) << 9 | ((date.getMonth() + 1) & 0xF) << 5 | (date.getDate() & 0x1F);
|
|
344
|
+
return { time, date: d };
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Generate a ZIP file from an array of { name, content } entries.
|
|
348
|
+
* Supports text files only (no compression — stored method).
|
|
349
|
+
* Returns a Buffer suitable for HTTP response.
|
|
350
|
+
*/
|
|
351
|
+
function generateZip(files) {
|
|
352
|
+
const now = new Date();
|
|
353
|
+
const { time, date } = dosDateTime(now);
|
|
354
|
+
const entries = [];
|
|
355
|
+
const parts = [];
|
|
356
|
+
let offset = 0;
|
|
357
|
+
// Local file headers + file data.
|
|
358
|
+
for (const file of files) {
|
|
359
|
+
const nameBytes = new TextEncoder().encode(file.name);
|
|
360
|
+
const dataBytes = new TextEncoder().encode(file.content);
|
|
361
|
+
const crc = crc32(dataBytes);
|
|
362
|
+
// Local file header (30 + nameLen).
|
|
363
|
+
const header = new ArrayBuffer(30 + nameBytes.length);
|
|
364
|
+
const hv = new DataView(header);
|
|
365
|
+
hv.setUint32(0, 0x04034b50, true); // signature
|
|
366
|
+
hv.setUint16(4, 20, true); // version needed
|
|
367
|
+
hv.setUint16(6, 0, true); // flags
|
|
368
|
+
hv.setUint16(8, 0, true); // compression method (stored)
|
|
369
|
+
hv.setUint16(10, time, true); // mod time
|
|
370
|
+
hv.setUint16(12, date, true); // mod date
|
|
371
|
+
hv.setUint32(14, crc, true); // crc-32
|
|
372
|
+
hv.setUint32(18, dataBytes.length, true); // compressed size
|
|
373
|
+
hv.setUint32(22, dataBytes.length, true); // uncompressed size
|
|
374
|
+
hv.setUint16(26, nameBytes.length, true); // name length
|
|
375
|
+
hv.setUint16(28, 0, true); // extra field length
|
|
376
|
+
new Uint8Array(header).set(nameBytes, 30);
|
|
377
|
+
entries.push({ name: nameBytes, data: dataBytes, crc, offset });
|
|
378
|
+
parts.push(new Uint8Array(header), dataBytes);
|
|
379
|
+
offset += header.byteLength + dataBytes.length;
|
|
380
|
+
}
|
|
381
|
+
// Central directory.
|
|
382
|
+
const centralStart = offset;
|
|
383
|
+
for (const entry of entries) {
|
|
384
|
+
const ch = new ArrayBuffer(46 + entry.name.length);
|
|
385
|
+
const cv = new DataView(ch);
|
|
386
|
+
cv.setUint32(0, 0x02014b50, true); // signature
|
|
387
|
+
cv.setUint16(4, 20, true); // version made by
|
|
388
|
+
cv.setUint16(6, 20, true); // version needed
|
|
389
|
+
cv.setUint16(8, 0, true); // flags
|
|
390
|
+
cv.setUint16(10, 0, true); // compression (stored)
|
|
391
|
+
cv.setUint16(12, time, true); // mod time
|
|
392
|
+
cv.setUint16(14, date, true); // mod date
|
|
393
|
+
cv.setUint32(16, entry.crc, true); // crc-32
|
|
394
|
+
cv.setUint32(20, entry.data.length, true); // compressed size
|
|
395
|
+
cv.setUint32(24, entry.data.length, true); // uncompressed size
|
|
396
|
+
cv.setUint16(28, entry.name.length, true); // name length
|
|
397
|
+
cv.setUint16(30, 0, true); // extra field length
|
|
398
|
+
cv.setUint16(32, 0, true); // file comment length
|
|
399
|
+
cv.setUint16(34, 0, true); // disk number start
|
|
400
|
+
cv.setUint16(36, 0, true); // internal file attributes
|
|
401
|
+
cv.setUint32(38, 0, true); // external file attributes
|
|
402
|
+
cv.setUint32(42, entry.offset, true); // local header offset
|
|
403
|
+
new Uint8Array(ch).set(entry.name, 46);
|
|
404
|
+
parts.push(new Uint8Array(ch));
|
|
405
|
+
offset += ch.byteLength;
|
|
406
|
+
}
|
|
407
|
+
// End of central directory.
|
|
408
|
+
const centralSize = offset - centralStart;
|
|
409
|
+
const eocd = new ArrayBuffer(22);
|
|
410
|
+
const ev = new DataView(eocd);
|
|
411
|
+
ev.setUint32(0, 0x06054b50, true); // signature
|
|
412
|
+
ev.setUint16(4, 0, true); // disk number
|
|
413
|
+
ev.setUint16(6, 0, true); // central dir disk
|
|
414
|
+
ev.setUint16(8, entries.length, true); // entries on this disk
|
|
415
|
+
ev.setUint16(10, entries.length, true); // total entries
|
|
416
|
+
ev.setUint32(12, centralSize, true); // central dir size
|
|
417
|
+
ev.setUint32(16, centralStart, true); // central dir offset
|
|
418
|
+
ev.setUint16(20, 0, true); // comment length
|
|
419
|
+
parts.push(new Uint8Array(eocd));
|
|
420
|
+
return Buffer.concat(parts.map((p) => Buffer.from(p.buffer, p.byteOffset, p.byteLength)));
|
|
421
|
+
}
|
|
291
422
|
let activePipeline = null; // goal/description of current pipeline
|
|
292
423
|
let activeNodes = [];
|
|
293
424
|
let activeEdges = [];
|
|
@@ -2743,6 +2874,88 @@ function handleRequest(req, res) {
|
|
|
2743
2874
|
// dashboard passes the FULL map it read; the running gateway re-reads
|
|
2744
2875
|
// config per inbound, so changes apply without a restart). Named
|
|
2745
2876
|
// WhatsApp contacts are also synced into the bridge contacts file
|
|
2877
|
+
// POST /api/admin/gateway/conversations/export — bulk export as ZIP.
|
|
2878
|
+
// Rides on gateway.manage (admin + operator).
|
|
2879
|
+
if (pathname === '/api/admin/gateway/conversations/export' && req.method === 'POST') {
|
|
2880
|
+
void (async () => {
|
|
2881
|
+
const session = adminSessions.validate(bearerToken(req));
|
|
2882
|
+
if (!session) {
|
|
2883
|
+
writeJson(res, 401, { ok: false, error: 'Not authenticated — log in first.' });
|
|
2884
|
+
return;
|
|
2885
|
+
}
|
|
2886
|
+
if (!roleCan(session.role, 'gateway.manage')) {
|
|
2887
|
+
writeJson(res, 403, { ok: false, error: `Access denied — role '${session.role}' cannot export conversations.` });
|
|
2888
|
+
return;
|
|
2889
|
+
}
|
|
2890
|
+
const body = await readJsonBody(req);
|
|
2891
|
+
const keys = body?.keys;
|
|
2892
|
+
if (!Array.isArray(keys) || keys.length === 0) {
|
|
2893
|
+
writeJson(res, 400, { ok: false, error: 'Missing or invalid "keys" array.' });
|
|
2894
|
+
return;
|
|
2895
|
+
}
|
|
2896
|
+
try {
|
|
2897
|
+
const { GatewayChatStore, CHAT_HISTORY_TTL_MS } = await import('../gateway/chat-store.js');
|
|
2898
|
+
const store = new GatewayChatStore();
|
|
2899
|
+
const allConvs = store.getAllConversations();
|
|
2900
|
+
// Resolve contact names.
|
|
2901
|
+
let contactLookup = {};
|
|
2902
|
+
try {
|
|
2903
|
+
const { readContactsFile } = await import('../gateway/whatsapp/contacts.js');
|
|
2904
|
+
const { whatsappSessionDir } = await import('../gateway/whatsapp/session.js');
|
|
2905
|
+
const contacts = readContactsFile(whatsappSessionDir());
|
|
2906
|
+
for (const [name, digits] of Object.entries(contacts)) {
|
|
2907
|
+
if (name && digits)
|
|
2908
|
+
contactLookup[digits] = name;
|
|
2909
|
+
}
|
|
2910
|
+
}
|
|
2911
|
+
catch { /* best-effort */ }
|
|
2912
|
+
const keySet = new Set(keys);
|
|
2913
|
+
const convs = allConvs.filter((c) => keySet.has(c.key));
|
|
2914
|
+
if (convs.length === 0) {
|
|
2915
|
+
writeJson(res, 404, { ok: false, error: 'No matching conversations found.' });
|
|
2916
|
+
return;
|
|
2917
|
+
}
|
|
2918
|
+
// Build ZIP entries (manual ZIP64-compatible for text files).
|
|
2919
|
+
const files = [];
|
|
2920
|
+
const now = new Date();
|
|
2921
|
+
const dateStr = `${now.getFullYear()}-${String(now.getMonth() + 1).padStart(2, '0')}-${String(now.getDate()).padStart(2, '0')}`;
|
|
2922
|
+
for (const conv of convs) {
|
|
2923
|
+
const [platform, ...rest] = conv.key.split(':');
|
|
2924
|
+
const channelId = rest.join(':');
|
|
2925
|
+
const cleanId = channelId.replace(/[^\d]/g, '');
|
|
2926
|
+
const contactName = contactLookup[cleanId] || contactLookup[channelId] || channelId;
|
|
2927
|
+
const lines = [
|
|
2928
|
+
`Conversation with ${contactName} (${platform || 'unknown'})`,
|
|
2929
|
+
`Exported: ${now.toLocaleString()}`,
|
|
2930
|
+
`Messages: ${conv.messages.length}`,
|
|
2931
|
+
'─'.repeat(50),
|
|
2932
|
+
'',
|
|
2933
|
+
];
|
|
2934
|
+
for (const m of conv.messages) {
|
|
2935
|
+
const role = m.role === 'user' ? contactName : 'Agent';
|
|
2936
|
+
const ts = new Date(m.ts).toLocaleString();
|
|
2937
|
+
lines.push(`[${ts}] ${role}:`);
|
|
2938
|
+
lines.push(m.content);
|
|
2939
|
+
lines.push('');
|
|
2940
|
+
}
|
|
2941
|
+
const safeName = `${platform || 'unknown'}-${contactName.replace(/[^\w]/g, '_')}-${channelId.replace(/[^\w]/g, '_')}.txt`;
|
|
2942
|
+
files.push({ name: safeName, content: lines.join('\n') });
|
|
2943
|
+
}
|
|
2944
|
+
// Generate ZIP manually (no external deps).
|
|
2945
|
+
const zipBuf = generateZip(files);
|
|
2946
|
+
res.writeHead(200, {
|
|
2947
|
+
'Content-Type': 'application/zip',
|
|
2948
|
+
'Content-Disposition': `attachment; filename="conversations-${dateStr}.zip"`,
|
|
2949
|
+
'Content-Length': zipBuf.length,
|
|
2950
|
+
});
|
|
2951
|
+
res.end(zipBuf);
|
|
2952
|
+
}
|
|
2953
|
+
catch (err) {
|
|
2954
|
+
writeJson(res, 500, { ok: false, error: `Export failed: ${err instanceof Error ? err.message : String(err)}` });
|
|
2955
|
+
}
|
|
2956
|
+
})();
|
|
2957
|
+
return;
|
|
2958
|
+
}
|
|
2746
2959
|
// GET /api/admin/gateway/conversations — paginated conversation list.
|
|
2747
2960
|
// Rides on gateway.manage (admin + operator).
|
|
2748
2961
|
if (pathname === '/api/admin/gateway/conversations' && req.method === 'GET') {
|