Add Metamigo webhooks
This commit is contained in:
parent
87c2c2f8b7
commit
242f3cf6b8
15 changed files with 81 additions and 76 deletions
|
|
@ -43,9 +43,36 @@ interface Database {
|
|||
|
||||
WhatsAppBot: {
|
||||
id: GeneratedAlways<string>;
|
||||
userId: string;
|
||||
phone: string;
|
||||
password: string;
|
||||
name: string;
|
||||
phoneNumber: string;
|
||||
createdBy: string;
|
||||
createdAt: Date;
|
||||
updatedAt: Date;
|
||||
};
|
||||
|
||||
FacebookBot: {
|
||||
id: GeneratedAlways<string>;
|
||||
name: string;
|
||||
createdBy: string;
|
||||
createdAt: Date;
|
||||
updatedAt: Date;
|
||||
};
|
||||
|
||||
VoiceBot: {
|
||||
id: GeneratedAlways<string>;
|
||||
name: string;
|
||||
createdBy: string;
|
||||
createdAt: Date;
|
||||
updatedAt: Date;
|
||||
};
|
||||
|
||||
SignalBot: {
|
||||
id: GeneratedAlways<string>;
|
||||
name: string;
|
||||
phoneNumber: string;
|
||||
createdBy: string;
|
||||
createdAt: Date;
|
||||
updatedAt: Date;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -67,6 +67,27 @@ const deleteBot = async (req: NextRequest) => {
|
|||
return NextResponse.json({ response: "ok" });
|
||||
};
|
||||
|
||||
const handleWebhook = async (req: NextRequest) => {
|
||||
console.log({ req });
|
||||
|
||||
const { searchParams } = req.nextUrl;
|
||||
const token = searchParams.get("hub.verify_token");
|
||||
|
||||
if (token !== process.env.FB_VERIFY_TOKEN) {
|
||||
// return NextResponse.error("Invalid token", { status: 403 });
|
||||
}
|
||||
|
||||
if (searchParams.get("hub.mode") === "subscribe") {
|
||||
const challenge = searchParams.get("hub.challenge");
|
||||
console.log(token);
|
||||
console.log(challenge);
|
||||
|
||||
return new Response(challenge, { status: 200 }) as NextResponse;
|
||||
}
|
||||
|
||||
return NextResponse.json({ response: "ok" });
|
||||
};
|
||||
|
||||
export const Facebook: Service = {
|
||||
getAllBots,
|
||||
getOneBot,
|
||||
|
|
@ -79,4 +100,5 @@ export const Facebook: Service = {
|
|||
refreshBot,
|
||||
createBot,
|
||||
deleteBot,
|
||||
handleWebhook,
|
||||
};
|
||||
|
|
|
|||
|
|
@ -45,3 +45,6 @@ export const createBot = async (req: NextRequest): Promise<NextResponse> =>
|
|||
|
||||
export const deleteBot = async (req: NextRequest): Promise<NextResponse> =>
|
||||
getService(req)?.deleteBot(req);
|
||||
|
||||
export const handleWebhook = async (req: NextRequest): Promise<NextResponse> =>
|
||||
getService(req)?.handleWebhook(req);
|
||||
|
|
|
|||
|
|
@ -12,4 +12,5 @@ export interface Service {
|
|||
refreshBot: (req: NextRequest) => Promise<NextResponse>;
|
||||
createBot: (req: NextRequest) => Promise<NextResponse>;
|
||||
deleteBot: (req: NextRequest) => Promise<NextResponse>;
|
||||
handleWebhook: (req: NextRequest) => Promise<NextResponse>;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue