Pelco Developer Network (PDN)

Quick Start Tutorial: DeviceSpy

Please note that Intel no longer hosts DeviceSpy. DeviceSpy has now fully transitioned into an open source project.


Overview

DeviceSpy is software that allows UPnP device detection, display of detailed information on every aspect of a UPnP device, action invocation, event monitoring and error handling. DeviceSpy is part of the open source Developer Tools for UPnP Technology project. Installation is easy. Simply download the Developer Tools for UPnP Technology project, double click on the installer, and follow the on-screen instructions.

Why do you want to use DeviceSpy? It is simply the easiest way to query a Pelco device's important attributes such as its URL, URN, the services it supports, and details on supported services. Moreover, it can easily generate certain service action requests to Pelco devices.

Startup

After a successful installation when you initially start DeviceSpy, you should see something similar to the screen above. In the example, we see a list of UPnP devices. When we select on of these devices, the right hand side of DeviceSpy will show information that is relevant to this device such as IP address, port, URN, and so on.

You may not always see a list of available UPnP devices, either when DeviceSpy first starts up or at any other point while using DeviceSpy. If this occurs, please refer to Refreshing the Device List below.


Device List

Refreshing the List

If at any point you do not feel that you are seeing a complete list of UPnP devices, simply click on View > Rescan network (or just press F5) to refresh your device list.

You may have to call 'Rescan network'' commnand a few times due to delays with UPnP announcements and so on.


Important Device Details

The device's IP address, port number, and UUID can easily be found in the details pane on the right side.


Service Listings

To examine a device's available services, simply click on the [+] icon to the left of the device.

The first tier of services are general services that typically all Pelco devices support. These services are normally:

  • DiagnosticReporting
  • PelcoConfiguration
  • SoftwareUpdate

The second tier of services are generally device specific services, though different devices can still support the same web service. For example both IP Cameras and NVRs support the VideoOutput web service. Like devices, selecting a specific service will display that service's pertinent information on the right application pane.
 

Service Details

Service ID

This is needed for all Endura web service calls.

 

Available Actions

To examine a service's available actions, simply click on the [+] icon to the left of the service. Like services, selecting a specific action will display that action's pertinent information on the right application pane.

Each action listing is presented like a function or method declaration. However there is one important different to note. What may seem to be a parameter declaration may or may not be an input parameter. In fact, it may be a return variable (as part of the action's response).


Invoking a Service

To begin invoking a particular action, simply doubleclick on the desired action to invoke. You should see a pop-up window. Depending on the action you may or may not be required to enter input parameters. These can range from simple strings to XML data that has a specific format. Other times, no input parameters are ever needed for some actions.

To view your request and the service action's response, right-click on the action's invoke window (seen above), and click on 'Show Packet Capture'.

DeviceSpy packet captures are usually not formatted very well. However it is very easy to copy it into an editor of your choice to get a better view of the messages being passed. Hint: IDEs such as Eclipse can automatically format XML.