Cisco Cisco Prime Home 6.3 Developer's Guide

Page of 78
Cisco Prime Home – Integration Guide
 
 
OL-28558-01   v5.1
 
58 
feature("Using the APIs to interact with the device lifecycle") { 
given("a subscriber code, device oui / serial number") 
val subscriberCode = "life-cycle-use-case-subscriber" 
val deviceOui = "001A2B" 
val deviceSerialNumber = "001A2B999999" 
 
scenario("Setup: Create a new subscriber for the device") { 
 
val subscriber = 
subscriberService.createSubscriber(subscriberCode) 
subscriber.setEmailAddress("%s@isp.com".format(subscriberCode)) 
subscriberService.updateSubscriber(subscriberCode,subscriber
 
scenario("Setup: Create a new future device, associated with  
the subscriber") { 
val caql = "device with oui: %s and serialNumber:%s".format 
(deviceOui, deviceSerialNumber) 
val deviceSearchResults = searchService.query(caql) 
if (deviceSearchResults.resultCount == 0) { 
given("that the device does not pre-exist in the system") 
then("create the device with a serial number, oui, and 
subscriber code") 
deviceService.createDevice(deviceSerialNumber, 
deviceOui, subscriberCode) 
} else { 
given("that the device is already in the system") 
val deviceId = deviceSearchResults.first.getLong("deviceId") 
val deviceData = deviceService.getDeviceData(deviceId) 
then("set that device's subscriber code on that device") 
deviceData.setSubscriberCode(subscriberCode) 
and("PUT the device data back to the server") 
deviceService.putDeviceData(deviceId, deviceData) 

 
scenario("Activation: The device checks into the ACS") { 
given("Device Initial Contact") 
then("The device becomes managed") 

scenario("Management: Change services") { 
given("an existing device") 
val caql = "device with oui: %s and 
serialNumber:%s".format(deviceOui, deviceSerialNumber) 
val deviceSearchResults = searchService.query(caql) 
val deviceId = deviceSearchResults.first.getLong("deviceId") 
val deviceActions = deviceService.getDeviceActions(deviceId) 
 
and("a service code") 
val serviceCode = "lifeCycleService" 
 
then("set the service to 'ENABLED'") 
deviceActions.setServiceEnabled(serviceCode, true) 
 
and("PUT the device actions back to the server") 
deviceService.putDeviceActions(deviceId, deviceActions) 

 
scenario("Management: Change settings") { 
given("an existing device") 
val caql = "device with oui: %s and 
serialNumber:%s".format(deviceOui, deviceSerialNumber) 
val deviceSearchResults = searchService.query(caql) 
val deviceId = deviceSearchResults.first.getLong("deviceId") 
val deviceData = deviceService.getDeviceData(deviceId)