import { db } from "bridge-common"; interface SendFacebookMessageTaskOptions { token: string; message: any; } const sendFacebookMessageTask = async ( options: SendFacebookMessageTaskOptions, ): Promise => { const { token, message } = options; const { pageId, pageAccessToken } = await db .selectFrom("FacebookBot") .selectAll() .where("token", "=", token) .executeTakeFirstOrThrow(); const endpoint = `https://graph.facebook.com/v19.0/${pageId}/messages`; const outgoingMessage = { recipient: { id: message.recipient }, message: { text: `"${message.text}", right back at you!` }, messaging_type: "RESPONSE", access_token: pageAccessToken, }; await fetch(endpoint, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(outgoingMessage), }); }; export default sendFacebookMessageTask;