iOS - Implémenter l'enregistrement des appareils
Dans ce guide, nous approfondirons la manière dont vous devez gérer l'enregistrement de l'appareil. Lorsque vous launch()
Notificare, l'appareil sera enregistré comme appareil non-push.
Lorsqu'un enregistrement réussi de l'appareil a lieu, nous émettons un événement. Si vous avez configuré un délégué personnalisé comme mentionné dans la page Implementation, vous pouvez recevoir ces intentions en implémentant la méthode déléguée didRegisterDevice
à partir de NotificareDelegate
.
extension AppDelegate: NotificareDelegate {
func notificare(_ notificare: Notificare, didRegisterDevice device: NotificareDevice) {
}
}
Vous pouvez également vérifier les détails de l'appareil actuellement enregistré.
Notificare.shared.device().currentDevice
La méthode onReady
dans NotificareDelegate
sera également appelée lorsque tous les modules Notificare auront été lancés, y compris un enregistrement réussi de l'appareil.
De plus, vous pouvez vérifier si Notificare est prêt à tout moment en appelant Notificare.shared.isReady
.
Attribuer un utilisateur à l'appareil
Par défaut, un appareil est enregistré en tant qu'utilisateur anonyme. Cependant, pour utiliser pleinement les notifications push dans votre stratégie omnicanal Actito, le simple enregistrement d'un appareil anonyme n'est pas ce que vous souhaitez. Par exemple, si vous authentifiez vos utilisateurs, vous souhaiterez attribuer des informations utilisateur à l'appareil enregistré comme indiqué ci-dessous.
Notificare.shared.device().updateUser(userId: "7f42bedc-d74b-4c64-a5cf-76bcc5130b05", userName: "John Doe") { result in
}
Après cela, l'appareil restera enregistré avec ce userId
/ userName
jusqu'à ce que vous définissiez explicitement l'utilisateur comme anonyme. Selon la manière dont vous authentifiez les utilisateurs, vous souhaiterez peut-être vérifier l'état de connexion au lancement (dans onReady) et le modifier si nécessaire. Forcer l'enregistrement en tant qu'anonyme peut être mieux réalisé en définissant userId
et userName
sur null
.
Seul le userId sera utilisé pour faire correspondre les appareils aux profils dans votre base de données Actito.
Le nom d'utilisateur est uniquement utilisé pour fournir des informations supplémentaires.
Notificare.shared.device().updateUser(userId: nil, userName: nil) { result in
}
Pour choisir le bon identifiant utilisateur :
- Les données doivent être disponibles sous forme de clé dans Actito grâce à la synchronisation des données entre votre système et Actito.
- Les données doivent être disponibles sur votre site internet (en vous connectant à un espace client).
Veuillez utiliser un attribut déjà défini comme unique sur votre table de profil Actito.
Si vous devez ajouter un nouvel attribut unique, cela est possible, mais soyez prudent car cela pourrait avoir des impacts sur votre processus de synchronisation des données entre votre système et Actito. Demandez à votre expert en données d'intégration si nécessaire.
Remplacer la langue de l'appareil
Par défaut, nous collecterons automatiquement la langue et la région d'un appareil en fonction des paramètres régionaux de l'appareil. Dans la plupart des cas, cela suffira, mais dans les cas où vous souhaitez remplacer la combinaison langue/région de l'appareil par une sélection stricte de langues, vous pouvez le faire en appelant la méthode suivante :
Notificare.shared.device().updatePreferredLanguage("en-US") { result in
}
Finalement, vous pouvez toujours récupérer la langue préférée en appelant la méthode suivante :
Notificare.shared.device().preferredLanguage