المواعيد الفائتة تكلف الشركات الخدمية آلاف الدولارات سنويًا. يمكن لتذكير بسيط عبر الرسائل النصية القصيرة قبل يوم واحد أن يقلل من حالات عدم الحضور بنسبة 30-50%. لكن إعداد Twilio لهذا الغرض يبدو مبالغًا فيه — والتكاليف تتراكم.

إليك كيفية بناء نظام تذكير بالمواعيد فائق البساطة باستخدام هاتفك الخاص كبوابة للرسائل النصية القصيرة.

لماذا لا نستخدم Twilio ببساطة؟

لعيادة صغيرة أو صالون يرسل 200 تذكير شهريًا، تكاليف Twilio هي:

  • الرسائل: 200 × 0.0079 دولار = 1.58 دولار
  • رسوم إضافية للناقل: 200 × 0.003 دولار = 0.60 دولار
  • رقم الهاتف: 1.15 دولارًا شهريًا
  • تسجيل 10DLC: 2 دولار شهريًا + 15 دولارًا لمرة واحدة
  • وقت الإعداد: 1-2 ساعة (SDK، التحقق، التسجيل)

المجموع: حوالي 5.33 دولارًا شهريًا + عناء الإعداد. وإذا تم رفض التسجيل (وهو أمر شائع للشركات الصغيرة)، ستكون عالقًا.

مع MySMSGate: 200 × 0.03 دولار = 6.00 دولارات شهريًا. لا تسجيل، لا عناء إعداد، يعمل في 5 دقائق. يرى مرضاك رقم هاتفك الفعلي — وليس رقم Twilio عشوائيًا.

الخيار الأول: Google Sheets + Apps Script (بدون برمجة)

النهج الأبسط — مثالي إذا كنت تتتبع المواعيد بالفعل في جدول بيانات.

إعداد جدول البيانات الخاص بك

أنشئ جدول Google Sheet بالأعمدة التالية:

أ: اسم المريضب: الهاتفج: التاريخد: الوقتهـ: تم التذكير
Sarah Johnson+120255512342026-03-103:00 PM
Mike Chen+120255556782026-03-104:30 PM

إضافة السكريبت

اذهب إلى Extensions → Apps Script، الصق هذا الكود:

function sendReminders() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var data = sheet.getDataRange().getValues();
  var tomorrow = new Date();
  tomorrow.setDate(tomorrow.getDate() + 1);
  var tomorrowStr = Utilities.formatDate(tomorrow, "GMT", "yyyy-MM-dd");

  for (var i = 1; i < data.length; i++) {
    var name = data[i][0];
    var phone = data[i][1];
    var date = Utilities.formatDate(new Date(data[i][2]), "GMT", "yyyy-MM-dd");
    var time = data[i][3];
    var reminded = data[i][4];

    if (date === tomorrowStr && !reminded) {
      var message = "Hi " + name + ", reminder: your appointment is tomorrow at " + time + ". Reply YES to confirm or call to reschedule.";

      UrlFetchApp.fetch("https://mysmsgate.net/api/v1/send", {
        method: "post",
        headers: {
          "Authorization": "Bearer YOUR_API_KEY",
          "Content-Type": "application/json"
        },
        payload: JSON.stringify({to: phone, message: message})
      });

      sheet.getRange(i + 1, 5).setValue("Yes");
    }
  }
}

جدولته

في Apps Script، اذهب إلى Triggers → Add Trigger:

  • الدالة: sendReminders
  • الحدث: يعتمد على الوقت ← مؤقت يومي ← 9 صباحًا – 10 صباحًا

تم. كل صباح، يتحقق السكريبت من مواعيد الغد ويرسل التذكيرات تلقائيًا.

الخيار الثاني: سكريبت Python (للمطورين)

إذا كان لديك نظام حجز مع قاعدة بيانات:

import requests
import sqlite3
from datetime import date, timedelta

API_KEY = "YOUR_API_KEY"
tomorrow = date.today() + timedelta(days=1)

db = sqlite3.connect("bookings.db")
appointments = db.execute(
    "SELECT name, phone, time FROM appointments WHERE date = ? AND reminded = 0",
    (tomorrow.isoformat(),)
).fetchall()

for name, phone, time in appointments:
    message = f"Hi {name}, reminder: your appointment is tomorrow at {time}. Reply YES to confirm."

    response = requests.post(
        "https://mysmsgate.net/api/v1/send",
        headers={"Authorization": f"Bearer {API_KEY}"},
        json={"to": phone, "message": message}
    )

    if response.json().get("success"):
        db.execute("UPDATE appointments SET reminded = 1 WHERE phone = ? AND date = ?",
                   (phone, tomorrow.isoformat()))

db.commit()

شغّله باستخدام cron: 0 9 * * * python3 /path/to/reminders.py

الخيار الثالث: Zapier / Make (بدون برمجة)

إذا كنت تستخدم Calendly، Google Calendar، أو أي أداة حجز تدعم تكامل Zapier:

  1. المشغل: "حدث جديد في Google Calendar" (أو Calendly, Acuity, إلخ.)
  2. الإجراء: تأخير حتى قبل يوم واحد من الحدث
  3. الإجراء: Webhooks by Zapier ← POST إلى https://mysmsgate.net/api/v1/send

عيّن الرؤوس (headers): Authorization: Bearer YOUR_API_KEY

عيّن النص الأساسي (body): {"to": "{{phone}}", "message": "Hi {{name}}, reminder: your appointment is tomorrow at {{time}}."}

نصائح لتذكيرات فعالة

  • أرسل قبل 24 ساعة — يمنح المرضى وقتًا لإعادة الجدولة
  • اذكر الوقت — "غدًا الساعة 3 مساءً" أفضل من "غدًا"
  • اطلب التأكيد — "الرد بـ نعم للتأكيد" يزيد من التفاعل
  • اجعلها قصيرة — مقطع رسالة نصية واحد (160 حرفًا) مثالي
  • استخدم اسم عملك — يتعرف المرضى على رقمك لأنه رقمك الفعلي

ابدأ مجانًا — إعداد التذكيرات في أقل من 10 دقائق.