Retour

Automatisation par API du processus de clonage par lots des trackers inter-panneaux

API-Driver Automation of the Cross-Panel Tracker Batch Cloning Process

Grâce à une étroite collaboration avec nos partenaires, nous répondons au besoin critique d'expansion des entreprises par le biais de réseaux de sous-distributeurs ou de revendeurs. L'un des principaux défis consiste à aider les clients à gérer des environnements opérationnels comportant des centaines d'objets. Pour y répondre, nous proposons différents outils qui adaptent l'accès à des besoins spécifiques. En plus du panneau d'administration complet pour la gestion des clients, des appareils et de la facturation, nous développons des fonctionnalités basées sur l'API pour automatiser les tâches de routine et rationaliser les flux de travail des partenaires.

L'un des exercices fréquemment utilisés est le clonage d'objets. Le clonage d'un traceur est utile lorsque vous souhaitez permettre à plusieurs utilisateurs d'accéder au même traceur GPS tout en conservant des comptes utilisateurs distincts. Par exemple, supposons que vous ayez enregistré tous vos traceurs dans un seul compte utilisateur, mais que vos collègues doivent surveiller et superviser des groupes particuliers de traceurs. Dans ce cas, vous pouvez créer des comptes d'utilisateur séparés pour eux dans le panneau d'administration et cloner les traceurs nécessaires dans leurs comptes. Pour en savoir plus sur les clones, veuillez vous référer à l'article "Clones de trackers ".

Un clone est une instance virtuelle d'un traceur GPS existant dans la plateforme Navixy. Les clones vous permettent de créer une ou plusieurs copies d'un traceur existant et de les placer dans plusieurs comptes utilisateurs indépendants. Cela signifie que plusieurs utilisateurs peuvent surveiller le même traceur GPS à partir de leurs comptes.

Défis liés au clonage de traceurs entre panneaux

Le clonage d'un seul traceur est généralement une tâche simple. Toutefois, des difficultés apparaissent lorsque l'on essaie de reproduire un traceur sur plusieurs panneaux d'administration au sein de la même structure "compte principal <-> reseller". Dans le passé, bien que le panneau d'administration principal puisse accéder à toutes les données de ses revendeurs, il n'était pas possible de répliquer les trackers entre les panneaux d'administration de la même structure... mais ce n'est plus le cas !

Nous avons amélioré la fonctionnalité de clonage afin de permettre la duplication des trackers d'un panneau d'administration à un autre au sein de la même structure, tout cela en utilisant la session du compte du panneau d'administration principal. Cette amélioration est facilement accessible via notre API. En outre, nous sommes ravis d'introduire le concept de clonage par lots, qui permet de dupliquer jusqu'à 1 000 trackers en une seule opération. Plus loin dans ce billet, nous verrons comment exécuter les processus de clonage simple et par lots.

Clonage de trackers au sein d'une hiérarchie

Cette amélioration résout complètement le problème du clonage des trackers au sein du compte principal et de la hiérarchie des revendeurs pour les utilisateurs de l'API. Bien que les mises à jour de l'interface utilisateur soient encore en attente, la fonctionnalité complète est déjà accessible via l'API.

Cette nouvelle technique de vérification mise en œuvre sur le backend permet au panneau d'administration principal de superviser le clonage dans l'ensemble de sa hiérarchie. Les partenaires peuvent désormais gérer des tâches de clonage étendues sans avoir à contacter l'assistance, ce qui réduit la charge de travail des deux parties.

Voici un exemple de hiérarchie possible pour la structure Panneau d'administration - Revendeur - Utilisateur - Traqueur :

Tracker Cloning Within Hierarchy

Accès API pour le clonage entre panneaux

En pratique, les utilisateurs de l'API peuvent tirer parti de cette fonctionnalité pour automatiser l'ensemble du processus de clonage dans le cadre de leur flux de travail d'accueil du client final. Par ailleurs, l'API permet de lancer efficacement des demandes de clonage à la demande, chaque fois que cela est nécessaire.

À titre d'illustration, pensez à utiliser un client HTTP tel que Postman pour exécuter des opérations de clonage uniques ou par lots. Postman fournit une interface conviviale pour construire et envoyer des requêtes HTTP GET et POST. Bien que Postman serve d'exemple populaire, n'importe quel client HTTP doté de la fonctionnalité cURL suffira. Nous approfondirons l'utilisation de Postman avec Navixy, y compris la collection Navixy Postman, dans une section dédiée. Pour plus d'informations, veuillez vous référer à l'article de blog "Streamline development with Navixy API and Postman" (Rationaliser le développement avec Navixy API et Postman).

