MCPcopy Create free account
hub / github.com/TeleBoxOrg/TeleBox_Plugins / collectMessages

Function collectMessages

biko/biko.ts:420–458  ·  view source on GitHub ↗
(
  client: any,
  sourceChat: ResolvedChat,
  sourceUser: ResolvedSourceUser,
  requestedCount: number,
)

Source from the content-addressed store, hash-verified

418): Promise<DigestRecord[]> {
419 const initialRecords = await collectMessagesOnce(
420 client,
421 sourceChat,
422 sourceUser,
423 requestedCount,
424 );
425
426 if (!sourceUser.manualMode || initialRecords.length >= requestedCount) {
427 return initialRecords;
428 }
429
430 try {
431 const retriedSourceUser = await resolveSourceUser(client, sourceUser.raw);
432 if (!retriedSourceUser.manualMode) {
433 return await collectMessagesOnce(
434 client,
435 sourceChat,
436 retriedSourceUser,
437 requestedCount,
438 );
439 }
440 } catch {
441 // ignore and continue to deep manual scan fallback
442 }
443
444 return await collectMessagesOnce(
445 client,
446 sourceChat,
447 sourceUser,
448 requestedCount,
449 MAX_SCAN_LIMIT,
450 );
451}
452
453function formatDigestLine(record: DigestRecord): string {
454 const prefix = `• <code>${htmlEscape(record.time)}</code> `;
455 if (record.link) {
456 return `${prefix}<a href="${htmlEscape(record.link)}">${htmlEscape(
457 record.text,
458 )}</a>`;
459 }
460 return `${prefix}${htmlEscape(record.text)}`;
461}

Callers 1

BikoPluginClass · 0.70

Calls 2

collectMessagesOnceFunction · 0.85
resolveSourceUserFunction · 0.85

Tested by

no test coverage detected