RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
IP address - It's not necessary to explicitly pass the IP address if this API is called from a device. In fact, it's discouraged since XConf will use the source IP address in the http request. If this API is called from another source (e.g. laptop), then the IP address of the device should be passed. In any case, a non-routable IP address (e.g. 10.x, 192.168.x) should not be passed to XConf. A non-routable IP address may be used in a warehouse. When a request to XConf comes from the warehouse, the IP address is converted to a NAT address.
Request to retrieve firmware configuration.
Request: http://<host>:<port>/xconf/swu/stb?eStbMac=B4:F2:E8:79:B8:94&env=QA&model=X1&ipAddress=10.20.30.43&firmwareVersion=test1 Header: Accept: application/json Response example { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "file-rpi3", "firmwareVersion": "RPI_generic_image", "rebootImmediately": false, "firmwareLocation": "192.168.201.2", "ipv6FirmwareLocation": "1991:db8::ff00:42:2014" }
Firmware Config request
http://<host>:<port>/xconf/swu/stb?eStbMac=12:22:33:44:55:66&ipAddress=1.1.1.1
Header
Accept: application/json OR Accept: application/xml
Response example
"<h2>404 NOT FOUND</h2><div>Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@790d9a3a[\r\n estbMac=12:22:33:44:55:66\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=<null>\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2017-06-19T15:01:00.000\r\n ipAddress=1.1.1.1\r\n]\ndid not match any rule.</div>"
Request to noop rule.
Firmware Config request
http://<host>:<port>/xconf/swu/stb?eStbMac=DD:DD:DD:DD:DD:D2
Header
Accept: application/json OR Accept: application/xml
Response example
"<h2>404 NOT FOUND</h2><div>Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@6210d0ba[\r\n estbMac=DD:DD:DD:DD:DD:D2\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=<null>\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2017-06-19T14:15:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched NO OP MAC_RULE 43f5ffb9-cf52-422c-8169-790149ac1316: test_noop_rule\n received NO config.</div>"
Firmware Config request
http://<host>:<port>/xconf/swu/stb?eStbMac=12:34:56:78:89:AB&env=qwerty&model=asdf
Header
Accept: application/json OR Accept: application/xml
Response example
"<h2>404 NOT FOUND</h2><div>Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@ba5a8da[\r\n estbMac=12:34:56:78:89:AB\r\n env=qwerty\r\n model=asdf\r\n firmwareVersion=<null>\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2017-06-19T14:23:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE 43f5ffb9-cf52-422c-8169-790149ac1316: test_noop_rule\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1\r\n ipv6FirmwareLocation=2001:558:fe15:13::a296:e4b3\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter GLOBAL_PERCENT[ FirmwareRule{id='GLOBAL_PERCENT', name='GLOBAL_PERCENT', type=GLOBAL_PERCENT} ]</div>"
Request to rule, blocked by IP filter.
Firmware Config request
http://<host>:<port>/xconf/swu/stb?eStbMac=DD:DD:DD:DD:DD:D2&ipAddress=1.1.1.1
Header
Accept: application/json OR Accept: application/xml
Response example
"<h2>404 NOT FOUND</h2><div>Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@c8e848a[\r\n estbMac=DD:DD:DD:DD:DD:D2\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=<null>\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2017-06-19T14:29:00.000\r\n ipAddress=1.1.1.1\r\n]\n matched MAC_RULE 43f5ffb9-cf52-422c-8169-790149ac1316: test_noop_rule\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1\r\n ipv6FirmwareLocation=2001:558:1020:1:250:56ff:fe94:646f\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter IP_FILTER [ 53b140c4-ef1d-432b-822b-00400f395d0c blocking_by_ip_rule ]</div>"
Firmware configuration - /xconf/swu/bse
Firmware Config request
http://<host>:<port>/xconf/swu/bse?ipAddress=100.71.216.10 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "location": "69.252.80.69", "ipv6Location": "2001:558:fe15:13::a296:e4b3", "protocol": "tftp", "modelConfigurations": [ { "model": "RPI-V", "firmwareFilename": "rdk-generic-hybrid-image-20190106221326.sdimg", "firmwareVersion": "rdk-generic-hybrid-image-20190106221326" }, { "model": "RPI-B", "firmwareFilename": "rdk-generic-broadband-image-20200101201216.sdimg", "firmwareVersion": "rdk-generic-broadband-image-20200101201216" } ] } |
Request to get last change log.
FirmwareRules
http://<host>:<port>/estbfirmware/lastlog?mac=CC:CC:CC:CC:CC:C2 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "input": { "estbMac": "CC:CC:CC:CC:CC:C2", "env": "ASDF", "model": "ASDF", "firmwareVersion": "1", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "10/18/2016 12:51:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "11111111111111", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@23fe12cd[\r\n estbMac=CC:CC:CC:CC:CC:C2\r\n env=ASDF\r\n model=ASDF\r\n firmwareVersion=1\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-10-18T12:51:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE f0362812-1777-4109-8a81-7f8907566d07: 11111111111111\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1\r\n ipv6FirmwareLocation=2001:558:1020:1:250:56ff:fe94:646f\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "1", "firmwareVersion": "1", "rebootImmediately": false, "firmwareLocation": "162.150.228.179", "ipv6FirmwareLocation": "2001:558:1020:1:250:56ff:fe94:646f" } } |
Request to get all change logs.
FirmwareRules
http://<host>:<port>/estbfirmware/changelogs?mac=CC:CC:CC:CC:CC:C2 |
Header
Accept: application/json or Accept: application/xml |
Response example
[ { "input": { "estbMac": "CC:CC:CC:CC:CC:C2", "firmwareVersion": "asdf", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "12/16/2016 13:55:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "11111111111111", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@4f733919[\r\n estbMac=CC:CC:CC:CC:CC:C2\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=asdf\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-12-16T13:55:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE f0362812-1777-4109-8a81-7f8907566d07: 11111111111111\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1.bin\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1.bin\r\n ipv6FirmwareLocation=<null>\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "1.bin", "firmwareLocation": "162.150.228.179", "firmwareVersion": "1.bin", "rebootImmediately": false } }, { "input": { "estbMac": "CC:CC:CC:CC:CC:C2", "firmwareVersion": "1", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "12/16/2016 13:55:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "11111111111111", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@c277e2a[\r\n estbMac=CC:CC:CC:CC:CC:C2\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=1\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-12-16T13:55:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE f0362812-1777-4109-8a81-7f8907566d07: 11111111111111\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1.bin\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1.bin\r\n ipv6FirmwareLocation=<null>\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "1.bin", "firmwareLocation": "162.150.228.179", "firmwareVersion": "1.bin", "rebootImmediately": false } }, { "input": { "estbMac": "CC:CC:CC:CC:CC:C2", "firmwareVersion": "2", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "12/16/2016 13:53:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "11111111111111", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@32c0d2ed[\r\n estbMac=CC:CC:CC:CC:CC:C2\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=2\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-12-16T13:53:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE f0362812-1777-4109-8a81-7f8907566d07: 11111111111111\n received config: FirmwareConfig[\r\n description=1\r\n supportedModelIds=[1, ASDF]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=1.bin\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=1.bin\r\n ipv6FirmwareLocation=<null>\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=5d9579b2-21f1-45a4-925f-88ed28e75892]\n was blocked/modified by filter SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "1.bin", "firmwareLocation": "162.150.228.179", "firmwareVersion": "1.bin", "rebootImmediately": false } } ] |
Xconf API which will help determine if firmwareVersion meets minimum check
API will take in five parameters.
1. estbMac
2. ipAddress
3. firmwareVersion
4. model
5. env
API will return 400 response if any of the above fields are missing in the request.
API should work from in memory cache. All existing rules should be processed for incoming context and JSON response should contain hasMinimumFirmware=true or hasMinimumFirmware=false depending on outcome of rule processing.
hasMinimumFirmware flag should be set to false only in following case:
It should be true in all other cases. Some examples (may not be exhaustive) are listed below :
This API will process MAC rules.
Firmware Config request
http://<host>:<port>/estbfirmware/checkMinimumFirmware?estbMac=5C:8F:E0:A5:86:E0&ipAddress=1.1.1.1&firmwareVersion=1&model=1&env=1 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "hasMinimumFirmware": true } |
Log Upload Settings request
http://<host>:<port>/loguploader/getSettings?estbIP=60.70.80.90&env=DEV&firmwareVersion=10.12 |
Response example
{ "urn:settings:GroupName": null, "urn:settings:CheckOnReboot": false, "urn:settings:CheckSchedule:cron": null, "urn:settings:CheckSchedule:DurationMinutes": null, "urn:settings:CheckSchedule:StartDate": null, "urn:settings:CheckSchedule:EndDate": null, "urn:settings:LogUploadSettings:Message": null, "urn:settings:LogUploadSettings:Name": null, "urn:settings:LogUploadSettings:NumberOfDays": null, "urn:settings:LogUploadSettings:UploadRepositoryName": null, "urn:settings:LogUploadSettings:UploadOnReboot": null, "urn:settings:LogUploadSettings:UploadImmediately": false, "urn:settings:LogUploadSettings:upload": null, "urn:settings:LogUploadSettings:LogFiles": null, "urn:settings:LogUploadSettings:LogFiles:StartDate": null, "urn:settings:LogUploadSettings:LogFiles:EndDate": null, "urn:settings:LogUploadSettings:UploadSchedule:cron": null, "urn:settings:LogUploadSettings:UploadSchedule:levelone:cron": null, "urn:settings:LogUploadSettings:UploadSchedule:leveltwo:cron": null, "urn:settings:LogUploadSettings:UploadSchedule:levelthree:cron": null, "urn:settings:LogUploadSettings:UploadSchedule:DurationMinutes": null, "urn:settings:LogUploadSettings:UploadSchedule:StartDate": null, "urn:settings:LogUploadSettings:UploadSchedule:EndDate": null, "urn:settings:VODSettings:Name": "fdas", "urn:settings:VODSettings:LocationsURL": "http://vod7.location.com/", "urn:settings:VODSettings:SRMIPList": {}, "urn:settings:TelemetryProfile": { "id": "fcb969ec-851e-4d80-8452-91f835516e80", "telemetryProfile": [ { "header": "qwer", "content": "yui", "type": "op", "pollingFrequency": "3000" } ], "schedule": "10 10 * * *", "expires": 0, "telemetryProfile:name": "Profile2", "uploadRepository:URL": "amazon.com", "uploadRepository:uploadProtocol": "S3" } } |
CheckNow request
http://<host>:<port>/loguploader/getSettings?estbIP=60.70.80.90&env=DEV&firmwareVersion=10.12&checkNow=true |
Response example
{ "id": "fcb969ec-851e-4d80-8452-91f835516e80", "telemetryProfile": [ { "header": "qwer", "content": "yui", "type": "op", "pollingFrequency": "3000" } ], "schedule": "10 10 * * *", "expires": 0, "telemetryProfile:name": "Profile2", "uploadRepository:URL": "amazon.com", "uploadRepository:uploadProtocol": "S3" } |
Request to retrieve firmware configuration. Percent Filter and Time filter will be ignored.
Firmware Config request
http://<host>:<port>/psg/swu/stb?eStbMac=B4:F2:E8:79:B8:94&env=QA&model=X1&ipAddress=10.20.30.43&firmwareVersion=test1 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "firmwareDownloadProtocol": "tftp", "firmwareFilename": "file-pac3", "firmwareVersion": "PACXI3_2.0._DEVse", "rebootImmediately": false, "firmwareLocation": "192.168.201.2", "ipv6FirmwareLocation": "1991:db8::ff00:42:2014" } |
Request to retrieve firmware configuration. Percent Filter and Time filter will be ignored.
Firmware Config request
http://<host>:<port>/psg/swu/bse/ipAddress=100.71.216.10 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "location": "69.252.80.69", "protocol": "tftp", "modelConfigurations": [ { "model": "RPI-V", "firmwareFilename": "rdk-generic-hybrid-image-20190106221326.sdimg", "firmwareVersion": "rdk-generic-hybrid-image-20190106221326" }, { "model": "RPI-B", "firmwareFilename": "rdk-generic-broadband-image-20200101201216.sdimg", "firmwareVersion": "rdk-generic-broadband-image-20200101201216" } ] } |
Request to get last change log.
FirmwareRules
http://<host>:<port>/psg/lastlog?mac=B4:F2:E8:79:B8:94 |
Header
Accept: application/json or Accept: application/xml |
Response example
{ "input": { "estbMac": "B4:F2:E8:79:B8:94", "env": "QA", "model": "GXG5", "firmwareVersion": "test1", "bypassFilters": [ "GLOBAL_PERCENT", "TIME_FILTER", "PercentFilter", "ENV_MODEL_PERCENT" ], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "05/24/2016 18:57:00", "ipAddress": "10.20.30.43", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "ENV_MODEL_HARDWARE", "name": "RuleQA_X1_1.2.3", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@282a68ed[\r\n estbMac=B4:F2:E8:79:B8:94\r\n env=QA\r\n model=GXG5\r\n firmwareVersion=test1\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[GLOBAL_PERCENT, TIME_FILTER, PercentFilter, ENV_MODEL_PERCENT]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-05-24T18:57:00.000\r\n ipAddress=10.20.30.43\r\n]\n matched ENV_MODEL_HARDWARE 62af2be5-a660-4127-9127-2edd06b86858: RuleQA_X1_1.2.3\n received config: FirmwareConfig[\r\n description=PACXI3-desc1\r\n supportedModelIds=[PACXI3, GXG5]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=file-pac3\r\n firmwareLocation=192.168.201.2\r\n firmwareVersion=PACXI3_2.0._DEVse\r\n ipv6FirmwareLocation=1991:db8::ff00:42:2014\r\n upgradeDelay=<null>\r\n rebootImmediately=false\r\n id=9264d2b7-6c9c-477c-9f75-0da2ddaac34e]\n was blocked/modified by filter SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "config": { "id": "9264d2b7-6c9c-477c-9f75-0da2ddaac34e", "updated": 1444857563223, "description": "PACXI3-desc1", "supportedModelIds": [ "PACXI3", "GXG5" ], "firmwareDownloadProtocol": "tftp", "firmwareFilename": "file-pac3", "firmwareVersion": "PACXI3_2.0._DEVse", "rebootImmediately": false, "firmwareLocation": "192.168.201.2", "ipv6FirmwareLocation": "1991:db8::ff00:42:2014" } } |
Request to get all change logs.
Request
http://<host>:<port>/psg/changelogs?mac=5C:8F:E0:A5:86:E0 |
Header
Accept: application/json or Accept: application/xml |
Response
[ { "input": { "estbMac": "5C:8F:E0:A5:86:E0", "firmwareVersion": "ff", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "12/16/2016 14:11:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "Arris_XB3_DevOps", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true }, { "type": "REBOOT_IMMEDIATELY_FILTER", "name": "Arris_XB3_test", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@1a9f8c9b[\r\n estbMac=5C:8F:E0:A5:86:E0\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=ff\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-12-16T14:11:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE 44ac4348-7e76-4710-b64d-0d92baf388de: Arris_XB3_DevOps\n received config: FirmwareConfig[\r\n description=tg1682_2.0p2s4_prodse_signed\r\n supportedModelIds=[TG1682G]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=tg1682_2.0p2s4_prodse_signed.bin.ccs\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=TG1682_2.0p2s4_PRODse\r\n ipv6FirmwareLocation=<null>\r\n upgradeDelay=<null>\r\n rebootImmediately=true\r\n id=64ba7bfb-db90-4f7d-8271-1d7a61273cef]\n was blocked/modified by filter REBOOT_IMMEDIATELY_FILTER[ FirmwareRule{id='539dfdae-fb14-4066-a3b1-6d10066aa31f', name='Arris_XB3_test', type=REBOOT_IMMEDIATELY_FILTER} ]", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "tg1682_2.0p2s4_prodse_signed.bin.ccs", "firmwareLocation": "162.150.228.179", "firmwareVersion": "TG1682_2.0p2s4_PRODse", "rebootImmediately": true } }, { "input": { "estbMac": "5C:8F:E0:A5:86:E0", "firmwareVersion": "asdf", "bypassFilters": [], "forceFilters": [], "capabilities": [], "timeZone": "UTC", "time": "12/16/2016 14:10:00", "ipAddress": "0:0:0:0:0:0:0:1", "rcdl": false, "rebootDecoupled": false, "supportsFullHttpUrl": false }, "rule": { "type": "MAC_RULE", "name": "Arris_XB3_DevOps", "noop": false }, "filters": [ { "type": "DownloadLocationRoundRobinFilter", "id": "SINGLETON_DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER", "name": "DOWNLOAD_LOCATION_ROUND_ROBIN_FILTER_VALUE", "noop": true }, { "type": "REBOOT_IMMEDIATELY_FILTER", "name": "Arris_XB3_test", "noop": true } ], "explanation": "Request: com.comcast.xconf.estbfirmware.EstbFirmwareContext$Converted@1404ed57[\r\n estbMac=5C:8F:E0:A5:86:E0\r\n env=<null>\r\n model=<null>\r\n firmwareVersion=asdf\r\n ecmMac=<null>\r\n receiverId=<null>\r\n controllerId=<null>\r\n channelMapId=<null>\r\n vodId=<null>\r\n bypassFilters=[]\r\n forceFilters=[]\r\n capabilities=[]\r\n timeZone=UTC\r\n time=2016-12-16T14:10:00.000\r\n ipAddress=0:0:0:0:0:0:0:1\r\n]\n matched MAC_RULE 44ac4348-7e76-4710-b64d-0d92baf388de: Arris_XB3_DevOps\n received config: FirmwareConfig[\r\n description=tg1682_2.0p2s4_prodse_signed\r\n supportedModelIds=[TG1682G]\r\n firmwareDownloadProtocol=tftp\r\n firmwareFilename=tg1682_2.0p2s4_prodse_signed.bin.ccs\r\n firmwareLocation=162.150.228.179\r\n firmwareVersion=TG1682_2.0p2s4_PRODse\r\n ipv6FirmwareLocation=<null>\r\n upgradeDelay=<null>\r\n rebootImmediately=true\r\n id=64ba7bfb-db90-4f7d-8271-1d7a61273cef]\n was blocked/modified by filter REBOOT_IMMEDIATELY_FILTER[ FirmwareRule{id='539dfdae-fb14-4066-a3b1-6d10066aa31f', name='Arris_XB3_test', type=REBOOT_IMMEDIATELY_FILTER} ]", "config": { "firmwareDownloadProtocol": "tftp", "firmwareFilename": "tg1682_2.0p2s4_prodse_signed.bin.ccs", "firmwareLocation": "162.150.228.179", "firmwareVersion": "TG1682_2.0p2s4_PRODse", "rebootImmediately": true } } ] |
Request
http://<host>:<port>/featureControl/getSettings?estbMacAddress=8C:00:34:00:99:00&model=XYZ&channelMapId=1234aa |
Header
Accept: application/json or Accept: application/xml |
Response
{ "featureControl": { "features": [ { "name": "likeSimple", "effectiveImmediate": true, "enable": true, "configData": { "like": "simple" } } ], "configset-id": "2c628aa6-7372-4b2a-bbcc-2fe8a33b1b3d", "configset-label": "likeSimple" } } |