Commençons par une action de clonage simple en utilisant la méthode API "clone" :

1. Si vous ne l'avez pas encore fait, créez une nouvelle collection dans Postman en cliquant sur "Create new collection" (Créer une nouvelle collection) comme indiqué ci-dessous.

Create new collection

2. Après avoir créé la nouvelle collection, vous pouvez commencer à travailler en ajoutant une demande. Cliquez sur le lien "Ajouter une demande" comme indiqué dans la capture d'écran ci-dessous.

Add Request

3. Obtenons une clé de session (la clé de hachage) en utilisant les informations d'identification du panneau d'administration. La méthode "auth" fournit une clé de hachage en cas d'autorisation réussie.

Définissez la méthode POST et saisissez l'URL de l'API :

application/json

Passez à l'onglet "Body" en entrant les informations d'identification sous forme de JSON :

Proceed to the “Body”

et appuyez sur le bouton "Envoyer" à droite.

4. Vous recevrez la clé de hachage dont vous aurez besoin pour effectuer l'action de clonage. Toute action du panel nécessite une clé de hachage. Nous passons en revue toutes les étapes ici, afin que tout soit clair après avoir lu l'article.

hash key

5. Après avoir obtenu la clé de hachage, vous pouvez procéder au clonage. Modifiez l'URL comme suit :

Remplacez le hachage de l'exemple par la clé de hachage que vous avez obtenue précédemment, ajoutez l'ID utilisateur cible et le tracker source, et collez le résultat dans le "corps" de la demande. Veuillez noter que seuls les objets non clonés (trackers source) peuvent être clonés.

{"hash" : "1234567890abcdf1234567890abcdf", "tracker_id": 2876352, "user_id" : 277617, "label" : "Courier (Clone)"}

Appuyez sur le bouton "Envoyer".

Send

6. Dans ce cas, j'ai spécifié l'utilisateur cible qui provient d'un autre revendeur dans la hiérarchie de mon panneau d'administration. Le revendeur est mis en évidence dans la capture d'écran suivante :

reseller_admin panel

Mais le tracker source appartient au compte principal du panneau d'administration :

Une action de clonage réussie donne lieu à un nouvel ID d'objet (numéro de tracker), qui peut être réutilisé dans d'autres scénarios.

Réponse :

{"id" : 3056626, "success" : true }

Accès à l'API pour le clonage par lots

Nous avons introduit l'action de clonage par lots. Cet appel permet de créer des clones dans la hiérarchie du panneau d'administration principal, comme pour le clonage d'un seul objet. Voici comment procéder.

Toutes les étapes ci-dessus sont pratiquement les mêmes, à l'exception de l'URL et des données "Body" (la charge utile).

La nouvelle action par lot est la méthode "batch_clone".

Ajustez l'URL et le "Body" :

{"hash" : "1234567890abcdf1234567890abcdf", "user_id": 277617, "tracker_ids" : [2883610, 2887704, 2881467]}

L'envoi de la demande donne l'exemple suivant :

request_results

La réponse contient des ID de trackers clonés qui sont prêts à être utilisés dans l'utilisateur cible du revendeur ci-dessus :

{"list" : [ 3056696, 3056697, 3056698 ], "success" : true }

Lors du clonage de trackers en mode batch, les étiquettes originales des trackers sont conservées.

Conclusion : un clonage transparent et fiable

Vous pouvez, par exemple, cloner un millier de traceurs en une seule opération, ce qui élimine la nécessité d'effectuer de nombreuses actions de clonage. Cette approche minimise la charge de l'API, libérant ainsi de la capacité pour des opérations supplémentaires et garantissant que les systèmes fortement sollicités continuent de fonctionner sans interruption.

L'action de clonage par lots est conçue pour être transactionnelle. Cela signifie que l'ensemble de la transaction est annulée si un seul traqueur rencontre une erreur au cours du processus de clonage. Cette fonction de retour en arrière fournit une méthode très efficace pour gérer de grands lots de traceurs, éliminant le besoin d'identifier et de séparer les traceurs problématiques de ceux qui ont été clonés avec succès.

Pour plus de détails sur cette fonctionnalité, nous vous invitons à visiter notre portail des développeurs.

Si vous avez encore des questions ou si vous avez besoin de plus d'informations, nous sommes prêts à vous aider !

Cliquez ici pour accéder à nos coordonnées et entrer en contact avec notre équipe.