كامل SMPP 3.4
تنفيذ البروتوكول الكامل - جميع أنواع وحدات الشرطة المدنية، والسجلات الطوعية، ودورة القيادة/الاستجابة الكاملة.
TLS 1.3 transport, configurable throughput windows, and full operator DLRex-through - on the same direct routes powering our REST API. مضيف واحد، ثلاثة أساليب ثنائية، 50+بلدان.
← TLS 1.3 handshake complete (AES-256-GCM-SHA384) → bind_transceiver system_id = "your_system_id" password = "••••••••" interface_version = 0x34 ← bind_transceiver_resp command_status = 0x00000000 ESME_ROK system_id = "ESMSAFRICA" → submit_sm source_addr = "eSMSCo" destination_addr = "+254712345678" data_coding = 0x00 GSM-7 registered_delivery = 0x01 request DLR short_message = "Your OTP is 482910. Valid 5 min." ← submit_sm_resp command_status = 0x00000000 ESME_ROK message_id = "8A2F91C4" ── 4.2 s later ───────────────────────────── ← deliver_sm DLR from operator SMSC short_message = "id:8A2F91C4 sub:001 dlvrd:001 submit date:2605030812 done date:2605030812 stat:DELIVRD err:000" → deliver_sm_resp command_status = 0x00000000 ESME_ROK → enquire_link keepalive every 30 s ← enquire_link_resp
Point your SMPP client at smpp.esmsafrica.io:2775. TLS 1.3 is enforced - connections without TLS are refused before the SMPP handshake.
أرسل وتلقي على صندوق واحد ويحمل اليدين على حد سواء.. ويسلمان الإختيار الصحيح لمعظم الاندماجات.
Submit messages only. Use when you want to isolate outbound sending from inbound DLR reception.
تلقّي رسائل مُحدّدة و رسائل مُدمّرة فقط. Pair with a TX bind for split-architecture deployments.
تنفيذ البروتوكول الكامل - جميع أنواع وحدات الشرطة المدنية، والسجلات الطوعية، ودورة القيادة/الاستجابة الكاملة.
جميع الاتصالات مشفرة TLS 1.3 تنفذ على مستوى النقل - وتُرفض النسخ القديمة على المصافحة.
نوافذ النوافذ قابلة للتشكيل لكل نظام ويمكن للجهات المتجمعة ذات الحجم الكبير أن تتفاوض بشأن القدرة المخصصة للانفجار.
دعم الاتحاد الكامل للرسائل المتعددة الأطراف. UCS-2 for Unicode (data coding=8). وتمر الحمولات الثنائية (البيانات - الترميز = 4) دون تغيير.
تصل إيصالات تسليم المشغلات حرفيا عن طريق البريد الإلكتروني: deliver sm. وتُحفظ الرموز والأوقات الخاطئة من الشركة الناقلة.
Two endpoints across separate regions with automatic failureover. الخسارة المُلزَمة تُعادُ ربطها؛ الإستفسار يُبقي الإتصالات الخاطفة على قيد الحياة.
Every bind lands on our routing infrastructure, passes through licensed carrier routes, and delivers to the handset. No grey routes, no SIM farms.
يَعُودُ DLR نفس الطريقِ: المشغل يَسلّمُ sm { } eSMS routing layer →
أي SMPP3.4 مكتبة مع أعمال دعم TLS. هذه الدمى تستخدم أكثر العملاء شعبية من المصدر المفتوح.
# pip install smpplib import ssl, smpplib.client, smpplib.gsm, smpplib.consts # TLS 1.3 context (required) ctx = ssl.create_default_context() client = smpplib.client.Client( 'smpp.esmsafrica.io', 2775, allow_unknown_opt_params=True, timeout=30, ) client.connect(ssl=ctx) client.bind_transceiver( system_id='YOUR_SYSTEM_ID', password='YOUR_PASSWORD', ) # Register DLR handler (deliver_sm callbacks) def dlr_received(pdu): msg = pdu.short_message if isinstance(msg, bytes): msg = msg.decode('latin-1') print(f"DLR: {msg}") client.set_message_received_handler(dlr_received) # Send a message (GSM-7, with DLR) parts, enc, msg_type = smpplib.gsm.make_parts('Your OTP is 482910') for part in parts: resp = client.send_message( source_addr_ton=smpplib.consts.SMPP_TON_ALNUM, source_addr_npi=smpplib.consts.SMPP_NPI_UNK, source_addr='eSMSCo', dest_addr_ton=smpplib.consts.SMPP_TON_INTL, dest_addr_npi=smpplib.consts.SMPP_NPI_ISDN, destination_addr='+254712345678', data_coding=enc, esm_class=msg_type, short_message=part, registered_delivery=1, ) print(f"Queued: {resp.message_id}") # Block and process inbound PDUs client.listen()
Node.js،إذهب و(جافا) مثالين في SMPP الدليل السريع }
نقدم وثائق التفويض و نتأكد من وجود اتصال في اختبار SMSC قبل أن تذهب مباشرة.