Nabda OTPNabda OTP

Language

Giriş

appointmentSolution.hero.title

appointmentSolution.hero.desc

67%appointmentSolution.stats.reduction
98%appointmentSolution.stats.openRate
24happointmentSolution.stats.automated
$10/moappointmentSolution.stats.unlimited
appointmentSolution.why.label

appointmentSolution.why.title

appointmentSolution.why.desc

📅

appointmentSolution.features.automated.title

appointmentSolution.features.automated.desc

appointmentSolution.features.customTiming.title

appointmentSolution.features.customTiming.desc

appointmentSolution.features.confirmation.title

appointmentSolution.features.confirmation.desc

🔄

appointmentSolution.features.rescheduling.title

appointmentSolution.features.rescheduling.desc

📍

appointmentSolution.features.locationSharing.title

appointmentSolution.features.locationSharing.desc

🌐

appointmentSolution.features.multilingual.title

appointmentSolution.features.multilingual.desc

appointmentSolution.how.label

appointmentSolution.how.title

1

appointmentSolution.how.step1.title

appointmentSolution.how.step1.desc

2

appointmentSolution.how.step2.title

appointmentSolution.how.step2.desc

3

appointmentSolution.how.step3.title

appointmentSolution.how.step3.desc

4

appointmentSolution.how.step4.title

appointmentSolution.how.step4.desc

appointmentSolution.code.label

appointmentSolution.code.title

appointmentSolution.code.desc

appointment-reminder.js
// Schedule automated appointment reminder
async function scheduleAppointmentReminder(appointment) {
  // Calculate reminder time (24 hours before)
  const reminderTime = new Date(appointment.dateTime);
  reminderTime.setHours(reminderTime.getHours() - 24);

  const message = `📅 Reminder: You have an appointment tomorrow!

📍 Location: ${appointment.clinic}
🕐 Time: ${appointment.time}
👨‍⚕️ Doctor: Dr. ${appointment.doctor}

Reply CONFIRM to confirm or RESCHEDULE to change.

– ${CLINIC_NAME}`;

  // Schedule via Nabda OTP
  const response = await fetch("https://api.nabdaotp.com/api/v1/messages/send", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "Authorization": `Bearer ${instanceToken}`
    },
    body: JSON.stringify({
      phone: appointment.patientPhone,  // e.g. "+9647701234567"
      message: message
    })
  });

  if (response.ok) {
    await logReminder(appointment.id, "sent", reminderTime);
  }

  return response.ok;
}

// Trigger 24h before appointment
scheduleReminder(appointment, reminderTime);
appointmentSolution.usecases.label

appointmentSolution.usecases.title

🏥appointmentSolution.usecases.item1
🦷appointmentSolution.usecases.item2
💇appointmentSolution.usecases.item3
💅appointmentSolution.usecases.item4
🧘appointmentSolution.usecases.item5
🚗appointmentSolution.usecases.item6
🏋️appointmentSolution.usecases.item7
🐾appointmentSolution.usecases.item8

appointmentSolution.cta.title

appointmentSolution.cta.desc

Merhaba, size nasıl yardımcı olabiliriz?