Aller au contenu principal

Actions

Guide détaillé de tous les types d'actions disponibles

Ajouter une action

Une fois le déclencheur configuré :

  1. En bas du déclencheur, cliquez sur « + »
  2. Sélectionnez le type d'action
  3. Configurez l'action
  4. 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éthodeUsageExemple
GETRécupérer donnéesDéclencher alarme externe
POSTCréer/EnvoyerEnvoyer événement
PUTMettre à jourMettre à jour état
DELETESupprimerSupprimer 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

  1. Exemples - Cas réels et templates
  2. Créez vos premières automations
  3. Scheduling - Intégrez avec horaires

Astuce : Testez d'abord avec Set Attribute (local), puis ajoutez les Webhooks (externes).