Using Northbound Notifications

Using Northbound Notifications

Cisco Spaces: Detect and Locate can be configured to send notifications to a notification endpoint of your choice. You can find the configured notification from the NOTIFICATIONS menu.

Currently, the following notification types are supported:

  • Association: Generates a notification when a device is associated to a network or dissociated from a network.

  • Absence: Generates a notification when a device is undetected for more than 15 minutes.

  • LocationUpdate: Generating a notification when a device changes location, for example, between campuses, buildings, or floors.

  • In/Out: Generates a notification when a device is detected as moving into or moving out of a specific area in the location hierarchy.

Location Update (Northbound Notification)

This type of notification is generated when a device changes location, for example, between campuses, buildings, or floors. Supported device types are Rogue Client, Client, RFID Tag, Rogue AP, Interferer.

Figure 1. Location Update

The fields of the displayed Location Update page are described below:

  • Status: You can configure to restrict the notification generation based on whether the device is associated with the network or not (probing). You can select All if the status of the device does not matter.

  • Assigned Site: Check one or more areas (floor, campus, zone, building) by drilling down the map hierarchy. Check the All check box if the location of the device does not matter.

  • MAC Address list: If you want to generate notifications for specific devices, enter the specific MAC addresses here.

  • Receiver: Enter the destination to send the notification messages. Only HTTP and HTTPS are supported. Enter the hostname, port number, and URL.

  • Headers: You can configure to send additional information along with the notifications in these headers, for example, company-specific information like company name. You can enter multiple headers.

  • MAC Hashing: You can enable (or disable) the hashing of your MAC address to protect the MAC addresses sent in the notification. To do this, you must enter a hash key.

Notification Subscription Sample (JSON)

The following is a sample of the Location Update notification subscription:

{
    tenantId: '1001',
    id: "552a1a14-20cb-4581-855d-f3c9f120248e",
    name: "Test LocationUpdate Notification",
    type: "LocationUpdate",
    userid: "miczhao",
    enabled: true,
    internal: false,
    conditions: {
        deviceType: "Client",
        status: "Associated",
        hierarchy: {
            name: "System Campus -> SJC-24“,
            level: “CAMPUS”,
              campus: [“d12365e0ce514780aa2b5f01c7edaacd”],
              building: [“dbaf32ce320f4fe2a8935aebc387c8be”],
        }
        macAddressList: "11:22:33:44:55:66;11:22:33:44:55:67"
    },
    receiver: {
        url: "https://data.customer.com:443",
        messageFormat: "JSON",
        qos: "AT_MOST_ONCE",
        headers: {"Content-Type": "application/json", Accept: "application/json"}
    },
    enableMacScrambling: true,
    macScramblingSalt: "salt"
}
}

Absence (Northbound Notification)

This type of notification is generated when a device is undetected for more than 15 minutes. Supported device types are Client and RFID Tag.

Figure 2. Absence

The fields of the Absence page are described below:

  • MAC Address list: For device-specific notifications, enter the specific MAC addresses here.

  • Receiver: Enter destination to send the notification messages to. Only HTTP and HTTPS are supported. Enter the host IP address, port number, and URL.

  • Headers: Configure more headers, for example, company-specific information such as company name. Note that multiple headers can be added.

  • MAC Hashing: Enable (or disable) the hashing of your MAC address, to protect the MAC addresses sent in the notification. Now, you have to enter a hash key.

Association (Northbound Notification)

This type of notification is generated when one or more devices are associated to a network or dissociated from a network.

Figure 3. Association
  • Association: Enable this button to generate a notification when a device is associated with a network. Disable the button to generate a notification when a device is disassociated from the network.

  • Status: You can configure to restrict the notification generation based on whether device is associated with the network or not (probing). If the status of the device does not matter, choose All.

  • MAC Address list: If you want to generate notifications for specific devices, enter the specific MAC addresses here.

  • Receiver: Destination to send the notification messages. Only HTTP and HTTPS are supported. Enter the hostname, port number, and URL.

  • Headers: You can configure to send additional information along with the notifications in these headers, for example, company-specific information like company name. You can add multiple headers can be added.

  • MAC Hashing: You can enable (or disable) the hashing of your MAC address, to protect the MAC addresses sent in the notification. This requires you to enter a hash key.

