Déclencher un Alarm Notification Pipeline par script

Déclencher un Alarm Notification Pipeline par script

Voici un script Python qui vous permet de déclencher un pipeline de notification d'alarme.
L'alarme ne doit pas nécessairement exister.
Le script ne fonctionne que dans le scope de la gateway.
Je recommande de le placer dans un script Project Library et de l'appeler à partir d'un Gateway Event, d'un Tag Event asynchrone ou depuis le client Perspective.

  1. # GATEWAY SCOPE
  2. def triggerAlarmPipeline(project, pipelineName, provider, tagPath, alarmName):
  3. from com.inductiveautomation.ignition.gateway import IgnitionGateway
  4. from com.inductiveautomation.ignition.common.alarming import BasicAlarmEvent, AlarmPriority
  5. from com.inductiveautomation.ignition.common import QualifiedPath
  6. from java.util import UUID
  7. # AlarmPipelineManager
  8. context = IgnitionGateway.get()
  9. moduleManager = context.getModuleManager()
  10. AlarmNotificationGatewayHook = moduleManager.getModule("com.inductiveautomation.alarm-notification").getHook()
  11. AlarmPipelineManager = AlarmNotificationGatewayHook.getAlarmPipelineManager()
  12. # Alarm Event
  13. pipelineQualifiedPath = QualifiedPath.parseSafe("prov:" + provider + ":/tag:" + tagPath + ":/alm:" + alarmName + ":/almevt:" + str(UUID.randomUUID()))
  14. AlarmEvent = BasicAlarmEvent(pipelineQualifiedPath, alarmName, AlarmPriority.highest())

  15. # Pipeline
  16. pipelineQualifiedPath = QualifiedPath.parseSafe("project:" + project + ":/pipeline:" + pipelineName)
  17. # Pipeline Evaluation
  18. # Loggers PipelineManager & Pipeline
  19. AlarmPipelineManager.evaluate(pipelineQualifiedPath, AlarmEvent)

  20. triggerAlarmPipeline("Ticket4030", "Test", "MyProviderName", "MyTagPath", "MyAlarmName")
    • Related Articles

    • Etendre un disque sous Ubuntu

      100Go ont été ajouté la VM Linux mais la taille du disque n'a pas changé df -h Entrer la commande ci-dessous pour afficher l’ensemble des disques et des partitions : sudo lsblk ou sudo fdisk -l. Maintenant, on va passer au chose sérieuses afin de ...