Cordova VoIP Calls
Pushwoosh pushwoosh-cordova-plugin का उपयोग करके iOS और Android के लिए VoIP-शैली की कॉल सूचनाओं का समर्थन करता है। यह इनकमिंग कॉल UI और कॉल नियंत्रण ईवेंट सहित नेटिव VoIP कॉल कार्यक्षमता को सक्षम करता है।
शुरू करने से पहले, बेसिक इंटीग्रेशन गाइड में बताए अनुसार प्लगइन को अपने Pushwoosh Application Code के साथ इंटीग्रेट करें।
1. VoIP सक्षम के साथ Pushwoosh Cordova प्लगइन जोड़ें
Anchor link toVoIP फ़्लैग सक्षम के साथ प्लगइन इंस्टॉल करें:
cordova plugin add pushwoosh-cordova-plugin --variable PW_VOIP_IOS_ENABLED=true --variable PW_VOIP_ANDROID_ENABLED=trueयह iOS पर VoIP कार्यक्षमता का समर्थन करने के लिए प्लगइन को कॉन्फ़िगर करेगा।
2. PushwooshVoIP डिपेंडेंसी जांचें
Anchor link toप्लगइन PushwooshVoIP मॉड्यूल को स्वचालित रूप से लिंक करता है। cordova-ios 8 पर, यह PushwooshVoIP Swift पैकेज जोड़ता है और Podfile में कोई बदलाव नहीं करता। cordova-ios के पुराने संस्करणों पर, यह आपकी Podfile में यह लाइन जोड़ता है:
pod 'PushwooshXCFramework/PushwooshVoIP'यह मॉड्यूल PushKit-आधारित VoIP नोटिफिकेशन और सिस्टम-स्तरीय कॉल हैंडलिंग को सपोर्ट करने के लिए आवश्यक है।
3. Xcode में VoIP बैकग्राउंड मोड सक्षम करें
Anchor link toXcode में अपना प्रोजेक्ट खोलें और इन चरणों का पालन करें:
- Signing & Capabilities पर जाएं।
- Background Modes क्षमता जोड़ें।
- Voice over IP विकल्प चुनें।
यह आपके ऐप को बैकग्राउंड में रहते हुए इनकमिंग VoIP पुश प्राप्त करने की अनुमति देता है।
4. Android पर कॉल अनुमति का अनुरोध करें
Anchor link toAndroid पर, ऐप को कॉल प्राप्त करने के लिए उपयोगकर्ता की अनुमति चाहिए। requestCallPermission() से इसका अनुरोध करें। यदि उपयोगकर्ता अनुमति नहीं देता, तो ऐप आने वाली VoIP कॉल को अनदेखा कर देता है।
pushwoosh.requestCallPermission();5. कस्टम रिंगटोन सेट करें (वैकल्पिक)
Anchor link toप्लगइन VoIP को स्वचालित रूप से इनिशियलाइज़ करता है। आने वाली कॉल के लिए कस्टम रिंगटोन चलाने के लिए, ऐप बंडल से साउंड फ़ाइल का नाम पास करें:
pushwoosh.setRingtone("incoming.caf");6. उपलब्ध VoIP कॉलबैक और विधियाँ
Anchor link toवीडियो सपोर्ट और कॉलर ID फ़ॉर्मेट VoIP पुश पेलोड में हर कॉल के लिए सेट किए जाते हैं: video और, iOS पर, handleType (1 जेनेरिक के लिए, 2 फ़ोन नंबर के लिए, 3 ईमेल के लिए)।
Cordova प्लगइन निम्नलिखित VoIP-संबंधित विधियों और ईवेंट का समर्थन करता है:
answer– जब कोई उपयोगकर्ता इनकमिंग कॉल का जवाब देता है तो कॉल किया जाता हैendCall– जब कोई उपयोगकर्ता वर्तमान कॉल समाप्त करता है तो कॉल किया जाता हैhangup– जब कोई कॉल हैंग अप हो जाती है तो कॉल किया जाता हैreject– जब कोई इनकमिंग कॉल अस्वीकार कर दी जाती है तो कॉल किया जाता हैmuted– म्यूट स्थिति को टॉगल करें, केवल iOSheld– होल्ड स्थिति को टॉगल करें, केवल iOSvoipPushPayload– इनकमिंग VoIP कॉल के लिए पुश पेलोड लौटाता हैincomingCallSuccess– जब सिस्टम कॉल UI सफलतापूर्वक दिखाया जाता है तो कॉल किया जाता है, केवल iOSincomingCallFailure– जब सिस्टम कॉल UI दिखाने में विफल रहता है तो कॉल किया जाता है, केवल iOSspeakerOn– स्पीकर चालू करेंspeakerOff– स्पीकर बंद करेंplayDTMF– कॉल के दौरान DTMF टोन बजाएं, केवल iOSvoipDidRegisterTokenSuccessfully– तब कॉल होता है जब VoIP टोकन Pushwoosh के साथ पंजीकृत हो जाता है, केवल iOSvoipDidFailToRegisterTokenWithError– तब कॉल होता है जब VoIP टोकन पंजीकरण विफल हो जाता है, केवल iOSvoipDidCancelCall– तब कॉल होता है जब किसी कॉल को VoIP पुश के माध्यम से दूर से रद्द किया जाता हैvoipDidFailToCancelCall– तब कॉल होता है जब कॉल रद्द करने का प्रयास विफल हो जाता है
इन्हें Cordova के PushNotification ऑब्जेक्ट का उपयोग करके हुक किया जा सकता है, जिससे आप VoIP कॉल स्थिति परिवर्तनों को नियंत्रित और प्रतिक्रिया दे सकते हैं।
Android पर, आप इन इवेंट को अपनी स्वयं की नेटिव Java क्लास में भी हैंडल कर सकते हैं, उदाहरण के लिए जब उपयोगकर्ता कॉल का उत्तर दे तो अपनी कॉल स्क्रीन खोलने के लिए। Android पर कस्टम कॉल इवेंट हैंडलर देखें।