- CLI PowerShell pour la gestion des sorties DALI adressable (ECxLightDaliA) - Action Read : rapport CSV des configurations (une ligne par output) - Action Write : modification des propriétés via POST JSON - Fallback curl.exe -k pour les automates avec problèmes SSL
DaliACLI
CLI PowerShell pour la gestion des configurations de sorties DALI adressable (ECxLightDaliA) sur des automates Distech Controls Eclypse.
IMPORTANT : Ce projet est un développement personnel indépendant.
Ce projet a été développé par Charles-Arthur DAVID à titre personnel Distech Controls n'est pas responsable de ce projet et ne le supporte pas Aucune demande de support ne sera prise en charge par Distech Controls Distech Controls ne fournit aucune garantie ni assistance technique pour ce projet
Fonctionnalités
- Read : Lit la configuration des modules ECxLightDaliA et génère un rapport CSV (une ligne par sortie)
- Write : Modifie les propriétés des sorties DALI à partir du CSV enrichi
Prérequis
- PowerShell 5.1+ (inclus dans Windows 10/11)
- Accès réseau aux automates Eclypse
Utilisation
Lecture des configurations
.\DaliACLI.ps1 -Action Read -CsvInput ".\automates.csv"
Génère un fichier dali_YYYY-MM-DD_HHhmm.csv avec les propriétés de chaque sortie.
Écriture des configurations
.\DaliACLI.ps1 -Action Write -CsvInput ".\dali_2026-04-02_14h30.csv"
Avec mot de passe
.\DaliACLI.ps1 -Action Read -CsvInput ".\automates.csv" -Password "MonMotDePasse"
Aide
Get-Help .\DaliACLI.ps1 -Detailed
Format CSV d'entrée (automates)
Séparateur : point-virgule (;)
Hostname;Current Ip;HttpPort;HttpsPort
Eclypse-RDC;192.168.1.11;0;443
Eclypse-Etage1;192.168.1.12;0;443
Colonnes optionnelles : Username, Password (surcharge les credentials par défaut admin / vide).
Format CSV de sortie (Read)
Une ligne par sortie DALI :
| Colonne | Description |
|---|---|
| Hostname | Nom de l'automate |
| Current Ip | Adresse IP |
| HttpPort | Port HTTP |
| HttpsPort | Port HTTPS |
| ModuleKey | Identifiant du module |
| ModuleName | Nom du module |
| OutputKey | Identifiant de la sortie |
| OutputName | Nom de la sortie |
| ControlGearKey | Clé du control gear DALI |
| Groups | Groupes DALI actifs (ex: 1,3,5) |
| SystemFailLevel | Niveau en cas de défaillance système |
| PowerOnLevel | Niveau à la mise sous tension |
| MinDimmingLevel | Niveau minimum de variation |
| DefaultValue | Valeur par défaut |
| DimmingTime | Temps de variation (secondes) |
| MaxDimmingLevel | Niveau maximum de variation |
Filtrage
Seuls les modules de type ECxLightDaliA sont traités. Les autres types (ECxLight4Dali, etc.) sont ignorés automatiquement.
API
- Endpoint :
/api/rest/v2/services/subnet/devices/light-sunblind/modules - Auth : Basic Auth
- TLS 1.2 avec support des certificats auto-signés
Structure du projet
daliA/
├── DaliACLI.ps1 # Script principal
├── modules/
│ ├── Logger.psm1 # Logging console + fichier
│ ├── CsvHandler.psm1 # Lecture/écriture CSV
│ ├── ApiClient.psm1 # Communication REST API
│ └── DaliParser.psm1 # Parsing JSON DALI
├── plan/
│ └── daliacli.md # Plan de développement
└── README.md