|
|
|
|
|
NotifPushEnvoie (Fonction) En anglais : NotifPushSend Envoie une notification push (distante) Ã un appareil mobile (iOS ou Android). Cette fonction est utilisable dans une application WINDEV ou dans un site WEBDEV.
TokensEnvoi est un tableau de Buffers
MonMotDePasse est une chaîne ANSI = "Password"
POUR i = 1 À nbTokens
Ajoute(TokensEnvoi, tokens[i])
FIN
MaNotification est une Notification
MaNotification.Message = "Nouvelle notification"
MonRésultat est un booléen
MonRésultat = NotifPushEnvoie(MaNotification, TokensEnvoi, "certifapple.cer", MonMotDePasse, NomBundleID, typeServiceIOSProd)
SI MonRésultat = Faux ALORS
Trace(ErreurInfo())
FIN
Syntaxe
iPhone/iPad : Envoyer une notification Masquer les détails
<Résultat> = NotifPushEnvoie(<Notification> , <Tokens> , <Identification> , <Mot de passe> , <TopicID> , <Type de serveur>)
<Résultat> : Booléen - Vrai si l'envoi a réussi,
- Faux dans le cas contraire. La fonction ErreurInfo permet de connaître l'erreur renvoyée par le service de notification.
<Notification> : Notification Nom de la variable de type Notification correspondant à la notification à envoyer. <Tokens> : Tableau de buffers Nom de la variable de type Tableau contenant la liste des tokens représentant les appareils sur lesquels la notification doit être envoyée. <Identification> : Chaîne de caractères Chemin complet du fichier contenant le certificat pour les notifications push de l'application (obtenu auprès de Apple). Pour plus de détails, consultez Conditions nécessaires pour les notifications Push en iOS. <Mot de passe> : Chaîne de caractères ANSI Mot de passe du fichier contenant le certificat pour les notifications Push. Si le fichier n'a pas de mot de passe, utilisez une chaîne vide (""). Ce paramètre doit correspondre à une chaîne de caractères ANSI. <TopicID> : Chaîne de caractères Identifiant du Bundle spécifié à l'étape "Informations générales" de l'assistant de génération du projet Xcode. <Type de serveur> : Constante de type Entier Type de serveur sur lequel la notification doit être envoyée : | | typeServiceIOSProd | Serveur de production IOS (APN). | typeServiceIOSTest | Serveur de test IOS (APN). |
Android : Envoyer une notification Masquer les détails
<Résultat> = NotifPushEnvoie(<Notification> , <Tokens> , <Identification> , <Tokens invalides> [, <Plateforme>])
<Résultat> : Booléen - Vrai si l'envoi a réussi,
- Faux dans le cas contraire. La fonction ErreurInfo permet de connaître l'erreur renvoyée par le service de notification. Ces erreurs peuvent contenir une liste de tokens invalides qui doivent être supprimés de la base de tokens.
<Notification> : Notification Nom de la variable de type Notification correspondant à la notification à envoyer. <Tokens> : Tableau de buffers Nom de la variable de type tableau contenant la liste des tokens représentant les appareils sur lesquels la notification doit être envoyée. <Identification> : Chaîne de caractères Paramètre d'identification de l'application : <Tokens invalides> : Tableau de buffers Nom de la variable de type Tableau de buffers. Ce paramètre est renseigné avec la liste des tokens invalides renvoyés par le serveur. <Plateforme> : Constante optionnelle de type Entier Plateforme à utiliser pour l'envoi de la notification. L'application Android qui doit recevoir les notifications doit avoir été configurée pour ce type de plateforme.
| | npeFirebase | Plateforme Firebase utilisant l'API Cloud Messaging. Plateforme pour l'envoi de notification push disponible à partir de WINDEV 22 Update 1. Cette plateforme est toujours disponible : - pour les projets Firebase existant et utilisant déjà cette solution.
- pour les nouveaux projets Firebase, si cette API est activée.
| npeFirebaseCM_v1 | Plateforme Firebase utilisant l'API Firebase Cloud Messaging V1. Nouvelle plateforme pour l'envoi de notification push activée par défaut pour les nouveaux projets Firebase. Cette plateforme doit être utilisée à partir de WINDEV 28 Update 2 pour les projets utilisant l'API Firebase Cloud Messaging V1. | npeGCM (Valeur par défaut) | Plateforme Google Cloud Messaging. Ancienne solution Google pour l'envoi de notification push. Cette plateforme ne doit être utilisée que pour les projets existant utilisant déjà les notifications push (projets créés avec une version antérieure à WINDEV 22 Update 1) |
Remarques - La notification push est envoyée à un service de notification (Apple ou Google) qui redistribue ensuite cette notification à un ensemble d'appareils mobile.
- Les services gérés sont :
- Firebase de Google (le GCM de Google est supporté par compatibilité. Google conseille l'utilisation de Firebase).
- API Firebase Cloud Messaging V1
- API Cloud Messaging
- les APN d'Apple.
- Les notifications envoyées aux terminaux Android prennent en compte le proxy défini avec la fonction Proxy.
- A partir de Android 8, les notifications envoyées aux terminaux Android prennent en compte la catégorie de notification (également appelé "Channel").
- Spécificités iOS :
- Les notifications envoyées aux terminaux sous iOS sont directes (elles ne passent pas par le proxy).
- Le service d'Apple n'autorise que 256 octets de données par notification. Il est nécessaire de faire attention à la taille des données envoyées dans la variable de type Notification (par exemple le message) afin de ne pas dépasser cette limite. Une erreur sera renvoyée si la limite est dépassée.
- La connexion au serveur APN peut échouer si deux notifications sont envoyées dans un intervalle de temps très court (si le serveur est encore en train de traiter le premier message).
- Pour l'envoi des notifications push sur des terminaux iOS, l'application doit pouvoir accéder aux ports 2195 et 2196 en TCP.
Liste des exemples associés :
|
Exemples multiplateforme : WD_Serveur_Push
[ + ] Cet exemple est un webservice servant à stocker les identifiants nécessaires au Push sur mobiles. L'application WINDEV Mobile WM Push stockent les identifiants Push dans la base de cet exemple. Ces identifiants sont ensuite lus par l'exemple "WD Envoi Push" afin qu'il envoie les notifications.
|
|
Exemples multiplateforme : Envoi Push
[ + ] Cet exemple permet d'envoyer des notifications en push sur des appareils Android et iOS. Il récupère les identifiants des mobiles dans la base HFSQL de l'exemple "WD Serveur Push", et leur envoie ensuite les notifications grâce à la fonction NotifPushEnvoie.
|
Composante : wd300device.dll
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|