Cordova VoIP-Anrufe
Pushwoosh unterstützt VoIP-Anrufbenachrichtigungen für iOS und Android über das pushwoosh-cordova-plugin. Dies ermöglicht native VoIP-Anruffunktionen, einschließlich der Benutzeroberfläche für eingehende Anrufe und Ereignisse zur Anrufsteuerung.
1. Fügen Sie das Pushwoosh Cordova-Plugin mit aktivierter VoIP-Funktion hinzu
Anchor link toInstallieren Sie das Plugin mit aktiviertem VoIP-Flag:
cordova plugin add pushwoosh-cordova-plugin --variable PW_VOIP_IOS_ENABLED=true --variable PW_VOIP_ANDROID_ENABLED=trueDadurch wird das Plugin so konfiguriert, dass es die VoIP-Funktionalität unter iOS unterstützt.
2. Fügen Sie die PushwooshVoIP CocoaPod-Abhängigkeit hinzu
Anchor link toStellen Sie sicher, dass der PushwooshVoIP-Pod automatisch über das Plugin eingebunden wird. Überprüfen Sie dies bei Bedarf manuell in Ihrer Podfile:
pod 'PushwooshVoIP'Dieser Pod ist erforderlich, um PushKit-basierte VoIP-Benachrichtigungen und die Anrufbehandlung auf Systemebene zu unterstützen.
3. Aktivieren Sie den VoIP-Hintergrundmodus in Xcode
Anchor link toÖffnen Sie Ihr Projekt in Xcode und folgen Sie diesen Schritten:
- Gehen Sie zu Signing & Capabilities.
- Fügen Sie die Background Modes-Fähigkeit hinzu.
- Aktivieren Sie die Option Voice over IP.
Dies ermöglicht Ihrer App, eingehende VoIP-Pushes zu empfangen, während sie sich im Hintergrund befindet.
4. Konfigurieren Sie den VoIP-App-Code (wenn Sie sowohl VoIP- als auch reguläre Pushes verwenden)
Anchor link toWenn Ihre App sowohl Standard- als auch VoIP-Pushes verwendet, müssen Sie den VoIP-Anwendungscode explizit vor der VoIP-Initialisierung festlegen:
pushwoosh.setVoipAppCode("XXXXX-XXXXX");Ersetzen Sie "XXXXX-XXXXX" durch den Pushwoosh App Code, der Ihrer VoIP-fähigen Anwendung im Pushwoosh Control Panel zugewiesen ist.
5. Anrufberechtigung auf Android anfordern
Anchor link toUnter Android müssen Sie die Berechtigung anfordern, Anrufe von einem Benutzer zu empfangen. Rufen Sie dazu die requestCallPermission()-Methode auf. Dies sollte vor der Registrierung eines Geräts erfolgen.
pushwoosh.requestCallPermission();6. VoIP-Parameter initialisieren
Anchor link toRufen Sie die folgende Methode auf, um die VoIP-Funktionalität zu initialisieren:
PushNotification.prototype.initializeVoIPParameters = function(supportsVideo, ringtoneSound, handleTypes, success, error) { if (typeof handleTypes === "function") { error = ringtoneSound; success = supportsVideo; handleTypes = undefined; ringtoneSound = undefined; supportsVideo = undefined; }
exec(success, error, "PushNotification", "initializeVoIPParameters", [ !!supportsVideo, ringtoneSound || "", handleTypes != null ? Number(handleTypes) : 1 ]);};Parameter
Anchor link tosupportsVideo–trueoderfalse, je nachdem, ob Ihre App Videoanrufe unterstütztringtoneSound– Name der benutzerdefinierten Klingeltondatei (z. B."incoming.caf") oder eine leere Zeichenfolge für den StandardhandleTypes– numerische Bitmaske für Anruf-Handle-Typen (1für Telefonnummer,2für E-Mail usw.)
7. Verfügbare VoIP-Callbacks und -Methoden
Anchor link toDas Cordova-Plugin unterstützt die folgenden VoIP-bezogenen Methoden und Ereignisse:
answer– wird aufgerufen, wenn ein Benutzer einen eingehenden Anruf annimmtendCall– wird aufgerufen, wenn ein Benutzer den aktuellen Anruf beendethangup– wird aufgerufen, wenn ein Anruf aufgelegt wirdreject– wird aufgerufen, wenn ein eingehender Anruf abgewiesen wirdmuted– Stummschaltung umschalten, nur für iOSheld– Haltestatus umschalten, nur für iOSvoipPushPayload– gibt die Push-Payload für den eingehenden VoIP-Anruf zurückincomingCallSuccess– wird aufgerufen, wenn die Systemanruf-Benutzeroberfläche erfolgreich angezeigt wird, nur für iOSincomingCallFailure– wird aufgerufen, wenn die Anzeige der Systemanruf-Benutzeroberfläche fehlschlägt, nur für iOSspeakerOn– Lautsprecher einschaltenspeakerOff– Lautsprecher ausschaltenplayDTMF– DTMF-Ton während eines Anrufs abspielen, nur für iOS
Diese können über das PushNotification-Objekt von Cordova eingehängt werden, sodass Sie den Status von VoIP-Anrufen steuern und darauf reagieren können.