Action policy

Events related to the alarming on device activity/state change/event processing can be notified by email or sms. The notification triggering and actions are defined in an action policy, provisioned in Live Objects.

Provisioning

To create a new action policy linked with an event rule :

Endpoint:

POST /api/v1/event2action/actionPolicies
An action policy has the following top level data representation (in this example, an event linked to state change event) :
{
    "id": "6c95837b-251d-41d8-95f1-42facdf8e71e"
    "name": "name-aea80c1d-5777-4e20-822c-5e6871f428e5",
    "enabled": true,
    "triggers": {
        "stateChange": {
            "version": 1,
            "filter": {
                "ruleIds": ["state-change-event-3422c5ac-de95-4727-855a-39d43902b7b3"]
            }
       }
    },
    "actions:" {
        "emails": [{
           "to": ["notification@orange.com"],
           "cc": ["cc@orange.com"],
           "cci": ["cci@orange.com"],
           "subjectTemplate": "State change for {{stateKey}}",
           "contentTemplate": "{{stateKey}} change from state {{previousState}} to state {{newState}} at {{timestamp}}"
        }],
        "sms": [{
            "destinationPhoneNumbers": ["+33601234567"],
            "contentTemplate": "{{stateKey}} new state {{newState}} at {{timestamp}}"
        }],
        "httpPush": [{
            "webhookUrl": "https://hooks.myservice.com/services/SOMEWEBHOOKREFERENCE",
            "headers": {"authorization": ["Bearer 00000000-0000-0000-0000-000000000000"]},
            "retryOnFailure": true,
            "content": "{\"text\": \"Devices {{deviceIds}} activity change triggered by activity rule: {{ruleIds}} : at {{timestamp}}\"}"
        }],
        "fifoPublish": [{
            "fifoName": "myFifo",
            "noRetention": false
        }],
        "azureEventHubs":[{
            "eventHubsNamespace": "myEventHubsNamespace",
            "eventHubName":"myEventHubName",
            "sharedAccessKeyName":"mySharedAccessKeyName",
            "sharedAccessKey":"mySharedAccessKey",
            "content":"{\"text\": \"Devices {{deviceIds}} activity change triggered by activity rule: {{ruleIds}} : at {{timestamp}}\"}",
            "retryOnFailure":false
        }]
      }
    }
}

The field id is auto generated by Live Objects and added in the POST response object.

field name is required description

name

optional

Defines a user friendly name for the action policy

enable

required

Enables or disables the action policy

triggers

required

Defines the type of trigger that will start an action. It can be one of the following :

  • deviceActivity

  • matchingFired

  • stateChange

Note: triggers object should have exactly one trigger defined.

actions

required

Object that defines the action that will be started upon a trigger activation
Note: actions object should not be empty. At least one action should be defined.

actions.emails

optional

A collection of Email actions (see Email notification section)

actions.sms

optional

A collection of SMS actions (see SMS notification section)

actions.httpPush

optional

A collection of HTTP push actions (see HTTP Push notification section)

actions.fifoPublish

optional

A collection of FIFO publish actions (see FIFO notification section)

actions.azureEventHubs

optional

A collection of Azure Event Hubs actions (see Azure Event Hubs notification section)

To retrieve your action policy:

Endpoint:

GET /api/v1/event2action/actionPolicies/{policyId}