Passer au contenu

API Live Activities pour iOS

Documentation d’Apple :

startLiveActivity

Anchor link to

POST https://api.pushwoosh.com/json/1.3/startLiveActivity

Permet de créer des Live Activities sur iOS.

Corps de la requête

Anchor link to
ParamètreTypeRequis/OptionnelDescription
applicationStringRequisCode d’application Pushwoosh
authStringRequisJeton d’accès à l’API depuis le Control Panel de Pushwoosh.
notificationsArrayRequisTableau JSON des paramètres de message. Voir les détails dans le tableau Notifications ci-dessous.

Notifications

Anchor link to

Paramètres utilisés dans le tableau notifications :

ParamètreTypeRequis/OptionnelDescription
contentStringRequisContenu de repli pour les appareils fonctionnant avec des versions d’iOS inférieures à 16.1 qui ne prennent pas en charge les Live Activities. Sur iOS 16.1+ (avec prise en charge des Live Activities), le contenu provient du champ live_activity.
titleStringOptionnelLe titre du message de notification.
live_activityObjectRequisDonnées de la Live Activity pour créer une Live Activity dans iOS.
live_activity.content-stateObjectRequisContenu pour la notification de la Live Activity.
live_activity.attributes-typeStringRequisLe type d’attributs utilisé dans la Live Activity.
live_activity.attributesObjectRequisAttributs pour la Live Activity.
live_activity_idStringRequisUn identifiant unique pour la Live Activity. Utilisé pour cibler cette activité lors de l’appel à updateLiveActivity. Doit être unique par session d’activité.
filterStringOptionnelLe nom d’un filtre Pushwoosh (segment). Voir Nom du segment / filtre. La Live Activity sera démarrée sur tous les appareils correspondant à ce filtre.
devicesArray of StringsOptionnelUne liste de jetons d’appareil. La Live Activity ne sera démarrée que sur les appareils spécifiés.
send_dateStringOptionnelPlanifie le push qui démarre la Live Activity pour une date et une heure spécifiques — fonctionne avec le ciblage par filter ou devices. Utilisez le format AAAA-MM-JJ HH:mm, ou now pour démarrer immédiatement (c’est aussi la valeur par défaut lorsque le paramètre est omis). Ne doit pas être plus d’un jour dans le passé ou de 30 jours dans le futur, sinon la requête est rejetée avec une erreur de validation.
timezoneStringOptionnelLe fuseau horaire utilisé pour interpréter send_date. S’il est omis, send_date est interprété en UTC.

Exemple de requête

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"content": "Your order is being prepared",
"title": "Food Delivery",
"live_activity": {
"event": "start",
"title": "Order status",
"content-state": {
"status": "Third",
"estimatedTime": "37 min",
"emoji": "👨‍🍳"
},
"attributes-type": "FoodDeliveryAttributes",
"attributes": {}
},
"live_activity_id": "FIRST_LIVE_ACTIVITY",
"filter": "FILTER_NAME_1"
}
]
}
}

Exemple de réponse

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

Remarque :

Lisez cet article pour en savoir plus sur l’utilisation des Live Activities avec le SDK iOS de Pushwoosh.

updateLiveActivity

Anchor link to

POST https://api.pushwoosh.com/json/1.3/updateLiveActivity

Permet de mettre à jour et de terminer les Live Activities d’iOS

Corps de la requête

Anchor link to
ParamètreTypeRequis/OptionnelDescription
authStringRequisJeton d’accès à l’API depuis le Control Panel de Pushwoosh.
applicationStringRequisCode d’application Pushwoosh
notificationsArrayRequisTableau JSON des paramètres de message. Voir les détails dans le tableau Notifications ci-dessous.

Notifications

Anchor link to

Paramètres utilisés dans le tableau notifications :

ParamètreTypeRequis/OptionnelDescription
live_activityObjectRequisDonnées de la Live Activity pour mettre à jour une Live Activity dans iOS.
live_activity.eventStringRequisSpécifie le type d’événement. Utilisez "update" pour mettre à jour la Live Activity ou "end" pour la fermer.
live_activity.content-stateObjectRequisObjet avec des paires clé-valeur utilisé pour passer des données à la Live Activity afin de mettre à jour son contenu.
live_activity.dismissal-dateIntegerOptionnelLe moment (en secondes) où la Live Activity doit se terminer.
live_activity_idStringRequisL’identifiant unique de la Live Activity à mettre à jour. Doit correspondre au live_activity_id utilisé dans startLiveActivity. La mise à jour sera livrée à tous les appareils sur lesquels cette activité a été démarrée.
live_activity.relevance-scoreIntegerOptionnelIndique au système iOS quelle Live Activity a une priorité plus élevée que les autres. Accepte des valeurs de 1 à l’infini (des valeurs jusqu’à 100 sont recommandées).
live_activity.stale-dateIntegerOptionnelLe moment (en secondes) qui représente la date à laquelle une Live Activity devient obsolète ou périmée.

Exemple de requête

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"live_activity": {
"event": "update",
"title": "Live Activity Update",
"content-state": {
"status": "second 66",
"estimatedTime": "66 min",
"emoji": "👨‍"
},
"relevance-score": 60
},
"live_activity_id": "FIRST_LIVE_ACTIVITY"
}
]
}
}

Exemple de réponse

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

Lisez cet article pour en savoir plus sur l’utilisation des Live Activities avec le SDK iOS de Pushwoosh.

Activités multiples par appareil

Anchor link to

Vous pouvez démarrer plusieurs Live Activities sur le même appareil en appelant startLiveActivity plusieurs fois avec des valeurs live_activity_id différentes.

Par exemple, si vous démarrez deux activités : FIRST_LIVE_ACTIVITY avec filter: FILTER_NAME_1 et SECOND_LIVE_ACTIVITY avec filter: FILTER_NAME_2, un appareil qui correspond aux deux filtres aura les deux activités en cours d’exécution simultanément.

Pour en mettre une à jour, passez son live_activity_id à updateLiveActivity. La mise à jour est livrée à tous les appareils où cette activité a été créée. L’autre activité n’est pas affectée.

Le paramètre relevance-score contrôle la priorité d’affichage lorsque plusieurs Live Activities sont actives sur le même appareil. Si l’espace à l’écran est limité ou si les activités sont regroupées, l’activité avec une valeur plus élevée est affichée avec une priorité supérieure.