इस प्रोजेक्ट के बारे में

SMS Gateway for Android एक Android एप्लिकेशन है जो स्मार्टफ़ोन को SMS गेटवे में बदल देता है, जिससे एप्लिकेशन और सेवाएँ API या CLI टूल के ज़रिए प्रोग्रामेटिक रूप से SMS संदेश भेज और प्राप्त कर सकती हैं। यह Apache-2.0 लाइसेंस के अंतर्गत वितरित किया जाता है और Kotlin, Ktor, Room तथा Firebase से बनाया गया है। मुख्य क्षमताएँ - API के ज़रिए SMS भेजें और प्राप्त करें; किसी पंजीकरण की आवश्यकता नहीं है, और लोकल मोड में किसी खाते की आवश्यकता ही नहीं है। - Android 5.0 और उसके बाद के संस्करणों का समर्थन करता है। - स्वचालित विभाजन के साथ मल्टीपार्ट संदेश, साथ ही संदेश स्थिति ट्रैकिंग। - SMS, Data SMS और MMS के लिए इनकमिंग संदेश व्यूअर, टैब और आँकड़ों के साथ। - webhooks के ज़रिए रीयल-टाइम इनकमिंग SMS और MMS सूचनाएँ, जिसमें पहले प्राप्त संदेशों को पढ़ना भी शामिल है। - MMS समर्थन: बॉडी और अटैचमेंट के साथ डाउनलोड सूचनाएँ, और छवियों, ऑडियो, वीडियो या फ़ाइलों के साथ MMS भेजना, वैकल्पिक विषय और टेक्स्ट बॉडी के साथ। - एक साथ कई संदेश आने पर बैच webhook इवेंट। - लंबित संदेश रद्द करें, संदेशों को स्थिति और प्रकार के अनुसार फ़िल्टर करें, और प्रति अवधि भेजने की दर सीमा लागू करें। - बाइनरी पेलोड (IoT कमांड, एन्क्रिप्टेड संदेश) के लिए Data SMS समर्थन। - कार्य-घंटे शेड्यूलिंग जो कॉन्फ़िगर की गई विंडो के बाहर कतार को रोक देती है। - Webhook कतार निदान स्क्रीन जो लंबित डिलीवरी और पुनःप्रयास दिखाती है। सुरक्षा और गोपनीयता - संदेश सामग्री और प्राप्तकर्ता फ़ोन नंबरों का एंड-टू-एंड एन्क्रिप्शन, इससे पहले कि वे API तक पहुँचें, डिवाइस पर डिक्रिप्ट किया जाता है। - प्राइवेट सर्वर समर्थन ताकि बैकएंड आपके अपने इंफ्रास्ट्रक्चर में चल सके। उन्नत सुविधाएँ - मल्टीपल SIM कार्ड समर्थन और मल्टीपल डिवाइस समर्थन: Cloud या Private सर्वर के साथ एक ही खाते से जुड़े डिवाइस उनके बीच वितरित संदेश प्राप्त करते हैं। एकीकरण - sms:received, sms:batch:received, sms:sent, sms:delivered, sms:failed, sms:cancelled, sms:data-received, mms:received, mms:downloaded, app:started और system:ping जैसे इवेंट के लिए webhooks। - webhooks सीधे डिवाइस से भेजे जाते हैं, इसलिए डिवाइस को आउटगोइंग इंटरनेट कनेक्शन की आवश्यकता होती है। संचालन के तरीके - Local Server: ऐप डिवाइस पर एक HTTP सर्वर चलाता है, जो लोकल नेटवर्क पर पहुँच योग्य होता है, बेसिक प्रमाणीकरण क्रेडेंशियल और /docs पर इंटरैक्टिव Swagger दस्तावेज़ों के साथ। टेक्स्ट और MMS संदेश भेजने के लिए उदाहरण curl और CLI कमांड दिए गए हैं। - Cloud Server: डायनामिक या साझा IP पते वाले डिवाइसों के लिए api.sms-gate.app से जुड़ता है; प्राप्त संदेश केंद्रीकृत पहुँच के लिए अपलोड किए जाते हैं। इसके बजाय एक प्राइवेट सर्वर भी तैनात किया जा सकता है। इंस्टॉलेशन - पहले से बने APK GitHub Releases पेज से उपलब्ध हैं, एक सुरक्षित रिलीज़ बिल्ड और एक असुरक्षित डेवलपमेंट बिल्ड (cleartext ट्रैफ़िक की अनुमति, सार्वजनिक वातावरण के लिए नहीं) में। - आवश्यक अनुमति: SEND_SMS। वैकल्पिक अनुमतियाँ: READ_PHONE_STATE (SIM चयन), READ_SMS (पिछले संदेश पढ़ना), RECEIVE_SMS, RECEIVE_MMS और RECEIVE_WAP_PUSH (इनकमिंग SMS/MMS के लिए webhooks)। इच्छित उपयोग के मामलों में SMS-आधारित टू-फैक्टर प्रमाणीकरण, ट्रांज़ैक्शनल संदेश, अनुस्मारक, सूचनाएँ और उपयोगकर्ता प्रतिक्रिया शामिल हैं। README में कहा गया है कि मोबाइल ऑपरेटर प्रतिबंधों की संभावना के कारण बैच भेजने की सिफ़ारिश नहीं की जाती है।