Refactoring 3

This commit is contained in:
Darren Clarke 2024-04-30 13:13:49 +02:00
parent e4b78ceec2
commit d1fb9b4d06
20 changed files with 201 additions and 123 deletions

View file

@ -25,7 +25,7 @@ export class Facebook extends Service {
const message = await req.json();
const worker = await getWorkerUtils();
await worker.addJob("receive_facebook_message", message);
await worker.addJob("facebook/receive-facebook-message", { message });
return NextResponse.json({ response: "ok" });
}

View file

@ -48,12 +48,16 @@ export type ServiceConfig = {
};
export type ServiceParams = {
service: string;
token?: string;
params: {
service: string;
token?: string;
};
};
export class Service {
async getBot({ service, token }: ServiceParams): Promise<NextResponse> {
async getBot({
params: { service, token },
}: ServiceParams): Promise<NextResponse> {
const table = getServiceTable(service);
const row = await db
.selectFrom(table)
@ -66,11 +70,14 @@ export class Service {
async sendMessage(
req: NextRequest,
{ service, token }: ServiceParams,
{ params: { service, token } }: ServiceParams,
): Promise<NextResponse> {
const message = await req.json();
const worker = await getWorkerUtils();
await worker.addJob(`send_${service}_message`, { token, message });
await worker.addJob(`${service}/send-${service}-message`, {
token,
message,
});
return NextResponse.json({ response: "ok" });
}

View file

@ -3,7 +3,7 @@ import { Facebook } from "./facebook";
import { Signal } from "./signal";
import { Whatsapp } from "./whatsapp";
export const getService = ({ service }: ServiceParams): Service => {
export const getService = ({ params: { service } }: ServiceParams): Service => {
if (service === "facebook") {
return new Facebook();
} else if (service === "signal") {