🤖HermesBlog
Hermes Messaging Platforms · جزء 88/9/2026

SMS — Command AI by Text

SMS — Command AI by Text — easy-to-understand guide based on official docs

messaging-sms

SMS — التحكم بالذكاء الاصطناعي عبر الرسائل النصية

تتذكر الأيام قبل الهواتف الذكية، عندما كانت الرسائل النصية أسرع طريقة للوصول إلى شخص ما؟ حسنًا، هذه القناة الكلاسيكية ما زالت حيّة وتركل — والآن أصبحت طريقة متكاملة للتواصل مع مساعدك الذكي.

أصبح Hermes الآن يتصل بـ SMS عبر Twilio، لذا يمكن لأي شخص يملك رقم هاتف أن يرسل رسالة إلى بوتك ويحصل على ردود مدعومة بالذكاء الاصطناعي. لا تثبيت تطبيقات، لا رموز QR، ولا منحنى تعلّم. مجرد رسائل نصية عادية كما في الماضي.

ما الجديد في هذا التحديث

حصلت بوابة SMS على ترقية جادة. إليك ما تغيّر:

  • SMS_WEBHOOK_URL أصبح مطلوبًا الآن — يتحقق Hermes من توقيعات Twilio للويب هوك لطرد المحتالين. ترفض البوابة البدء بدونه.
  • متغيرات بيئة جديدةSMS_WEBHOOK_HOST و SMS_WEBHOOK_PORT و SMS_INSECURE_NO_SIGNATURE و SMS_ALLOW_ALL_USERS تمنحك تحكمًا أكبر.
  • إعدادات أمان أفضل افتراضيًا — ترفض البوابة جميع المستخدمين افتراضيًا. يجب عليك إضافة أرقام الهواتف إلى القائمة البيضاء صراحةً.
  • تقسيم أذكى للرسائل — يتم الآن تقسيم الردود الطويلة عند حدود طبيعية (أسطر جديدة، ثم مسافات) بدلاً من قصّها في منتصف الكلمة.

البدء

أولاً، ستحتاج إلى حساب Twilio ورقم هاتف يدعم SMS. توفّر Twilio نسخة تجريبية مجانية، لذا يمكنك اختبار كل شيء دون إنفاق فلس واحد.

ستحتاج أيضًا إلى خادم يمكن الوصول إليه عبر الإنترنت. يرسل Twilio ويب هوكس إلى خادمك عندما يرسل شخص ما رسالة إلى رقمك. إذا كنت تشغّل Hermes محليًا، يمكن لأدوات مثل cloudflared أو ngrok كشف localhost الخاص بك للإنترنت.

ثبّت إضافة SMS باستخدام:

cd ~/.hermes/hermes-agent && uv pip install -e ".[sms]"

الخطوة 1: احصل على بيانات اعتماد Twilio

انتقل إلى وحدة تحكم Twilio، وانسخ Account SID و Auth Token من لوحة التحكم، ولاحظ رقم هاتفك بصيغة E.164 (مثل +15551234567).

الخطوة 2: إعداد Hermes

أسهل طريقة هي عبر المعالج التفاعلي:

hermes gateway setup

اختر SMS (Twilio) واتبع التعليمات.

تفضّل الإعداد اليدوي؟ أضف هذه الأسطر إلى ~/.hermes/.env:

TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
TWILIO_AUTH_TOKEN=your_auth_token_here
TWILIO_PHONE_NUMBER=+15551234567

# الأمان: قيّد الوصول لأرقام محددة (موصى به)
SMS_ALLOWED_USERS=+15559876543,+15551112222

# اختياري: حدد قناة رئيسية لتسليم مهام cron
SMS_HOME_CHANNEL=+15559876543

الخطوة 3: إعداد Twilio Webhook

في وحدة تحكم Twilio، انتقل إلى Phone Numbers → Manage → Active Numbers، وانقر على رقمك، وتحت Messaging → A MESSAGE COMES IN، عيّن الويب هوك إلى:

https://your-server:8080/webhooks/twilio

عيّن طريقة HTTP إلى POST.

مهم: عيّن SMS_WEBHOOK_URL إلى نفس الرابط الذي ضبطته في Twilio تمامًا. هذا مطلوب للتحقق من التوقيع:

SMS_WEBHOOK_URL=https://your-server:8080/webhooks/twilio

منفذ الويب هوك الافتراضي هو 8080، لكن يمكنك تغييره عبر SMS_WEBHOOK_PORT.

الخطوة 4: تشغيل البوابة

hermes gateway

يجب أن ترى شيئًا مثل:

[sms] Twilio webhook server listening on 127.0.0.1:8080, from: +1555***4567

الآن أرسل رسالة إلى رقم Twilio الخاص بك — سيرد Hermes عبر SMS.

كيف يختلف سلوك SMS

SMS وسيط نصي بسيط، لذا يتكيف Hermes:

  • لا Markdown — تتم إزالته تلقائيًا لأن SMS يعرضه كأحرف حرفية
  • حد 1600 حرف — يتم تقسيم الردود الأطول عبر رسائل متعددة عند حدود طبيعية
  • منع الصدى — يتم تجاهل الرسائل القادمة من رقم Twilio الخاص بك لمنع الحلقات
  • الخصوصية — يتم إخفاء أرقام الهواتف في السجلات

الأمان مهم

يتحقق Hermes من أن الويب هوكات الواردة تأتي فعلًا من Twilio عبر فحص ترويسة X-Twilio-Signature (HMAC-SHA1). هذا يمنع المهاجمين من حقن رسائل مزيفة.

ترفض البوابة جميع المستخدمين افتراضيًا. يجب عليك إعداد قائمة بيضاء:

SMS_ALLOWED_USERS=+15559876543,+15551112222

أو، إذا كنت متهورًا (رجاءً لا تفعل):

SMS_ALLOW_ALL_USERS=true

للتطوير المحلي دون رابط عام، يمكنك تعطيل التحقق من التوقيع:

SMS_INSECURE_NO_SIGNATURE=true

لكن تذكّر — هذا للتطوير المحلي فقط، أبدًا للإنتاج.

تحذير أخير

لا يحتوي SMS على تشفير مدمج. لا تستخدمه للعمليات الحساسة. لأي شيء سري، التزم بـ Signal أو Telegram.

استكشاف الأخطاء وإصلاحها

الرسائل لا تصل؟ تحقق من:

  1. أن رابط الويب هوك صحيح ويمكن الوصول إليه علنًا
  2. أن TWILIO_ACCOUNT_SID و TWILIO_AUTH_TOKEN صحيحان
  3. وحدة تحكم Twilio → Monitor → Logs → Messaging لأخطاء التسليم
  4. أن رقم هاتفك موجود في SMS_ALLOWED_USERS

هذا كل شيء! أرسل رسالة إلى بوتك، واحصل على إجابات. بهذه البساطة.


📖 التوثيق الرسمي

この記事は Hermes Agent のالتوثيق الرسميに基づいています:التوثيق الرسمي › user-guide/messaging/sms