Cisco Cisco Prime Home 6.3 Developer's Guide
Cisco Prime Home – Integration Guide
OL-28558-01 v5.1
56
/**
* creates a new device with a serial number and oui associated to
a subscriber
*
* services:
* GET /prime-home/api/v1/templates/device
* POST /prime-home/api/v1/devices
*
* @param sn device serial number
* @param oui device oui
* @param subscriberCode the unique identifier of the device's
subscriber
* @return the device's json object data, wrapped in a DeviceData
object
*/
a subscriber
*
* services:
* GET /prime-home/api/v1/templates/device
* POST /prime-home/api/v1/devices
*
* @param sn device serial number
* @param oui device oui
* @param subscriberCode the unique identifier of the device's
subscriber
* @return the device's json object data, wrapped in a DeviceData
object
*/
def createDevice(sn: String, oui: String, subscriberCode:String):
DeviceData = {
DeviceData = {
val deviceData = new
DeviceData(restTemplate.getForObject(deviceTemplateUrl,classOf[JSONOb
ject]))
ject]))
.setOuiSn(oui, sn)
.setSubscriberCode(subscriberCode)
.setSubscriberCode(subscriberCode)
val deviceId = new
DeviceData(restTemplate.postForObject(devicesUrl, deviceData.json,
classOf[JSONObject])).getDeviceId
classOf[JSONObject])).getDeviceId
getDeviceData(deviceId)
}
/**
/**
* deletes a device by it's unique numeric id
*
* services:
* DELETE /prime-home/api/v1/devices/{deviceId}
*
* @param deviceId the device's unique id
*/
*
* services:
* DELETE /prime-home/api/v1/devices/{deviceId}
*
* @param deviceId the device's unique id
*/
def deleteDevice(deviceId: Long): Unit = {
restTemplate.delete(deviceUrl(deviceId))
}
/**
/**
* gets the device's manipulable data.
*
* services:
* GET /prime-home/api/v1/devices/{deviceId}/data
*
* @param deviceId the device's unique id
* @return the device's data as a json object, wrapped in a
DeviceData object
*/
*
* services:
* GET /prime-home/api/v1/devices/{deviceId}/data
*
* @param deviceId the device's unique id
* @return the device's data as a json object, wrapped in a
DeviceData object
*/
def getDeviceData(deviceId: Long): DeviceData = {
new
DeviceData(restTemplate.getForObject(deviceDataUrl(deviceId),
classOf[JSONObject]))
classOf[JSONObject]))
}
/**
* updates the device's manipulable data.
*
* services:
* PUT /prime-home/api/v1/devices/{deviceId}/data
*
* @param deviceId the device's unique id
* @param deviceData the device's data to send to the server
* @return the device's updated data as a json object, wrapped in
a DeviceData object
*
* services:
* PUT /prime-home/api/v1/devices/{deviceId}/data
*
* @param deviceId the device's unique id
* @param deviceData the device's data to send to the server
* @return the device's updated data as a json object, wrapped in
a DeviceData object