Actions
Guide détaillé de tous les types d'actions disponibles
Ajouter une action
Une fois le déclencheur configuré :
- En bas du déclencheur, cliquez sur « + »
- Sélectionnez le type d'action
- Configurez l'action
- Vous pouvez ajouter plusieurs actions en chaîne
1. Set Attribute
Description : Définit la valeur d'un attribut
Configuration :
Sélectionnez:
- Appareil: Fraiseuse 1
- Attribut: Alarme (Boolean ou Number)
- Valeur: Vrai (or Number: 82)
Résultat: L'attribut est défini à cette valeur
Types supportés
- Boolean : Vrai/Faux
- Number : Toute valeur numérique
- String : Texte (limité)
Cas d'usage
- Mettre en mémoire : Set "Alarme active" = Vrai
- Compteurs : Set "Counter" = 0 (reset)
- Flags : Set "Maintenance due" = Vrai
- Documentation : Set "Last error" = "Temperature high"
Exemple pratique
Déclencheur: Température > 85°C
Action 1: Set Attribute "Over temp" = Vrai
Action 2: Set Attribute "Alert level" = 3
Résultat: Mémorisation de l'état pour autre automation
Considérations
- L'attribut doit exister dans le modèle
- Pas d'ordre garanti si plusieurs Set Attributes
- Useful pour déclencher d'autres automations
2. Webhook
Description : Envoie une requête HTTP POST à une URL externe
Configuration :
URL: https://mon-systeme.com/webhook
Corps (optionnel):
{
"event": "temperature_alert",
"device": "Fraiseuse1",
"value": 85.2,
"timestamp": "2024-12-10T14:30:00Z"
}
Résultat: POST envoyé à l'URL
Cas d'usage
- Slack/Teams : Envoyer notification
- ERP : Mise à jour production
- Email : Via service IFTTT/Zapier
- Système monitoring : Envoyer événement
- Base de données : Enregistrer données
Configuration détaillée
URL :
- Point d'entrée du service cible
- Doit être HTTPS (sécurisé)
- Exemple :
https://hooks.slack.com/services/...
Corps personnalisé :
{
"device_id": "fraiseuse_1",
"event_type": "temperature_alert",
"temperature": 85.5,
"unit": "C",
"timestamp": "2024-12-10T14:30:00Z",
"action": "ALERT_OPERATOR"
}
Exemple pratique : Slack
Déclencheur: Température > 85°C
Action: Webhook
URL: https://hooks.slack.com/services/YOUR_WEBHOOK_ID
Corps:
{
"text": "🔴 ALERTE TEMPÉRATURE",
"attachments": [{
"color": "danger",
"title": "Fraiseuse 1",
"text": "Température dépasse 85°C",
"fields": [{
"title": "Valeur",
"value": "85.5°C"
}]
}]
}
Résultat: Message Slack envoyé automatiquement
Limitations
- POST uniquement (sauf HTTP personnalisé)
- Timeout : ~10 secondes
- La cible doit être accessible depuis internet
3. HTTP
Description : Envoie une requête HTTP personnalisée (GET, POST, PUT, DELETE, etc.)
Configuration :
Méthode: GET / POST / PUT / DELETE
URL: https://mon-api.com/api/endpoint
En-têtes (optionnel):
Authorization: Bearer token123
Content-Type: application/json
Corps (optionnel):
Selon la méthode
Résultat: Requête HTTP envoyée
Méthodes disponibles
| Méthode | Usage | Exemple |
|---|---|---|
| GET | Récupérer données | Déclencher alarme externe |
| POST | Créer/Envoyer | Envoyer événement |
| PUT | Mettre à jour | Mettre à jour état |
| DELETE | Supprimer | Supprimer enregistrement |
Cas d'usage
- APIs personnalisées : Contrôle d'équipements
- Intégrations complexes : Systèmes sur mesure
- Authentification : Token Bearer, Basic Auth
- Mise à jour distante : PUT vers serveur
Exemple pratique : API personnalisée
Déclencheur: État machine = Arrêt
Action: HTTP
Méthode: PUT
URL: https://mon-systeme.com/api/machines/fraiseuse1/state
En-tête: Authorization: Bearer my_api_key
Corps:
{
"state": "stopped",
"timestamp": "2024-12-10T14:30:00Z",
"reason": "automation"
}
Résultat: Machine arrêtée via API distante
4. JSON (Avancé)
Description : Configuration JSON personnalisée pour intégrations complexes
Cas d'usage :
- Intégrations très spécifiques
- APIs complexes avec authentification
- Logique métier personnalisée
Disponibilité : Visible dans l'interface (voir capture)
Chaîner les actions
Vous pouvez exécuter plusieurs actions en séquence :
Déclencheur: Température > 85°C
Action 1: Set Attribute "Alert" = Vrai
Action 2: Webhook vers Slack
Action 3: Webhook vers Email service
Action 4: Set Attribute "Alert count" += 1
Résultat: Toutes les actions exécutées en chaîne
Ordre d'exécution
Les actions s'exécutent dans l'ordre de configuration.
Si une action échoue, les suivantes continuent (généralement).
Dépannage
Le Webhook ne reçoit rien
- Vérifiez que l'URL est correcte
- Assurez-vous que l'URL est accessible de internet
- Vérifiez les logs du service cible
- Testez avec un service publique (requestbin.com)
L'HTTP retourne erreur 403 / 401
- Vérifiez l'authentification (token, credentials)
- Vérifiez les en-têtes (Content-Type, etc.)
- Testez avec Postman d'abord
L'action Set Attribute ne change pas la valeur
- Vérifiez que l'attribut existe
- Assurez-vous que le type correspond (Number, Boolean, etc.)
- Vérifiez les permissions
Bonnes pratiques
Webhooks sécurisés
- Utilisez HTTPS, jamais HTTP
- Ne mettez pas de tokens sensibles en clair
- Validez les tokens côté service cible
- Loggez les requêtes pour audit
Gestion d'erreurs
- Configurez retry/timeout
- Loggez les failures avec Set Attribute
- Créez une automation de fallback
Performance
- Ne déclenchez pas trop d'actions en même temps
- Limitez la fréquence des webhooks
- Groupez les événements si possible
Prochaines étapes
- Exemples - Cas réels et templates
- Créez vos premières automations
- Scheduling - Intégrez avec horaires
Astuce : Testez d'abord avec Set Attribute (local), puis ajoutez les Webhooks (externes).