Appels VoIP Cordova
Pushwoosh prend en charge les notifications d’appel de type VoIP pour iOS et Android à l’aide du pushwoosh-cordova-plugin. Cela active la fonctionnalité d’appel VoIP native, y compris l’interface utilisateur d’appel entrant et les événements de contrôle d’appel.
1. Ajouter le plugin Cordova de Pushwoosh avec la VoIP activée
Anchor link toInstallez le plugin avec l’indicateur VoIP activé :
cordova plugin add pushwoosh-cordova-plugin --variable PW_VOIP_IOS_ENABLED=true --variable PW_VOIP_ANDROID_ENABLED=trueCela configurera le plugin pour prendre en charge la fonctionnalité VoIP sur iOS.
2. Ajouter la dépendance CocoaPod PushwooshVoIP
Anchor link toAssurez-vous que le pod PushwooshVoIP est inclus automatiquement via le plugin. Si nécessaire, vérifiez manuellement dans votre Podfile :
pod 'PushwooshVoIP'Ce pod est requis pour prendre en charge les notifications VoIP basées sur PushKit et la gestion des appels au niveau du système.
3. Activer le mode arrière-plan VoIP dans Xcode
Anchor link toOuvrez votre projet dans Xcode et suivez ces étapes :
- Allez dans Signing & Capabilities (Signature et capacités).
- Ajoutez la capacité Background Modes (Modes d’arrière-plan).
- Cochez l’option Voice over IP (Voix sur IP).
Cela permet à votre application de recevoir des notifications push VoIP entrantes lorsqu’elle est en arrière-plan.
4. Configurer le code d’application VoIP (si vous utilisez à la fois les notifications push VoIP et standard)
Anchor link toSi votre application utilise à la fois les notifications push standard et VoIP, vous devez définir explicitement le code d’application VoIP avant l’initialisation de la VoIP :
pushwoosh.setVoipAppCode("XXXXX-XXXXX");Remplacez "XXXXX-XXXXX" par le code d’application Pushwoosh attribué à votre application compatible VoIP dans le panneau de contrôle Pushwoosh.
5. Demander l’autorisation d’appel sur Android
Anchor link toSur Android, vous devez demander à un utilisateur l’autorisation de recevoir des appels. Pour ce faire, appelez la méthode requestCallPermission(). Cela doit être fait avant d’enregistrer un appareil.
pushwoosh.requestCallPermission();6. Initialiser les paramètres VoIP
Anchor link toAppelez la méthode suivante pour initialiser la fonctionnalité VoIP :
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 ]);};Paramètres
Anchor link tosupportsVideo–trueoufalseselon que votre application prend en charge les appels vidéoringtoneSound– nom du fichier de sonnerie personnalisé (par ex."incoming.caf"), ou une chaîne vide pour la valeur par défauthandleTypes– masque de bits numérique pour les types de gestion d’appel (1pour le numéro de téléphone,2pour l’e-mail, etc.)
7. Rappels et méthodes VoIP disponibles
Anchor link toLe plugin Cordova prend en charge les méthodes et événements suivants liés à la VoIP :
answer– appelé lorsqu’un utilisateur répond à un appel entrantendCall– appelé lorsqu’un utilisateur termine l’appel en courshangup– appelé lorsqu’un appel est raccrochéreject– appelé lorsqu’un appel entrant est rejetémuted– basculer l’état muet, iOS uniquementheld– basculer l’état en attente, iOS uniquementvoipPushPayload– renvoie la charge utile de la notification push pour l’appel VoIP entrantincomingCallSuccess– appelé lorsque l’interface d’appel système s’affiche avec succès, iOS uniquementincomingCallFailure– appelé lorsque l’interface d’appel système ne parvient pas à s’afficher, iOS uniquementspeakerOn– activer le haut-parleurspeakerOff– désactiver le haut-parleurplayDTMF– jouer une tonalité DTMF pendant un appel, iOS uniquement
Ceux-ci peuvent être accrochés à l’aide de l’objet PushNotification de Cordova, vous permettant de contrôler et de répondre aux changements d’état des appels VoIP.