التسجيل والحساب
يعتمد تطبيق العملاء على هوية مسافر واحدة يمكن ربط أكثر من طريقة دخول موثقة بها. الدخول برقم الهاتف وOTP ودخول Google الأصلي متكاملة في التطبيق للمسافرين فقط؛ لا تظهر هذه الإمكانية لحسابات الشركة أو السائق أو الإدارة.
تسجيل الدخول
- أدخل رقم هاتفك
- اختر القناة المتاحة إن كانت الواجهة تسمح بذلك
- أدخل رمز التحقق
- أكمل الاسم أو البريد عند الحاجة
يستخدم التطبيق حقلاً دولياً موحداً يبدأ بسوريا +963. يبقى الرقم والرمز باتجاه
LTR حتى داخل العربية، وتُعرض الأرقام اللاتينية فقط. حقل الرمز الواحد يدعم اللصق
والملء التلقائي بدلاً من ستة حقول منفصلة.
الدخول عبر Google
التدفق المنفذ هو:
- المصادقة الأصلية في iOS أو Android، أو زر Google الرسمي في Flutter Web/PWA
- إرسال ID token فقط إلى API شام باص عبر TLS
- تحقق الخادم من توقيع Google والمصدر والجمهور والانتهاء والبريد الموثق
- ربط الهوية بسجل المسافر القانوني ثم إصدار جلسة Supabase عادية
- فتح الحساب فوراً إذا كان رقم موثق موجوداً
- طلب رقم الهاتف وOTP فقط عندما يكون مطلوباً للتذكرة أو رسائل الرحلة
- العودة إلى رابط البحث أو الحجز نفسه بعد النجاح
يستخدم Android وiOS google_sign_in الأصلي، بينما يستخدم Flutter Web/PWA الزر
الرسمي الذي ترسمه Google Identity Services مع nonce قصير العمر. لا يفتح أي عميل
صفحة ويب مكتبية مضمّنة. إلغاء منتقي الحساب لا يظهر كخطأ، وفشل أي مرحلة يمسح
الجلسة الجزئية. يحافظ الخادم على كلمة المرور وطريقة الهاتف الموجودتين ويمنع ربط
بريد يعود إلى موظف أو إنشاء حساب مسافر ثانٍ بصمت.
اكتملت بوابة الشفرة والبناء المحلي لـAndroid وiOS وFlutter Web. يبقى تفعيل الإنتاج مشروطاً
بإنشاء عملاء OAuth الحقيقيين، تسجيل حزمة sy.shambus.app وبصمات مفتاح توقيع
الإصدار وأصل https://app.shambus.com في Google Cloud، ثم اختبار حساب حقيقي
على جهاز Android وجهاز iOS وفي PWA الإنتاج. لا
تستخدم البنايات قيماً تجريبية أو client secret داخل التطبيق.
ما الذي يحدث بعد التحقق؟
- تُنشأ أو تُحدّث بيانات حسابك
- تُفتح جلسة نشطة داخل التطبيق
- تصبح قادراً على الوصول إلى الحجوزات، الدعم، والملف الشخصي
الملف الشخصي
قد يتيح التطبيق:
- عرض الاسم ورقم الهاتف
- تحديث بعض البيانات الشخصية
- مراجعة معلومات الاتصال
- الانتقال إلى الإعدادات
الإعدادات
قد تتضمن صفحة الإعدادات:
- تفضيلات التذكير
- تفعيل أو تعطيل إشعارات الرحلات مع حفظ التفضيل محلياً وربطه باشتراك push عند التفعيل
- تفعيل أو تعطيل تنبيهات العروض محلياً
- الوصول إلى الشروط أو الخصوصية
- إدارة الجلسة الحالية
إذا تعذر الدخول
- تأكد من صحة الرقم
- أعد طلب الرمز بعد انتهاء المهلة إن لزم
- إذا ظهرت مشكلة مستمرة، استخدم مسار الدعم داخل التطبيق أو الموقع