MCPcopy Create free account
hub / github.com/Linen-dev/linen.dev / fetchAndPersist

Function fetchAndPersist

apps/web/services/slack/sync/saveAllThreads.ts:197–222  ·  view source on GitHub ↗
(
  fetchReplies: Function,
  thread: threads,
  channel: channels,
  token: string,
  usersInDb: UserMap[],
  logger: Logger
)

Source from the content-addressed store, hash-verified

195}
196
197async function fetchAndPersist(
198 fetchReplies: Function,
199 thread: threads,
200 channel: channels,
201 token: string,
202 usersInDb: UserMap[],
203 logger: Logger
204) {
205 const replies = await fetchReplies(
206 thread.externalThreadId,
207 channel!.externalChannelId,
208 token
209 );
210 const replyMessages: ConversationHistoryMessage[] =
211 replies?.body?.messages?.filter(filterMessages).map(parseMessage) || [];
212
213 if (replyMessages && replyMessages.length) {
214 await saveMessagesSynchronous(
215 replyMessages,
216 thread.channelId,
217 usersInDb,
218 token,
219 logger
220 );
221 }
222}

Callers 1

saveAllThreadsFunction · 0.85

Calls 3

fetchRepliesFunction · 0.85
saveMessagesSynchronousFunction · 0.85
mapMethod · 0.80

Tested by

no test coverage detected