Skip to content

tidak dapat merespon lebih dari 1 nomor whatsapp #8

@MohammadWawan

Description

@MohammadWawan

const { Controller, Response, Router } = require("pepesan");
const f = require("../utils/Formatter");

let responseTimestamps = {};

module.exports = class BotController extends Controller {
// Fungsi untuk mengecek apakah sudah lewat 24 jam sejak respons terakhir untuk nomor WhatsApp tertentu
async canSendResponse(whatsappNumber) {
const currentTimeStamp = Date.now();
if (
!responseTimestamps[whatsappNumber] ||
currentTimeStamp - responseTimestamps[whatsappNumber] >=
24 * 60 * 60 * 1000
) {
responseTimestamps[whatsappNumber] = currentTimeStamp;
return true; // Sudah lebih dari 24 jam, bisa mengirimkan respon
}
return false; // Belum 24 jam, jangan kirimkan respons
}

async introduction(request) {
const canSend = await this.canSendResponse(request.whatsappNumber);
if (!canSend) {
return; // Tidak mengirimkan respons jika belum 24 jam
}
await this.reply(Response.image.fromURL("IMG_1894 (1).webp"));
return Response.menu.fromArrayOfString(
[f("menu.pendaftaran"), f("menu.jadwaldokter"), f("menu.chat")],
f("intro"),
f("template.menu")
);
}

async pendaftaran(request) {
await this.reply(
"text"
);
await delay(1500);
await this.reply(
"text"
);

await delay(600000);
await this.reply(
  "Petugas kami akan membalas pesan anda, mohon kesediaannya untuk menunggu. Terimakasih"
);

}

async jadwaldokter(request) {
await this.reply(
"jadwal dokter"
);
}

async chat(request) {
await this.reply(
"Petugas kami akan membalas pesan anda, mohon kesediannya untuk menunggu. Terima kasih"
);
}
};

function delay(ms) {
return new Promise((resolve) => setTimeout(resolve, ms));
}

Kode controller mengakibatkan chatbot tidak dapat merespon lebih dari 1 nomor whatsapp. Berikan solusi akan issue ini

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions