3.7 KiB
Exemples d'intégration UniFi
Ce document décrit les exemples fournis dans le répertoire doc/examples qui illustrent l'utilisation des API UniFi pour l'intégration avec Odoo.
Structure des exemples
Le répertoire doc/examples contient plusieurs fichiers qui démontrent différents aspects de l'intégration avec les API UniFi :
Documentation
- api.md : Documentation détaillée des endpoints de l'API du contrôleur UniFi, incluant les méthodes REST, les commandes disponibles et les codes d'appareil.
- models.md : Description des modèles de données proposés pour l'intégration UniFi dans Odoo, incluant les structures de tables et relations.
Client Python
- unifi_client.py : Classe cliente Python pour interagir avec l'API UniFi UDM Pro. Cette classe gère l'authentification et les opérations API de base.
Scripts d'exemple
Plusieurs scripts Python qui démontrent l'utilisation du client UniFi pour différentes tâches :
- show_devices.py : Affiche tous les appareils UniFi gérés par le contrôleur dans un format lisible.
- show_device_details.py : Affiche des informations détaillées sur un appareil spécifique.
- show_clients.py : Liste tous les clients (appareils connectés) sur le réseau.
- show_networks.py : Affiche les configurations réseau définies sur le contrôleur.
- show_vlans.py : Liste les VLANs configurés sur le système.
- show_firewall.py : Affiche les règles de pare-feu configurées.
- test_firewall.py : Démontre comment interagir avec les règles de pare-feu.
- test_unifi.py : Script de test général pour vérifier la connexion et les fonctionnalités de base.
Fichiers de configuration
- credential.txt : Fichier de configuration contenant les informations d'authentification pour se connecter au contrôleur UniFi.
- requirements.txt : Liste des dépendances Python nécessaires pour exécuter les scripts d'exemple.
Utilisation des exemples
Configuration
-
Copiez le fichier
credential.txtet modifiez-le avec vos propres informations d'authentification :UNIFI_HOST=192.168.1.1 UNIFI_PORT=443 UNIFI_USERNAME=votre_utilisateur UNIFI_PASSWORD=votre_mot_de_passe UNIFI_SITE=default -
Installez les dépendances requises :
pip install -r requirements.txt
Exécution des scripts
Pour exécuter un script d'exemple, utilisez la commande Python suivante :
python show_devices.py
Intégration avec Odoo
Les modèles décrits dans models.md fournissent une structure de données proposée pour l'intégration avec Odoo. Ces modèles incluent :
- udm.site : Représente un site UniFi géré par un UDM/UDR ou un contrôleur logiciel
- udm.system_info : Informations système du contrôleur
- udm.network : Configurations réseau
- udm.vlan : Configurations VLAN
- udm.device : Appareils UniFi (points d'accès, switches, etc.)
- udm.user : Utilisateurs/clients sur le réseau
- udm.firewall_rule : Règles de pare-feu
- udm.firewall_group : Groupes de pare-feu
Ces modèles peuvent être utilisés comme base pour développer le module d'intégration UniFi pour Odoo, en s'appuyant sur les exemples de code fournis pour interagir avec l'API UniFi.
Adaptation pour l'intégration
Pour adapter ces exemples à une intégration complète avec Odoo, il faudrait :
- Implémenter les modèles décrits dans
models.md - Adapter la classe
UnifiClientpour fonctionner dans le contexte d'Odoo - Créer un assistant (wizard) pour configurer la connexion, comme décrit dans le fichier
objectifs.md - Implémenter des méthodes de synchronisation périodique des données
- Développer des vues pour afficher et gérer les données UniFi dans l'interface Odoo