Notification Subscription Sample (JSON)

The following is a sample of the Association notification subscription:

{
    tenantId: '2001',
    id: "552a1a14-20cb-4581-855d-f3c9f120248e",
    name: "Test Association Notification",
    type: “Association”,
    userid: “testuser”,
    enabled: true,
    intenal: false,
    conditions: {
        association: true,
        deviceType: “Client”,
        hierarchy: {
              name: “System Campus -> Building-24 -> 3rd Floor”,
              level: “FLOOR”,
              campus: [“d12365e0ce514780aa2b5f01c7edaacd”],
              building: [“dbaf32ce320f4fe2a8935aebc387c8be”],
              floor: [“2747871a29af4ab1989a4fb52b143552”]
        }
    },
    receiver: {
        url: "https://data.customer.com:443",
        messageFormat: "JSON",
        qos: "AT_MOST_ONCE",
        headers: {"Content-Type": "application/json", Accept: "application/json"}
    },
    enableMacScrambling: true,
    macScramblingSalt: "hashit"
}

In/Out (Northbound Notification)

This type of notification is generated when a device is detected as moving into or moving out of a specific area in the location hierarchy.

Figure 4. Absence

In/Out: Select the type of movement.

  • Configure In if you want a notification generated when a device enters the configured Assigned Site.

  • Configure Out if you want a notification generated when a device leaves the configured Assigned Site.

  • Configure No Change if the entry and exit of the device into Assigned Site is not required, but a simple location change within the Assigned site is sufficient.

  • Configure All, if both In and Out should generate notifications.

  • Status : Configure to restrict the notification generation based on whether device is associated with the network or not (probing). You can select All if the status of the device does not matter.

  • Assigned Site:Select one or more areas (floor, campus, zone, building) by drilling down the map hierarchy. Check the All checkbox if the location of the device does not matter. This field is required.

  • MAC Address list: If you want to generate notifications for specific devices, enter the specific MAC addresses here.

  • Receiver: Destination to send the notification messages. Only HTTP and HTTPS are supported. Enter the hostname, port number, and URL.

  • Headers: Configure to send additional Information along with the notifications in these headers, for example, company-specific information like company name. Multiple headers can be added.

  • MAC Hashing: You can enable (or disable) the hashing of your MAC address, to protect the MAC addresses sent in the notification. This requires you to enter a hash key.

Notification Subscription Sample (JSON)

The following is a sample of the In/Out notification subscritpion:

{
    tenantId: '2001',
    id: "552a1a14-20cb-4581-855d-f3c9f120248e",
    name: "Test InOut Notification",
    type: “InOut”,
    userid: “testuser”,
    enabled: true,
    intenal: false,
    conditions: {
        inout: “All”,
        deviceType: “Client”,
        status: “Associated”,
        hierarchy: {
              name: “System Campus -> Building-24 -> 3rd Floor”,
              level: “FLOOR”,
              campus: [“d12365e0ce514780aa2b5f01c7edaacd”],
              building: [“dbaf32ce320f4fe2a8935aebc387c8be”],
              floor: [“2747871a29af4ab1989a4fb52b143552”]
        }
        macAddressList: "11:22:33:44:55:66;11:22:33:44:55:67"
    },
    receiver: {
        url: "https://data.customer.com:443",
        messageFormat: "JSON",
        qos: "AT_MOST_ONCE",
        headers: {"Content-Type": "application/json", Accept: "application/json"}
    },
    enableMacScrambling: true,
    macScramblingSalt: "hashit"
}
}