GeoRide: Génération automatique de Token
Date de publication: 02/01/2020
Bonjour à toutes et à tous, bande de motards- euh… de geeks ! Mon dernier article concernant GeoRide a aidé beaucoup de personnes et je tenais à vous remercier pour tous vos retours positifs ! Maintenant que votre GeoRide est automatisé grâce à votre Intercom, il est temps de rendre cette manipulation persistante. En effet, dans le dernier article j’ai expliqué que le Token d’authentification que nous avons généré n’était valable seulement sur une période de 30 jours. Il faut donc procéder à une génération automatique et à un remplacement en tant que variable dans Tasker. Chaque étape est à appliquer à la lettre et dans cet ordre précis pour assurer le bon fonctionnement de cette manipulation. Vous êtes prêts ? Alors, c’est parti !
Prérequis
L’API de GeoRide générant ses réponses au format Json, nous avons donc besoin d’un module Tasker nous permettant de traiter ce format et d’en extraire les informations intéressantes. L’application AutoTools, du même développeur que Tasker, est une boite à outils nous permettant d’avoir de nombreuses fonctionnalités supplémentaires au sein de Tasker, notamment la prise en charge du format Json.
L’application peut être trouvée à cette adresse et possède une version “gratuite”. Je recommande tout de même de supporter le développeur en achetant la version complète.
Création de la variable GeoToken
Nous allons créer une variable propre à Tasker qui contiendra notre Token. Ainsi, lorsque la tâche de regénération le mettra à jour, la valeur sera aussi à jour dans les tâches de verrouillage et de dévérrouillage.
- Ouvrez l’application Tasker
- Rendez-vous dans l’onglet “Variables”
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Une barre va alors apparaitre en haut à droite de votre écran, rentrez “GeoToken” dans le zone de texte et cliquez sur le bouton “Valider” à droite (ATTENTION: Tasker met un “%” par défaut devant le nom de la variable. Veillez à ne pas le supprimer !)
Création de la tâche de regénération du Token
Comme notre variable %GeoToken n’est pas encore utilisée, nous allons utiliser la tâche de regénération de Token une première fois avec notre Token configuré “en dur” de manière explicite, pour ensuite pivoter vers une configuration dynamique. Créons maintenant la tâche regénérant le Token d’authentification:
- Ouvrez l’application Tasker
- Rendez-vous dans l’onglet “Tâches”
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Une barre va alors apparaitre en haut à droite de votre écran, rentrez “Génération token” dans le zone de texte et cliquez sur le bouton “Valider” à droite
- Vous entrez alors dans le menu d’édition de la tâche
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Cliquez sur “Réseau”
- Cliquez sur “Requête HTTP”
- Vous entrez alors dans le menu d’édition d’action
- Dans “Méthode” sélectionnez “Obtenir” (ou “GET” si vous êtes en anglais)
- Dans “URL” entrez “https://api.georide.fr/user/new-token”
- Dans “En-têtes” entrez “Authorization: Bearer
” (sans les guillemets, en respectant bien les espaces et les majuscules et sans les <>) - Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Cliquez sur “Plugin”
- Cliquez sur “AutoTools”
- Cliquez sur “Json Read”
- Cliquez sur le bouton en forme de crayon à coté du label “Configuration”
- Cliquez sur “Input format” et sélectionnez “JSON”
- Cochez “Simple mode”
- Cliquez sur “Json”, cliquez sur “No”
- Entrez “%http_data” (sans les guillemets et avec le signe de pourcentage)
- Cliquez sur “Fields”
- Entrez “authToken” (sans les guillemets)
- Cliquez sur le bouton “Valider” en haut à droite de votre écran
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Cliquez sur “Variable”
- Cliquez sur “Affecter une variable”
- Dans le champ “Nom” entrez “%GeoToken” (sans les guillemets, avec le signe de pourcentage)
- Dans le champ “A” entrez “%authtoken”
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur la flèche de retour en haut à gauche de votre écran une deuxième fois
Pour résumer, cette tâche va:
- Faire une requête HTTP demandant un nouveau token
- Filtrer la réponse HTTP afin d’extraire le nouveau Token
- Affecter le nouveau Token à la variable Tasker précédemment créée
Basculer du mode statique au dynamique
- Ouvrez l’application Tasker
- Rendez-vous dans l’onglet “Tâches”
- Cliquez sur votre tâche “Générer Token”
- Cliquez sur le bouton “Play” en bas à gauche de votre écran
Si tous les points passent au vert, vous avez correctement réussi votre configuration. Cela va alors regénérer votre Token d’authentification et l’affecter à la variable %GeoToken. Maintenant, nous devons remplacer notre Token par notre variable dans nos tâches.
- Cliquez sur votre action “Requête HTTP”
- Dans la section “En-têtes”, supprimer votre token et remplacez-le par “%GeoToken” (Au final, la ligne sera “Authorization: Bearer %GeoToken”)
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur la flèche de retour en haut à gauche de votre écran une deuxième fois
- Cliquez sur votre tâche “Verrouillage moto”
- Cliquez sur votre action “Requête HTTP”
- Dans la section “En-têtes”, supprimer votre token et remplacez-le par “%GeoToken” (Au final, la ligne sera “Authorization: Bearer %GeoToken”)
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur la flèche de retour en haut à gauche de votre écran une deuxième fois
- Cliquez sur votre tâche “Déverrouillage moto”
- Cliquez sur votre action “Requête HTTP”
- Dans la section “En-têtes”, supprimer votre token et remplacez-le par “%GeoToken” (Au final, la ligne sera “Authorization: Bearer %GeoToken”)
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Cliquez sur la flèche de retour en haut à gauche de votre écran une deuxième fois
Planifier la regénération du Token
Nous allons maintenant créer un profil déclencheant la regénération du Token tous les 15 jours.
- Ouvrez l’application Tasker
- Rendez-vous dans l’onglet “Profils”
- Cliquez sur le bouton “+” en bas à droite de votre écran
- Cliquez sur “Jour”
- Cliquez sur le jour 1 et 16 du calendrier qui s’affiche
- Cliquez sur la flèche de retour en haut à gauche de votre écran
- Sélectionnez votre tâche “Génération Token”
Notre système fonctionne !
Dorénavant, plus besoin d’une seule manipulation de votre part ! Votre système est totalement autonome et automatique. Comme toujours, si vous avez des suggestions, remarques ou améliorations, n’hésitez pas à m’en faire part sur Twitter en me mentionnant, ou en m’envoyant un MP !
Bonne route et à bientôt !