From 6332fe98e17835479bdf9b0b5af19b4e9d2024b4 Mon Sep 17 00:00:00 2001 From: Amin Ben Romdhane Date: Fri, 12 Apr 2024 03:11:09 +0000 Subject: [PATCH] T#13964: Generate single datamodel.json from datamodel xmls --- .gitignore | 1 + docs/guide/libbbfdm-api_json_plugin_v1.md | 4 +- .../guide/libbbfdm-api_obj_param_extension.md | 19 +- gitlab-ci/tools-test.sh | 22 +- .../json/{tr181.json => datamodel.json} | 22756 +++++++++++++++- libbbfdm/dmtree/json/tr104.json | 13670 ---------- ...ull.xml => 00-tr-181-2-17-0-cwmp-full.xml} | 0 ...full.xml => 01-tr-181-2-17-0-usp-full.xml} | 0 ...full.xml => 02-tr-104-2-0-2-cwmp-full.xml} | 0 ...-full.xml => 03-tr-104-2-0-2-usp-full.xml} | 0 ...full.xml => 04-tr-135-1-4-1-cwmp-full.xml} | 0 ...-full.xml => 05-tr-135-1-4-1-usp-full.xml} | 0 tools/README.md | 36 +- tools/bbf_common.py | 9 +- tools/convert_dm_json_to_c.py | 91 +- tools/convert_dm_xml_to_json.py | 1242 +- tools/generate_dm.py | 6 +- tools/generate_dm_excel.py | 44 +- tools/generate_dm_xml.py | 4 +- tools/tools_input.json | 3 +- tools/validate_json_plugin.py | 6 +- 21 files changed, 23331 insertions(+), 14582 deletions(-) rename libbbfdm/dmtree/json/{tr181.json => datamodel.json} (83%) delete mode 100644 libbbfdm/dmtree/json/tr104.json rename test/tools/{tr-181-2-17-0-cwmp-full.xml => 00-tr-181-2-17-0-cwmp-full.xml} (100%) rename test/tools/{tr-181-2-17-0-usp-full.xml => 01-tr-181-2-17-0-usp-full.xml} (100%) rename test/tools/{tr-104-2-0-2-cwmp-full.xml => 02-tr-104-2-0-2-cwmp-full.xml} (100%) rename test/tools/{tr-104-2-0-2-usp-full.xml => 03-tr-104-2-0-2-usp-full.xml} (100%) rename test/tools/{tr-135-1-4-1-cwmp-full.xml => 04-tr-135-1-4-1-cwmp-full.xml} (100%) rename test/tools/{tr-135-1-4-1-usp-full.xml => 05-tr-135-1-4-1-usp-full.xml} (100%) diff --git a/.gitignore b/.gitignore index ece1077f..d0a4b900 100644 --- a/.gitignore +++ b/.gitignore @@ -9,3 +9,4 @@ bbfdmd/ubus/bbfdmd docs/index.md __pycache__ out +/datamodel diff --git a/docs/guide/libbbfdm-api_json_plugin_v1.md b/docs/guide/libbbfdm-api_json_plugin_v1.md index f4d6658a..0476887b 100644 --- a/docs/guide/libbbfdm-api_json_plugin_v1.md +++ b/docs/guide/libbbfdm-api_json_plugin_v1.md @@ -2,7 +2,7 @@ It is often required to extend datamodel parameters of the device, extending the datamodel parameters using json plugin is the simplest way for the same. -To extend the datamodel using json plugin, its required to be defined it, as it is defined in `TR181.json` file and then place that json in '/etc/bbfdm/json/' directory of device. +To extend the datamodel using json plugin, its required to be defined it, as it is defined in `datamodel.json` file and then place that json in '/etc/bbfdm/json/' directory of device. It is often the case, that the supported mapping might not handle all the scenarios, and required some structural changes to fulfill the new requirements, to make these plugins backward compatible with the older mappings some kind of check was required, which is can be solved with having a "version" field in the plugin, which describes the list of supported mappings with that specific version. This can be added as below: ```json @@ -130,7 +130,7 @@ And on these tree components, we can do: - Del - Operate/commands -If we skip multi-instance objects for some time, everything else is stand-along entity, I mean, one parameter is having one specific information, so for those parameters information could be fetched from `uci/ubus` or some external `cli` command. The `TR181.json` has all the required the information about the parameters except how to get it from the device. In json plugin, we solve that by introducing a new element in the tree called mapping, which describes how to process the operations on that specific datamodel parameter. +If we skip multi-instance objects for some time, everything else is stand-along entity, I mean, one parameter is having one specific information, so for those parameters information could be fetched from `uci/ubus` or some external `cli` command. The `datamodel.json` has all the required the information about the parameters except how to get it from the device. In json plugin, we solve that by introducing a new element in the tree called mapping, which describes how to process the operations on that specific datamodel parameter. ```json mapping: [ diff --git a/docs/guide/libbbfdm-api_obj_param_extension.md b/docs/guide/libbbfdm-api_obj_param_extension.md index bfdd9a2c..5bd6b125 100644 --- a/docs/guide/libbbfdm-api_obj_param_extension.md +++ b/docs/guide/libbbfdm-api_obj_param_extension.md @@ -2,23 +2,16 @@ As mentioned in README, all Data Models are stored in the **'dmtree'** folder. In order to implement a new object/parameter, you need to expand its get/set/add/delete functions and then save them in the right folder. -`bbfdm` library offers a tool to generate templates of the source code from json files placed under **'dmtree/json'**. So, any developer can fill these json files ([tr181](../../libbbfdm/dmtree/json/tr181.json) or [tr104](../../libbbfdm/dmtree/json/tr104.json)) with mapping field according to UCI, UBUS or CLI commands then generate the source code in C. +`bbfdm` library offers a tool to generate templates of the source code from json files placed under **'dmtree/json'**. So, any developer can fill the data model json file [data_model](../../libbbfdm/dmtree/json/datamodel.json) with mapping field according to UCI, UBUS or CLI commands then generate the source code in C. ```bash -$ ./convert_dm_json_to_c.py -Usage: convert_dm_json_to_c.py [Object path] -data model name: The data model(s) to be used, for ex: tr181 or tr181,tr104 +$ ./convert_dm_json_to_c.py +Usage: ./tools/convert_dm_json_to_c.py [Object path] Examples: - - convert_dm_json_to_c.py tr181 - ==> Generate the C code of tr181 data model in datamodel/ folder - - convert_dm_json_to_c.py tr104 - ==> Generate the C code of tr104 data model in datamodel/ folder - - convert_dm_json_to_c.py tr181,tr104 - ==> Generate the C code of tr181 and tr104 data model in datamodel/ folder - - convert_dm_json_to_c.py tr181 Device.DeviceInfo. + - ./tools/convert_dm_json_to_c.py + ==> Generate the C code of full data model in datamodel/ folder + - ./tools/convert_dm_json_to_c.py Device.DeviceInfo. ==> Generate the C code of Device.DeviceInfo object in datamodel/ folder - - convert_dm_json_to_c.py tr104 Device.Services.VoiceService.{i}.Capabilities. - ==> Generate the C code of Device.Services.VoiceService.{i}.Capabilities. object in datamodel/ folder ``` Below some examples of **UCI**, **UBUS** or **CLI** mappings: diff --git a/gitlab-ci/tools-test.sh b/gitlab-ci/tools-test.sh index 7983d080..0b0d6eca 100755 --- a/gitlab-ci/tools-test.sh +++ b/gitlab-ci/tools-test.sh @@ -14,12 +14,8 @@ exec_cmd_verbose pylint -d R,C,W0603 tools/*.py echo "********* Validate JSON Plugin *********" -echo "Validate BBF TR-181 JSON Plugin" -./tools/validate_json_plugin.py libbbfdm/dmtree/json/tr181.json -check_ret $? - -echo "Validate BBF TR-104 JSON Plugin" -./tools/validate_json_plugin.py libbbfdm/dmtree/json/tr104.json +echo "Validate BBF Data Model JSON Plugin" +./tools/validate_json_plugin.py libbbfdm/dmtree/json/datamodel.json check_ret $? echo "Validate X_IOPSYS_EU_Dropbear JSON Plugin" @@ -50,18 +46,8 @@ echo "Validate test overwrite Plugin" ./tools/validate_json_plugin.py test/vendor_test/test_overwrite.json check_ret $? -echo "Validate TR-181 JSON Plugin after generating from XML" -json_path=$(./tools/convert_dm_xml_to_json.py test/tools/tr-181-2-*-cwmp-full.xml test/tools/tr-181-2-*-usp-full.xml Device.) -./tools/validate_json_plugin.py $json_path -check_ret $? - -echo "Validate TR-104 JSON Plugin after generating from XML" -json_path=$(./tools/convert_dm_xml_to_json.py test/tools/tr-104-2-0-2-cwmp-full.xml test/tools/tr-104-2-0-2-usp-full.xml Device.Services.VoiceService.) -./tools/validate_json_plugin.py $json_path -check_ret $? - -echo "Validate TR-135 JSON Plugin after generating from XML" -json_path=$(./tools/convert_dm_xml_to_json.py test/tools/tr-135-1-4-1-cwmp-full.xml test/tools/tr-135-1-4-1-usp-full.xml Device.Services.STBService.) +echo "Validate Data Model JSON Plugin after generating from TR-181, TR-104 and TR-135 XML Files" +json_path=$(./tools/convert_dm_xml_to_json.py -d test/tools/) ./tools/validate_json_plugin.py $json_path check_ret $? diff --git a/libbbfdm/dmtree/json/tr181.json b/libbbfdm/dmtree/json/datamodel.json similarity index 83% rename from libbbfdm/dmtree/json/tr181.json rename to libbbfdm/dmtree/json/datamodel.json index eee07ee4..11185cd8 100644 --- a/libbbfdm/dmtree/json/tr181.json +++ b/libbbfdm/dmtree/json/datamodel.json @@ -246,7 +246,12 @@ "usp" ], "description": "The <> specifying the destination file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. Other transports MAY also be supported.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "FilterExpression": { "type": "string", @@ -368,7 +373,22291 @@ ], "description": "This object contains general services information.", "access": false, - "array": false + "array": false, + "Device.Services.VoiceService.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The top-level object for CPE with voice capabilities.", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "VoIPProfileNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "CodecProfileNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "InterworkNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "TrunkNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "CallLogNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> The value MUST be less than or equal to <>.", + "datatype": "unsignedInt" + }, + "TerminalNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Capabilities.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The overall capabilities of the VoIP CPE.", + "access": false, + "array": false, + "MaxLineCount": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of lines.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxExtensionCount": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of extensions.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxCallLogCount": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of call logs.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxSessionsPerLine": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of voice sessions supported for any given <> object. A value greater than one indicates support for CPE-provided conference calling. A value of -1 indicates no specific limit on the number of voice sessions per line.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxSessionsPerExtension": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of voice sessions supported for any given <> object. A value greater than one indicates support for CPE-provided conference calling. A value of -1 indicates no specific limit on the number of voice sessions per extension.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxSessionCount": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum total number of voice sessions supported across all <> objects. (This might differ from <> if each line can support more than one session for CPE-provided conference calling. This value MAY be less than the product of <> and <>.) A value of -1 indicates no specific limit on the number of voice sessions.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "NetworkConnectionModes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported network connection mode. <> Most entries MAY be appended with a version indicator in the form /X.Y. For example: SIP/2.0 The list MAY include vendor-specific modes, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyMode", + "list": { + "datatype": "string", + "pattern": [ + "SIP(/\\d+\\.\\d+)?", + "MGCP(/\\d+\\.\\d+)?", + "MGCP-NCS(/\\d+\\.\\d+)?", + "H\\.248(/\\d+\\.\\d+)?", + "H\\.323(/\\d+\\.\\d+)?", + "DSS1", + "FXO", + "X_.+" + ] + } + }, + "UserConnectionModes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported user connection mode. <> Most entries MAY be appended with a version indicator in the form /X.Y. For example: SIP/2.0 The list MAY include vendor-specific modes, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyMode", + "list": { + "datatype": "string", + "pattern": [ + "SIP(/\\d+\\.\\d+)?", + "DSS1", + "FXS", + "DECT(/\\d+\\.\\d+)?", + "Button", + "Virtual", + "X_.+" + ] + } + }, + "ToneFileFormats": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported tone file format. The specified file formats are raw codec data files, using one of the codecs listed below. Enumeration of: G.711MuLaw, G.711ALaw, G.729, MP3, WAV, AMR. The list MAY include vendor-specific -specific extensions, which MUST use the format defined in <>. Example: G.711MuLaw, MP3, X_EXAMPLE-COM_MyFileFormat If the CPE does not support tone files, this parameter MUST be <>.", + "list": { + "datatype": "string", + "enumerations": [ + "G.711MuLaw", + "G.711ALaw", + "G.729", + "MP3", + "WAV", + "AMR" + ] + } + }, + "RingFileFormats": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported ring file format. Enumeration of: MIDI, SMAF, RTTTL, MP3, WAV, AMR. The list MAY include vendor-specific-specific extensions, which MUST use the format defined in <>. Example: MIDI, AMR, X_EXAMPLE-COM_MyFileFormat If the CPE does not support ring files, this parameter MUST be <>.", + "list": { + "datatype": "string", + "enumerations": [ + "MIDI", + "SMAF", + "RTTTL", + "MP3", + "WAV", + "AMR" + ] + } + }, + "FacilityActions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The facility actions supported by this VoiceService. Enumeration of: AA_REGISTER, AA_ERASE, AA_INTERROGATE, CA_ACTIVATE, CCBS_ACTIVATE, CCBS_DEACTIVATE, CCBS_INTERROGATE, CCNR_ACTIVATE, CCNR_DEACTIVATE, CCNR_INTERROGATE, CFB_REGISTER, CFB_ACTIVATE, CFB_DEACTIVATE, CFB_ERASE, CFB_INTERROGATE, CFNR_REGISTER, CFNR_ACTIVATE, CFNR_DEACTIVATE, CFNR_ERASE, CFNR_INTERROGATE, CFNR_TIMER, CFT_ACTIVATE, CFT_DEACTIVATE, CFT_INTERROGATE, CFU_REGISTER, CFU_ACTIVATE, CFU_DEACTIVATE, CFU_ERASE, CFU_INTERROGATE, CLIR_ACTIVATE, CLIR_DEACTIVATE, CLIR_INTERROGATE, CP_INVOKE, CW_ACTIVATE, CW_DEACTIVATE, CW_INVOKE, DND_ACTIVATE, DND_DEACTIVATE, DND_INTERROGATE, EXT_INVOKE, LINE_INVOKE, MAILBOX_INVOKE, OCB_ACTIVATE, OCB_DEACTIVATE, OCB_INTERROGATE, PSO_ACTIVATE, PW_SET, SCF_ACTIVATE, SCF_DEACTIVATE, SCF_INTERROGATE, SCREJ_ACTIVATE, SCREJ_DEACTIVATE, SCREJ_INTERROGATE, SR_ACTIVATE, SR_DEACTIVATE, SR_INTERROGATE. The list MAY include vendor-specific Facility Actions, which MUST use the format defined in <>. Facility Actions are referenced in the VoiceService data model in the objects <.PrefixInfo..>> and <.ButtonMap.Button..>>.", + "list": { + "datatype": "string", + "enumerations": [ + "AA_REGISTER", + "AA_ERASE", + "AA_INTERROGATE", + "CA_ACTIVATE", + "CCBS_ACTIVATE", + "CCBS_DEACTIVATE", + "CCBS_INTERROGATE", + "CCNR_ACTIVATE", + "CCNR_DEACTIVATE", + "CCNR_INTERROGATE", + "CFB_REGISTER", + "CFB_ACTIVATE", + "CFB_DEACTIVATE", + "CFB_ERASE", + "CFB_INTERROGATE", + "CFNR_REGISTER", + "CFNR_ACTIVATE", + "CFNR_DEACTIVATE", + "CFNR_ERASE", + "CFNR_INTERROGATE", + "CFNR_TIMER", + "CFT_ACTIVATE", + "CFT_DEACTIVATE", + "CFT_INTERROGATE", + "CFU_REGISTER", + "CFU_ACTIVATE", + "CFU_DEACTIVATE", + "CFU_ERASE", + "CFU_INTERROGATE", + "CLIR_ACTIVATE", + "CLIR_DEACTIVATE", + "CLIR_INTERROGATE", + "CP_INVOKE", + "CW_ACTIVATE", + "CW_DEACTIVATE", + "CW_INVOKE", + "DND_ACTIVATE", + "DND_DEACTIVATE", + "DND_INTERROGATE", + "EXT_INVOKE", + "LINE_INVOKE", + "MAILBOX_INVOKE", + "OCB_ACTIVATE", + "OCB_DEACTIVATE", + "OCB_INTERROGATE", + "PSO_ACTIVATE", + "PW_SET", + "SCF_ACTIVATE", + "SCF_DEACTIVATE", + "SCF_INTERROGATE", + "SCREJ_ACTIVATE", + "SCREJ_DEACTIVATE", + "SCREJ_INTERROGATE", + "SR_ACTIVATE", + "SR_DEACTIVATE", + "SR_INTERROGATE" + ] + } + }, + "CodecNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Capabilities.SIP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP-specific capabilities (as defined in <>).", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.Capabilities.SIP.Client.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP client capabilities.", + "access": false, + "array": false, + "Extensions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported SIP extension method among the methods listed in the IANA SIP parameters registry (see <>). SIP extension methods MUST be in the form of the method name in upper case. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : REFER : INFO : X_EXAMPLE-COM_MyExt", + "list": { + "datatype": "string" + } + }, + "URISchemes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported URI scheme beyond the URI schemes REQUIRED by the SIP specification (<>). Each URI scheme is given by the URI prefix, without the colon separator. Example: tel, fax", + "list": { + "datatype": "string" + } + }, + "EventTypes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported event package among the event packages listed in the IANA registry for SIP Event Type Namespace (see <>). The list MAY include vendor-specific event packages, which MUST use the format defined in <>. Examples: : call-completion : presence : X_EXAMPLE-COM_MyEvtPkg", + "list": { + "datatype": "string" + } + }, + "TLSAuthenticationProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported authentication protocol for TLS transport. Enumeration of: Null, MD5, SHA-1, SHA-2, AEAD. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "Null", + "MD5", + "SHA-1", + "SHA-2", + "AEAD" + ] + } + }, + "TLSAuthenticationKeySizes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item represents a supported TLS authentication key size.", + "list": { + "datatype": "unsignedInt" + } + }, + "TLSEncryptionProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported encryption protocol for TLS transport. Enumeration of: Null, RC4, RC2, DES, 3DES, AES, Camellia. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "Null", + "RC4", + "RC2", + "DES", + "3DES", + "AES", + "Camellia" + ] + } + }, + "TLSEncryptionKeySizes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported TLS encryption key size.", + "list": { + "datatype": "unsignedInt" + } + }, + "TLSKeyExchangeProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported key exchange protocol for TLS transport. Enumeration of: RSA, DSS, DHE-RSA, DHE-DSS, ECDHE-RSA, ECDHE-ECDSA. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "RSA", + "DSS", + "DHE-RSA", + "DHE-DSS", + "ECDHE-RSA", + "ECDHE-ECDSA" + ] + } + } + }, + "Device.Services.VoiceService.{i}.Capabilities.SIP.Registrar.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP registrar capabilities.", + "access": false, + "array": false, + "Extensions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported SIP extension method among the methods listed in the IANA SIP parameters registry (see <>). SIP extension methods MUST be in the form of the method name in upper case. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : REFER : INFO : X_EXAMPLE-COM_MyExt", + "list": { + "datatype": "string" + } + }, + "URISchemes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported URI scheme beyond the URI schemes REQUIRED by the SIP specification. Each URI scheme is given by the URI prefix, without the colon separator. Example: tel, fax", + "list": { + "datatype": "string" + } + }, + "EventTypes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported event package among the event packages listed in the IANA registry for SIP Event Type Namespace (see <>). The list MAY include vendor-specific event packages, which MUST use the format defined in <>. Examples: : call-completion : presence : X_EXAMPLE-COM_MyEvtPkg", + "list": { + "datatype": "string" + } + }, + "TLSAuthenticationProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported authentication protocol for TLS transport. Enumeration of: Null, MD5, SHA-1, SHA-2, AEAD. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "Null", + "MD5", + "SHA-1", + "SHA-2", + "AEAD" + ] + } + }, + "TLSAuthenticationKeySizes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item represents a supported TLS authentication key size.", + "list": { + "datatype": "unsignedInt" + } + }, + "TLSEncryptionProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported encryption protocol for TLS transport. Enumeration of: Null, RC4, RC2, DES, 3DES, AES, Camellia. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "Null", + "RC4", + "RC2", + "DES", + "3DES", + "AES", + "Camellia" + ] + } + }, + "TLSEncryptionKeySizes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported TLS encryption key size.", + "list": { + "datatype": "unsignedInt" + } + }, + "TLSKeyExchangeProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported key exchange protocol for TLS transport. Enumeration of: RSA, DSS, DHE-RSA, DHE-DSS, ECDHE-RSA, ECDHE-ECDSA. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "RSA", + "DSS", + "DHE-RSA", + "DHE-DSS", + "ECDHE-RSA", + "ECDHE-ECDSA" + ] + } + } + } + }, + "Device.Services.VoiceService.{i}.Capabilities.MGCP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "MGCP-specific capabilities (as defined in <>).", + "access": false, + "array": false, + "Extensions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported optional MGCP package. MGCP packages are listed using the uppercase package abbreviation. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : BP : X_EXAMPLE-COM_MyExt", + "list": { + "datatype": "string" + } + } + }, + "Device.Services.VoiceService.{i}.Capabilities.H323.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "H.323-specific capabilities (as defined in <>).", + "access": false, + "array": false, + "FastStart": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Support for H.323 fast start. If <> indicates support for fast start.", + "datatype": "boolean" + }, + "H235AuthenticationMethods": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported authentication method. Enumeration of: dhExch, pwdSymEnc, pwdHash, certSign, ipsec, tls. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "list": { + "datatype": "string", + "enumerations": [ + "dhExch", + "pwdSymEnc", + "pwdHash", + "certSign", + "ipsec", + "tls" + ] + } + } + }, + "Device.Services.VoiceService.{i}.Capabilities.ISDN.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The overall ISDN capabilities of external ports of the CPE.", + "access": false, + "array": false, + "MSN": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support <> Number identification supplementary services: Multiple Subscriber Number", + "datatype": "boolean" + }, + "DDI": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support <> Number identification supplementary services: Direct-dialling-In", + "datatype": "boolean" + }, + "MCID": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support <> Number identification supplementary services: Malicious call Identification", + "datatype": "boolean" + }, + "MWI": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support Message Waiting Indication (MWI)", + "datatype": "boolean" + }, + "AoC": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support one or more of the followings AOC-services: <> Charging supplementary services: Advice of charge: charging information at call set-up time (AOC-S) <> Charging supplementary services: Advice of charge: charging information during the call (AOC-D) <> Charging supplementary services: Advice of charge: charging information at the end of the call (AOC-E)", + "datatype": "boolean" + }, + "ECT": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external ISDN ports support <> Call offering supplementary services: Explicit call transfer (ECT)", + "datatype": "boolean" + } + }, + "Device.Services.VoiceService.{i}.Capabilities.POTS.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The overall POTS capabilities of external ports of the CPE.", + "access": false, + "array": false, + "DialType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The supported supported dial type.", + "datatype": "string", + "enumerations": [ + "Tone", + "Pulse", + "Tone and Pulse" + ] + }, + "ClipGeneration": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external POTS ports support Calling Line identification (CLIP).", + "datatype": "boolean" + }, + "ChargingPulse": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The external POTS ports support transmittal of a charging pulse according to TR1 TR 110.", + "datatype": "boolean" + } + }, + "Device.Services.VoiceService.{i}.Capabilities.Codec.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to describe the set of supported codecs.", + "uniqueKeys": [ + "Alias", + "Codec", + "BitRate" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the type of codec. Enumeration of: AMR, Clearmode, EVRC1, EVRCB1, G.711MuLaw, G.711ALaw, G.726, G.729, G.729.1, G.729a, G.729e, G.728, G.723.1, G.722, G.722.1, G.722.2, Generic Comfort Noise, GSM-FR, GSM-HR, GSM-EFR, iLBC, Speex. The parameter MAY instead be a vendor-specific codec, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyCodec", + "datatype": "string", + "enumerations": [ + "AMR", + "Clearmode", + "EVRC1", + "EVRCB1", + "G.711MuLaw", + "G.711ALaw", + "G.726", + "G.729", + "G.729.1", + "G.729a", + "G.729e", + "G.728", + "G.723.1", + "G.722", + "G.722.1", + "G.722.2", + "Generic Comfort Noise", + "GSM-FR", + "GSM-HR", + "GSM-EFR", + "iLBC", + "Speex" + ] + }, + "BitRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Bit rate, specified in <>. The value MUST be among the values appropriate for the specified codec.", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "PacketizationPeriod": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported packetization period, in milliseconds, or a continuous range of packetization periods. Ranges are indicated as a hyphen-separated pair of unsigned integers. Examples: : 20 indicates a single discrete value. : 10, 20, 30 indicates a set of discrete values. : 5-40 indicates a continuous inclusive range. : 5-10, 20, 30 indicates a continuous range in addition to a set of discrete values. A range MUST only be indicated if all values within the range are supported.", + "list": { + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + } + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <> indicates support for silence suppression for this codec.", + "datatype": "boolean" + } + }, + "Device.Services.VoiceService.{i}.Capabilities.QualityIndicator.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specific capabilities concerning quality indicators.", + "access": false, + "array": false, + "QIModelsSupported": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Comma-separated list of supported models for evaluation of VoIP Quality Indicator. <> indicates that CPE does not support evaluation of this indicator. The entry MAY include vendor-specific models, which MUST be in the format defined in <>. For example: \u201cP.564,G.107,X_EXAMPLE-COM_MyModel\u201d", + "datatype": "string" + }, + "MaxQIValues": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the maximum number of QI values which can be reported for a session. If this parameter is empty there is no specified maximum limit. If possible this limit SHOULD be large enough to handle at least 10 to 15 minutes of call time, which would typically mean 60 to 90 quality values for commonly used quality models.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 127 + } + ] + }, + "MaxWorstQIValues": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of worst QI values which the CPE is able to store and report. A value of 0 indicates no specific maximum number of worst QI values.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 127 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.ReservedPorts.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The list of IP ports on the CPE WAN and LAN interfaces that will not be allocated by the ACS and therefore are available to be allocated by the CPE. The CPE can dynamically allocate ports from this range for things like signaling listening ports or local RTP ports.", + "access": false, + "array": false, + "WANPortRange": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Range of ports reserved for use by the CPE on any WAN interface. <> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Example: : 12345-12350,23580", + "list": { + "datatype": "string" + } + }, + "LANPortRange": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Range of ports reserved for use by the CPE on any LAN interfaces. <> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Example: : 12345-12350,23580", + "list": { + "datatype": "string" + } + } + }, + "Device.Services.VoiceService.{i}.ISDN.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models ISDN physical interfaces (BRI and PRI) supporting <> based signalling.", + "access": false, + "array": false, + "BRINumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "PRINumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.ISDN.BRI.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "ISDN BRI physical interfaces table (a voice physical interface as described in <>).", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this ISDN BRI interface.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this physical interface.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The textual name of the interface as assigned by the CPE.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ApplicationInterface": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the type of application that uses the interface.", + "datatype": "string", + "enumerations": [ + "VoIP", + "VoATM", + "Data" + ] + }, + "Protocol": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the protocol variant used for the interface. Enumeration of: EuroISDN, NI-1, NI-2, 5ESS, NTT, VN3, VN4, Q.SIG. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "datatype": "string", + "enumerations": [ + "EuroISDN", + "NI-1", + "NI-2", + "5ESS", + "NTT", + "VN3", + "VN4", + "Q.SIG" + ] + }, + "ProtocolEmulation": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Protocol emulation for the interface.", + "datatype": "string", + "enumerations": [ + "TE", + "NT" + ] + }, + "PermanentLayer2": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, avoid the disconnection of the ISDN layer 2 when the ISDN terminal or the ISDN network disconnects the layer 2 (in static TEI mode); it will be maintained established.", + "datatype": "boolean" + }, + "PermanentLayer1": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maintain the ISDN layer 1 up; it is useful for clocking and management.", + "datatype": "boolean" + }, + "LapdDisconnectionTimeout": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Avoid the disconnection of the ISDN layer 1 or 2 up when there is no call in progress in dynamic TEI mode.", + "datatype": "boolean" + }, + "TEINegotiation": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "TEI management mode. It MUST be set to <> for ISDN phones or connection to an ISDN network and <> for PBX.", + "datatype": "string", + "enumerations": [ + "Static", + "Dynamic" + ] + }, + "StaticTEI": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "TEI value in static mode.", + "datatype": "unsignedInt", + "range": [ + { + "max": 63 + } + ] + }, + "LifeLineHold": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the lifeline bypass on the BRI S0 voice module. If the interface is used by the VoIP gateway, the bypass is enabled if the CPE is not registered on registration server.", + "datatype": "boolean" + }, + "PowerSourceOne": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "To enable (disable) the power source one (PS1) on the BRI interfaces.", + "datatype": "boolean" + }, + "MaxNumBChannels": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous B channels.", + "datatype": "unsignedInt", + "range": [ + { + "max": 2 + } + ] + }, + "OutboundOnlyBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 2 + } + ] + } + }, + "InboundOnlyBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 2 + } + ] + } + }, + "BidirectionalBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 2 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.ISDN.PRI.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "ISDN PRI physical interfaces table (a voice physical interface as described in <>).", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this ISDN PRI interface.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this physical interface.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The textual name of the interface as assigned by the CPE.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ApplicationInterface": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the type of application that uses the interface.", + "datatype": "string", + "enumerations": [ + "VoIP", + "VoATM", + "Data" + ] + }, + "Protocol": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the protocol variant used for the interface. Enumeration of: EuroISDN, NI-1, NI-2, 4ESS, 5ESS, NTT, Q.SIG. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", + "datatype": "string", + "enumerations": [ + "EuroISDN", + "NI-1", + "NI-2", + "4ESS", + "5ESS", + "NTT", + "Q.SIG" + ] + }, + "ProtocolEmulation": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the protocol emulation for this interface.", + "datatype": "string", + "enumerations": [ + "TE", + "NT" + ] + }, + "PermanentLayer2": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, avoid the disconnection of the ISDN layer 2 when the ISDN terminal or the ISDN network disconnects the layer 2 (in static TEI mode); it will be maintained established.", + "datatype": "boolean" + }, + "Linecode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the physical line coding to be used.", + "datatype": "string", + "enumerations": [ + "ami", + "hdb3", + "b8zs" + ] + }, + "ESF": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the framing type.", + "datatype": "string", + "enumerations": [ + "None", + "DF", + "MF", + "EMF", + "SF", + "ESF", + "AutoDetect" + ] + }, + "PhysicalInterfaceType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enumeration of: T1, E1.", + "datatype": "string", + "enumerations": [ + "T1", + "E1" + ] + }, + "MaxNumBChannels": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous B channels.", + "datatype": "unsignedInt", + "range": [ + { + "max": 30 + } + ] + }, + "OutboundOnlyBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 31 + } + ] + } + }, + "InboundOnlyBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 31 + } + ] + } + }, + "BidirectionalBChannels": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 31 + } + ] + } + }, + "ClockMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Determines the role of the CPE for the purpose of clock synchronisation on this interface.", + "datatype": "string", + "enumerations": [ + "Master", + "Slave" + ] + } + } + }, + "Device.Services.VoiceService.{i}.POTS.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models analogue lines. Both FXO and FXS are handled.", + "access": false, + "array": false, + "FXONumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "FXSNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Region": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The geographic region associated to POTS (MUST be an alpha-2 (two-character alphabetic) country code as specified by <>). This MAY be used by the CPE to customize localization settings. If <>, indicates that the region is unspecified and the CPE SHOULD use default localization settings.", + "datatype": "string", + "range": [ + { + "max": 2 + } + ] + }, + "Device.Services.VoiceService.{i}.POTS.FXO.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "FXO physical interfaces table (a voice physical interface as described in <>). Each entry in the table models an analogue physical interface as defined by <>", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this FXO interface.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this physical interface.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The textual name of the interface as assigned by the CPE.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SecondStepDialing": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables the second step dialing mode. If <>, incoming dialed digits are processed through the voice routing table. If <>, the FXO port goes directly to the off-hook state and works as a FXS port for the dialing reception (a dial-tone is transmitted). The received digits are processed through the routing table until a match is found. If a match is found, the call is routed to the appropriate subscriber.", + "default": "false", + "datatype": "boolean" + }, + "TimeoutBeforeDialing": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the time in <> between off-hook and the transmission of the first digit for FXO interface.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 60 + } + ], + "unit": "seconds" + }, + "RingingTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the timeout in <> for incoming call on this FXO port: after receiving a ringing signal, the call is disconnected if no ringing signal is received anymore during this time.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 30 + } + ], + "unit": "seconds" + }, + "RingNumber": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the number of pulses for ringing signal detection on FXO port.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 40 + } + ] + }, + "OnHookMinDuration": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specify the minimum duration in <> of the on-hook state between two successive calls.", + "datatype": "unsignedInt", + "range": [ + { + "min": 20, + "max": 10000 + } + ], + "unit": "milliseconds" + }, + "SignalingMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Signaling mode used for line seizure by the CPE.", + "default": "LoopStart", + "datatype": "string", + "enumerations": [ + "LoopStart", + "GroundStart" + ] + }, + "DTMFDialoutInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time interval in <> between dialing DTMF digits to PSTN. See also <>", + "datatype": "unsignedInt", + "range": [ + { + "min": 20, + "max": 10000 + } + ], + "unit": "milliseconds" + }, + "CallerIdDetectionEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables the detection of CallerId for incoming calls. See also <>.", + "datatype": "boolean" + }, + "Active": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Determines if this physical interface is plugged.", + "datatype": "boolean" + }, + "DiagTests()": { + "type": "command", + "async": true, + "protocols": [ + "usp" + ], + "input": { + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates which test to perform. Enumeration of: Battery, DialTone. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", + "datatype": "string", + "enumerations": [ + "Battery", + "DialTone" + ] + } + }, + "output": { + "Status": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Canceled, Complete, Error, Error_Internal, Error_Other. If the value of this parameter is anything other than <>, the values of the other results parameters for this test are indeterminate.", + "datatype": "string", + "enumerations": [ + "Canceled", + "Complete", + "Error", + "Error_Internal", + "Error_Other" + ] + }, + "TestResult": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Result of the selected test. Enumeration of: Success, Failure. The parameter MAY instead indicate a vendor-specific result, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyResult", + "datatype": "string", + "enumerations": [ + "Success", + "Failure" + ] + } + } + }, + "Device.Services.VoiceService.{i}.POTS.FXO.{i}.DiagTests.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "FXO port tests.", + "access": false, + "array": false, + "DiagnosticsState": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", + "datatype": "DiagnosticsState", + "enumerations": [ + "None", + "Requested", + "Canceled", + "Complete", + "Error" + ] + }, + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates which test to perform. Enumeration of: Battery, DialTone. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", + "datatype": "string", + "enumerations": [ + "Battery", + "DialTone" + ] + }, + "TestResult": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp" + ], + "description": "Result of the selected test. Enumeration of: Success, Failure. The parameter MAY instead indicate a vendor-specific result, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyResult", + "datatype": "string", + "enumerations": [ + "Success", + "Failure" + ] + } + } + }, + "Device.Services.VoiceService.{i}.POTS.FXS.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "FXS physical interfaces table (a voice physical interface as described in <>). Each entry in the table models an analogue physical interface as defined by <>", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this FXS interface.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this physical interface.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The textual name of the interface as assigned by the CPE.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "FaxPassThrough": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the support for pass-through of fax data of this interface. Enumeration of: Disable, Auto, Force.", + "datatype": "string", + "enumerations": [ + "Disable", + "Auto", + "Force" + ] + }, + "ModemPassThrough": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the support for pass-through of modem data of this interface. Enumeration of: Disable, Auto, Force.", + "datatype": "string", + "enumerations": [ + "Disable", + "Auto", + "Force" + ] + }, + "DialType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Dial type used on the line.", + "datatype": "string", + "enumerations": [ + "Tone", + "Pulse" + ] + }, + "ClipGeneration": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether the Calling Line identification (CLIP) is enabled.", + "datatype": "boolean" + }, + "ChargingPulse": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether a charging pulse is transmitted on the line.", + "datatype": "boolean" + }, + "Active": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether a terminal is plugged on this physical interface.", + "datatype": "boolean" + }, + "TerminalType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the terminal type plugged on this interface to determine the correct signaling to be used to contact the terminal.", + "datatype": "string", + "enumerations": [ + "Audio", + "Fax", + "Modem", + "Any" + ] + }, + "DiagTests()": { + "type": "command", + "async": true, + "protocols": [ + "usp" + ], + "input": { + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates which GR-909 test to perform.", + "datatype": "string", + "enumerations": [ + "Hazard Potential", + "Foreign Voltage", + "Resistive Faults", + "Off-hook", + "REN" + ] + } + }, + "output": { + "Status": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Canceled, Complete, Error, Error_Internal, Error_Other. If the value of this parameter is anything other than <>, the values of the other results parameters for this test are indeterminate.", + "datatype": "string", + "enumerations": [ + "Canceled", + "Complete", + "Error", + "Error_Internal", + "Error_Other" + ] + }, + "TestResult": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Result of the selected test.", + "datatype": "string", + "enumerations": [ + "Success", + "Failure" + ] + } + } + }, + "Device.Services.VoiceService.{i}.POTS.FXS.{i}.VoiceProcessing.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to voice processing (analogue/digital conversion) capabilities.", + "access": false, + "array": false, + "TransmitGain": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Gain in <> to apply to the transmitted voice signal prior to encoding. This gain is a modifier of the default transmit-gain, which is unspecified.", + "datatype": "int", + "unit": "0.1 dB" + }, + "ReceiveGain": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Gain in <> to apply to the received voice signal after decoding. This gain is a modifier of the default receive-gain, which is unspecified.", + "datatype": "int", + "unit": "0.1 dB" + }, + "EchoCancellationEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable echo cancellation for this line.", + "datatype": "boolean" + }, + "EchoCancellationInUse": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indication of whether or not echo cancellation is currently in use for this line.", + "datatype": "boolean" + }, + "EchoCancellationTail": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Tail length in <> of the echo canceller associated with this line (whether or not it is currently in use).", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.VoiceService.{i}.POTS.FXS.{i}.DiagTests.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "FXS port tests.", + "access": false, + "array": false, + "DiagnosticsState": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", + "datatype": "DiagnosticsState", + "enumerations": [ + "None", + "Requested", + "Canceled", + "Complete", + "Error" + ] + }, + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates which GR-909 test to perform.", + "datatype": "string", + "enumerations": [ + "Hazard Potential", + "Foreign Voltage", + "Resistive Faults", + "Off-hook", + "REN" + ] + }, + "TestResult": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp" + ], + "description": "Result of the selected test.", + "datatype": "string", + "enumerations": [ + "Success", + "Failure" + ] + } + } + }, + "Device.Services.VoiceService.{i}.POTS.Ringer.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object contains the ring sequences configured for analogue lines.", + "access": false, + "array": false, + "EventNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.POTS.Ringer.Event.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table of events for which a ring pattern is defined. The table is pre-populated with the complete list of events for which the CPE supports definition of ring patterns.", + "uniqueKeys": [ + "Alias", + "Function" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Function": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The event for which the ring pattern is to apply. Enumeration of: Default, CCBSCallBack, CCNRCallBack, InternalCall, RingSplash, Group. The parameter MAY instead indicate a vendor-specific event name, which MUST use the format defined in <>.", + "datatype": "string", + "enumerations": [ + "Default", + "CCBSCallBack", + "CCNRCallBack", + "InternalCall", + "RingSplash", + "Group" + ] + }, + "Cadence": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> The values represent an alternating pattern of times (in <>) when the ringer is ON or OFF. Example: 1000,5000 See also <>.", + "list": { + "datatype": "unsignedInt", + "item": { + "max": 10 + }, + "unit": "milliseconds" + } + } + } + } + }, + "Device.Services.VoiceService.{i}.DECT.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models DECT bases and portables.", + "access": false, + "array": false, + "BaseNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "PortableNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.DECT.Base.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DECT base table (a voice physical interface as described in <>).", + "uniqueKeys": [ + "RFPI", + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this base.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this base.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The textual name of the interface as assigned by the CPE.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Standard": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The highest DECT protocol version supported by the base.", + "datatype": "string", + "enumerations": [ + "GAP", + "CAT-iq 1.0", + "CAT-iq 2.0", + "CAT-iq 2.1", + "CAT-iq 3.0", + "CAT-iq 4.0" + ] + }, + "RFPI": { + "type": "hexBinary", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The Radio Fixed Part Identity which uniquely identifies the Base. The RFPI is a 40 bits number stored in a hexbinary string. The format of the number is class-dependant and is defined in <>.", + "datatype": "hexBinary", + "range": [ + { + "max": 5 + } + ] + }, + "MaxSupportedPP": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum number of Portable Parts (PP) supported by the DECT base of the CPE.", + "datatype": "unsignedInt" + }, + "PIN": { + "type": "hexBinary", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The PIN is an hexbinary string of 32 bits, as defined in <>.", + "datatype": "hexBinary", + "range": [ + { + "max": 4 + } + ] + }, + "RepeaterSupportEnabled": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, the DECT system supports the REP feature, as defined in <>.", + "datatype": "boolean" + }, + "NEMOEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable NEMO (No Emission Mode as defined in <>) operation of the base. Note: NEMO operations can be successfully enabled only if all PPs registered to the CPE support the NEMO operations.", + "datatype": "boolean" + }, + "SubscriptionEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables the subscription mode of the DECT base. If <>, the subscription window is open, otherwise it is closed. When the subscription window is open, a DECT portable part can be subscribed / registered to the DECT base. When written as <>, it forces the device to open the subscription window. When the subscription window timeslot expires, the value MUST be changed back to <>. If the CPE user can open the subscription window with a specific command (i.e. via DECT base GUI or pushing a button), the parameter MUST report the correct status (<>, while the window is opened).", + "datatype": "boolean" + }, + "CipheringEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable ciphering for the calls on the DECT domain.", + "datatype": "boolean" + }, + "EncryptionType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Algorithm used in the encryption process defined in <>.", + "datatype": "string", + "enumerations": [ + "DSC", + "DSC2", + "CCM" + ] + }, + "RFPowerControl": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is used to control the sending RF power as per the required range within the customer premises. When set to Reduced, the CPE SHALL undertake measures to reduce the transmission RF power.", + "datatype": "string", + "enumerations": [ + "Normal", + "Reduced" + ] + }, + "FirmwareVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Firmware version of the base as defined in <>", + "datatype": "string", + "range": [ + { + "max": 20 + } + ] + }, + "EepromVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "EEPROM version of the base as defined in <>", + "datatype": "string", + "range": [ + { + "max": 20 + } + ] + }, + "HardwareVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Hardware version of the base as defined in <>", + "datatype": "string", + "range": [ + { + "max": 20 + } + ] + }, + "Device.Services.VoiceService.{i}.DECT.Base.{i}.Stats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object is associated with statistics collected from the DECT domain of the CPE. The collected statistics are common for all call scenarios. The CPE MUST reset the DECT bases Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the base becomes operationally down due to a previous administrative down (i.e. the bases <> parameter transitions to a down state after the base is disabled) or when the base becomes administratively up (i.e. the bases <> parameter transitions from <> to <>).", + "access": false, + "array": false, + "Handovers": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The count of all successful handovers.", + "datatype": "unsignedInt" + }, + "HandoverFailures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The count of all failed handovers.", + "datatype": "unsignedInt" + }, + "ControlFieldErrors": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The count of all bad A-field packets.", + "datatype": "unsignedInt" + }, + "PayloadFieldErrors": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The count of all bad B-field packets.", + "datatype": "unsignedInt" + }, + "SyncFailures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The count of all synchronization failures during all calls.", + "datatype": "unsignedInt" + } + } + }, + "Device.Services.VoiceService.{i}.DECT.Portable.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DECT portable table.", + "uniqueKeys": [ + "IPEI", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this DECT portable.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this DECT portable.", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CodecList": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the portable.", + "list": { + "datatype": "string" + } + }, + "RegistrationStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The current registration status of the DECT portable.", + "datatype": "string", + "enumerations": [ + "In reach", + "Not in reach" + ] + }, + "IPUI": { + "type": "hexBinary", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The International Portable User Identity which uniquely identifies the current user of the portable. The IPUI is composed of the Portable User Type (PUT), of 4 bits, followed by the Portable User Number (PUN) whose size and format depend on PUT (see <>). The hexbinary string is encoded exactly as it is defined in <>) : * Bits from position 0 to 3 represent the PUT (as defined in <>). * Bits from position 4 to <>-1 represent the PUN. * Unused bits after position <>-1 are set to 0. Examples : : - Type N (PUT + IPEI) : :: - PUT = 0000 (4 bits) = 0 (hexadecimal) :: - IPEI = 0000 0000 0000 1100 0000 0000 0000 1000 1001 (36 bits) = 00 0C 00 08 9 (hexadecimal) :: - IPUILength = 4 + 36 = 40 (bits) :: - IPUI = 00 00 C0 00 89 (40 bits; multiple of 8 so no bits are ignored) : - Type O (PUT + binary-coded number) : :: - PUT = 0001 (4 bits) = 1 (hexadecimal) :: - Number (decimal) = 4546812123 :: - Number (binary) = 1000 0111 1000 0001 0110 1100 0110 1101 1 (33 bits) :: - Number (hexadecimal) = 87 81 6C 6D 8 (33 bits; last three bits are ignored) :: - IPUILength = 4 + 33 = 37 (bits) :: - IPUI = 18 78 16 C6 D8 (37 bits; last 3 bits are ignored) : - Type Q (PUT + BCD number) : :: - PUT = 0011 (4 bits) = 3 (hexadecimal) :: - Number (decimal) = 4546812123 :: - Number (BCD) = 0100 0101 0100 0110 1000 0001 0010 0001 0010 0011 (40 bits) :: - IPUILength = 4 + 40 = 44 (bits) :: - IPUI = 34 54 68 12 12 30 (40 bits; last 4 bits are ignored)", + "datatype": "hexBinary", + "range": [ + { + "max": 13 + } + ] + }, + "IPUILength": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The length of <>, in <>.", + "datatype": "unsignedInt", + "unit": "bits" + }, + "IPEI": { + "type": "hexBinary", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The International Portable Equipment Identity which is globally unique and identifies the portable. The IPEI is composed of the Equipment Manufacturers Code (EMC), of 16 bits, followed by the Portable equipment Serial Number (PSN) of 20 bits (see <>). The hexbinary string is encoded as follows : * Bits from position 0 to 15 represent the EMC. * Bits from position 16 to 35 represent the PSN. * The last four bits are unused and are set to 0.", + "datatype": "hexBinary", + "range": [ + { + "max": 5 + } + ] + }, + "PARK": { + "type": "hexBinary", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The Portable Access Rights Key of this portable. The PARK is composed of the Access Rights Class (ARC) of 3 bits and the Access Rights Details (ARD) whose size and format depend on the ARC (see <>). The hexbinary string is encoded as follows : * Bits from position 0 to 2 represent the ARC (as defined in <>). * For class A : ** Bits from position 3 to 35 represent the ARD. ** The last four bits are unused and are set to 0. * For other classes : ** Bits from position 3 to 31 represent the ARD.", + "datatype": "hexBinary", + "range": [ + { + "max": 5 + } + ] + }, + "BaseAttachedTo": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Refers to the <> where this portable part is attached to.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "PortableType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Protocols used for connection.", + "list": { + "datatype": "string", + "enumerations": [ + "GAP", + "CAT-iq 1.0", + "CAT-iq 2.0", + "CAT-iq 2.1", + "CAT-iq 3.0", + "CAT-iq 4.0" + ] + } + }, + "SubscriptionTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The date and time in which the DECT portable has been subscribed with the base. If NTP or equivalent is not available, this parameter, if present, SHOULD be set to the Unknown Time value.", + "datatype": "dateTime" + }, + "Control": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter MAY be used by the ACS to control the registration status of the portable.", + "datatype": "string", + "enumerations": [ + "Unregister", + "Disable" + ] + }, + "HardwareVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the Hardware Version of a DECT portable. Corresponds to the portable HW Version identifier parameter, as defined in <>.", + "datatype": "string", + "range": [ + { + "max": 20 + } + ] + }, + "SoftwareVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the Software Version used by a DECT portable. Maps with the portable SW Version identifier parameter, as defined in <>.", + "datatype": "string", + "range": [ + { + "max": 20 + } + ] + }, + "SoftwareUpgrade": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter indicates support for SUOTA (Software Update Over The Air).", + "datatype": "boolean" + }, + "LastUpdateDateTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the last successful SW update of the DECT portable. This is based on the reception of a FACILITY message (being part of the HS version indication procedure) from the portable containing another value of SW version than the current value in this table. This new SW version is then updated in this table.", + "datatype": "dateTime" + }, + "OperatorName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The name of the operator that will be displayed on the portable, if it supports this feature.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.SIP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object is dedicated to SIP as defined in <>. It models SIP networks, clients, proxies and registrars.", + "access": false, + "array": false, + "NetworkNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "ClientNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "ProxyNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "RegistrarNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.SIP.Client.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP client table (a Client as described in <>). Each SIP client maintains its identity-to-location (i.e., RegisterURI-to-ContactURI) binding for SIP signaling exchanged between the client and the network. For CPE use cases where <> is used to map network-facing to user-facing objects, the relationship between the SIP client object and its associated <> object(s) is determined by the <> parameter, as follows: : - In case of RFC3261-style explicit registration of SIP AoRs, only a single line shall be associated with each SIP client. : - In case of RFC6140 or IMS/TISPAN-style registration, multiple lines can be associated with each SIP client. The set of lines associated with a SIP client constitute an identity set. In this case, registering the single SIP client implicitly registers the identities of all associated lines. : - In the case where the client does not register with the network (<> is <>), multiple lines can be associated with each SIP client.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this client.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this client. Unless noted otherwise, the status values apply to both registering and non-registering clients.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Deregistering", + "Error_Misconfigured", + "Error_Network", + "Error_Registration", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which this instance was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "RegisterMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The registration procedures to apply. For <> values other than <>, the SIP <> conveys its RegisterURI-to-ContactURI binding to the network using the SIP registration procedure. For the <> value of <>, the SIP client RegisterURI-to-ContactURI binding is conveyed to the network via some out-of-band mechanism not defined by this data model. This parameter can only be modified if <> is <>.", + "datatype": "string", + "enumerations": [ + "RFC3261", + "STATIC", + "RFC6140", + "TISPAN" + ] + }, + "AuthUserName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Username used to authenticate the connection to the server. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "AuthPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Password used to authenticate the connection to the server. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "Network": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP network with which this SIP client is associated. <> This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across this client. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + }, + "RegisterURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The SIP URI that represents the identity of this SIP client. For <> values where the SIP client registers with the network, this SIP URI is placed in the From and To headers in the REGISTER request. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 389 + } + ] + }, + "E164Format": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When <> and using a <>, the SIP URIs built from the directory numbers in <.DDIRange>> SHOULD use E.164 format, using the user=phone URI parameter, according to <>.", + "default": "true", + "datatype": "boolean" + }, + "T38Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the use of T.38.", + "datatype": "boolean" + }, + "SIPEventSubscribeNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "ContactNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.SIP.Client.{i}.Contact.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Active registrations for this SIP account.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this <>.", + "default": "false", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this <>.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which this <> was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "IPAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the IP address where the <> is listening for SIP requests from the service provider network. This IP address value is populated in the host portion of the <> parameter. This parameter can only be modified if <> is <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "Port": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the port where the <> is listening for SIP requests from the service provider network. This IP port value is populated in the port portion of the <> parameter. This parameter can only be modified if <> is <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "ContactURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The current Contact URI of the <>. If SIP registration procedures are being used, as determined by the <> parameter, then this parameter is populated in the Contact header field of the REGISTER request. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ExpireTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time when this registration will expire. This parameter is valid only when SIP registration procedures are being used, as determined by the <> parameter. If this registration never expires, this parameter SHOULD be set to the Unknown Time value.", + "datatype": "dateTime" + }, + "PingInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The interval in <> between sending a periodic ping request toward the network (i.e. a SIP OPTIONS ping). The CPE performs the periodic ping request to verify connectivity with the network when SIP registration procedures are not used (i.e. when the SIP client <> is <>). A value of 0 indicates that the CPE should not perform the periodic ping request.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ], + "unit": "seconds" + }, + "UserAgent": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the User-Agent field reported in the SIP header of the REGISTER message.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.SIP.Client.{i}.EventSubscribe.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table of SIP events automatically populated by the CPE with each of the SIP event subscriptions in <.EventSubscribe..>>. This table allows specification of the authentication credentials needed for each event subscription.", + "uniqueKeys": [ + "Alias", + "Event" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Event": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP event name corresponding to the value given in <.EventSubscribe..>>.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "AuthUserName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Username used to authenticate the connection to the event notify server.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "AuthPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Password used to authenticate the connection to the event notify server.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.SIP.Network.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models a SIP network (a network as described in <>). SIP networks are used by SIP <> objects so that common parameters do not have to be provisioned multiple times.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this <>. Starts the DNS resolving when enabled.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this network.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Resolving", + "Error_DNS", + "Error_Other", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ProxyServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of the SIP proxy server. If not <>, all SIP signaling traffic MUST be sent to the host indicated by this parameter and the port indicated by <> unless <> is not <> or a different route was discovered during normal SIP routing operations. Regardless of which host the traffic gets sent to (<> or <>), the value of this parameter (unless <>) MUST be used to derive the URI placed into the SIP Route header field of all requests originated by this end-point, unless a different proxy host was discovered dynamically during normal SIP routing operations.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ProxyServerPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting to the SIP proxy server.", + "default": "5060", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "ProxyServerTransport": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport protocol to be used in connecting to the SIP proxy server.", + "default": "UDP", + "datatype": "string", + "enumerations": [ + "UDP", + "TCP", + "TLS", + "SCTP" + ] + }, + "RegistrarServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of the SIP registrar server. If this parameter is <>, the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "RegistrarServerPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting to the SIP registrar server. If <> is empty the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", + "default": "5060", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "RegistrarServerTransport": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport protocol to be used in connecting to the registrar server. Enumeration of: UDP, TCP, TLS, SCTP. If <> is empty the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", + "default": "UDP", + "datatype": "string", + "enumerations": [ + "UDP", + "TCP", + "TLS", + "SCTP" + ] + }, + "ServerDomain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If non-empty this <> is used by the devices in a DNS SRV request to provide FQDNs <.>> for SIP Server connections. <> Clients ask for a specific service/protocol for a specific domain (the word domain is used here in the strict RFC 1034 sense), and get back the names of any available servers.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ChosenDomain": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Domain used by <> objects that reference this <> instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ChosenIPAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP address used to reach the <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "ChosenPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Port used to reach the <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "UserAgentDomain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "CPE domain string. If <>, the CPE SHOULD use its IP address as the domain.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "UserAgentPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Port used for incoming call control signaling.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "UserAgentTransport": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport protocol to be used for incoming call control signaling.", + "default": "UDP", + "datatype": "string", + "enumerations": [ + "UDP", + "TCP", + "TLS", + "SCTP" + ] + }, + "OutboundProxy": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The Fully Qualified Domain Name (FQDN) or IP Address of the outbound proxy. If the value is not <>, the SIP endpoint MUST send all SIP traffic (requests and responses) to the host indicated by this parameter and the port indicated by <>. This MUST be done regardless of the routes discovered using normal SIP operations, including use of Route headers initialized from Service-Route and Record-Route headers previously received. <> is NOT used to generate the URI placed into the Route header of any requests. When <> is assigned, the name is looked up (resolved) and the corresponding address is set in <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "OutboundProxyResolvedAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP address of the outbound proxy. This parameter can be assigned statically (e.g. present in the factory default configuration or set by the ACS via <>) or assigned dynamically (via DHCP). When <> is assigned, the name is looked up (resolved) and the corresponding address is set in <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "OutboundProxyPrecedence": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether it is the static configuration or the DHCP configuration that is actually used for <>.", + "datatype": "string", + "enumerations": [ + "Static", + "DHCP" + ] + }, + "OutboundProxyPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting to the outbound proxy. This parameter MUST be ignored unless the value of <> is non-empty.", + "default": "5060", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "STUNEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", + "default": "false", + "datatype": "boolean" + }, + "STUNServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Domain name or IP address of the STUN server.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NonVoiceBandwidthReservedUpstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "NonVoiceBandwidthReservedDownstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "Organization": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Text string to be used in the Organization header.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "RegistrationPeriod": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Duration, in <>, after which the user agent needs to register again.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "Realm": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Realm for authentication with the specified values of <.AuthUserName>> and <.AuthPassword>>.", + "datatype": "string" + }, + "TimerT1": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer T1, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerT2": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer T2, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerT4": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer T4, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerA": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer A, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerB": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer B, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerC": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer C, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerD": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer D, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerE": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer E, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerF": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer F, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerG": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer G, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerH": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer H, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerI": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer I, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerJ": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer J, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "TimerK": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of SIP timer K, in <>, as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "InviteExpires": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Invite request Expires header value, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "ReInviteExpires": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Re-invite request Expires header value, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "RegisterExpires": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Register request Expires header value, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "RegisterRetryInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Register retry interval, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "InboundAuth": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Applicable inbound authentication method, if any.", + "default": "None", + "datatype": "string", + "enumerations": [ + "None", + "Digest", + "SourceFilter" + ] + }, + "InboundAuthUsername": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If inbound authentication is used, the username credentials.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "InboundAuthPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If inbound authentication is used, the password credentials.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "UseCodecPriorityInSDPResponse": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When <>, in the SDP included in an OK response to an Invite, the first listed codec MUST be the highest priority codec among those offered in the Invite, based on the priorities specified in <>. The list of codecs in the SDP MAY also include other lower priority codecs. When <>, there is no specific requirement for choosing the codecs listed in the SDP included in an OK response.", + "default": "false", + "datatype": "boolean" + }, + "DSCPMark": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Diffserv code point to be used for outgoing SIP signaling packets.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 63 + } + ] + }, + "VLANIDMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VLAN ID (as defined in <>) to be used for outgoing SIP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "EthernetPriorityMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Ethernet priority code (as defined in <>) to be used for outgoing SIP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "ConferenceCallDomainURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "URI of the network conference bridge for the multiway conference call service.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "TimerLoginRejected": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "In case of a 401 (Unauthorized) or a 407 (Proxy Authentication Required) response to a REGISTER request, the CPE shall send REGISTER using credentials. If the second response is a new 401 (Unauthorized) or a 407 (Proxy Authentication Required) with stale=false or no stale value, the CPE shall re-init registration cycle after expiration of this timer (in <>). If stale=true, the CPE shall send REGISTER using credentials.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "NoLoginRetry": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, no retry after a 401 (Unauthorized) or a 407 (Proxy Authentication Required) response to a REGISTER until power cycle or credentials have been changed.", + "datatype": "boolean" + }, + "TimerRegistrationFailed": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "In case of no response to a REGISTER request, the CPE shall retry according to retransmission algorithm defined in <>, then wait for expiration of this timer (in <>). In case of other response, the CPE shall wait for expiration of this timer before sending a new REGISTER request.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "TimerSubscriptionFailed": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When starting a MWI subscription, on response of a SUBSCRIBE request : in case of no response or other response than 200 or 423, the CPE shall retry according to retransmission algorithm defined in <>, then wait for expiration of this timer (in <>) before sending a new SUBSCRIBE request.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "UnansweredRegistrationAttempts": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of registration timeouts when trying to register the server.", + "datatype": "unsignedInt" + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile to use with this <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CodecList": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", + "list": { + "datatype": "string" + } + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + }, + "FQDNServerNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "EventSubscribeNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "ResponseMapNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 999 + } + ] + }, + "Device.Services.VoiceService.{i}.SIP.Network.{i}.FQDNServer.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table of Fully Qualified Domain Names for this <> instance in order to connect to the SIP server as described in <>.", + "uniqueKeys": [ + "Alias", + "Domain" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this FQDN server.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the FQDN server was assigned.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "Domain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The domain name of the target host. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Weight": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A server selection mechanism. The weight field specifies a relative weight for entries with the same priority. Larger weights SHOULD be given a proportionately higher probability of being selected. This parameter can only be modified if <> is <>.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "Priority": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The priority of this target host. A client MUST attempt to contact the target host with the lowest-numbered priority it can reach; target hosts with the same priority SHOULD be tried in an order defined by the weight field. This parameter can only be modified if <> is <>.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "Port": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The port on this target host of this service.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "IPAddresses": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> The order in which the addresses appear in the list MAY imply priority. This parameter MAY be modified by the ACS only if <> is <>.", + "list": { + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.SIP.Network.{i}.EventSubscribe.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to specify the SIP events to which the CPE MUST subscribe.", + "uniqueKeys": [ + "Alias", + "Event" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Event": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP event name to appear in the EVENT header of the SIP SUBSCRIBE request.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Notifier": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of the event notify server.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NotifierPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting to the event notifier.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "NotifierTransport": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport protocol to be used in connecting to the event notifier.", + "default": "UDP", + "datatype": "string", + "enumerations": [ + "UDP", + "TCP", + "TLS", + "SCTP" + ] + }, + "ExpireTime": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Subscription refresh timer, in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.SIP.Network.{i}.ResponseMap.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table specifies the tone and message to be provided to the user for a particular SIP response received (normally 4xx and 5xx).", + "uniqueKeys": [ + "Alias", + "SIPResponseNumber" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "SIPResponseNumber": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The SIP response code number.", + "datatype": "unsignedInt", + "range": [ + { + "min": 101, + "max": 999 + } + ] + }, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "TextMessage": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The message to be provided on the screen or display of the VoIP device when the SIP response is received. If this parameter is not <>, display of this text preempts the value of <.ToneText>> associated with <>. If this parameter is <>, the value of <.ToneText>> associated with <>, if any, is displayed instead. This parameter is applicable only for VoIP devices capable of text display.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "Tone": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The tone to be played to the user when the SIP response is received. <> <> indicates no tone is to be played for this event.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.SIP.Proxy.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Global SIP parameters used by the CPE when acting as proxy for SIP user agents.", + "uniqueKeys": [ + "Alias", + "ProxyIPAddress", + "ProxyPort" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the proxy.", + "default": "false", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this proxy.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the IP address was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "ProxyIPAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP address the proxy listens on. This parameter can only be modified if <> is <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "ProxyPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The port the proxy listens on.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "ContactURI": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Built by the CPE using <> and <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile to use with this proxy. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Global SIP parameters used by the CPE when acting as registrar server for externally connected SIP user agents. This object also contains the global SIP parameters used by the CPE when it acts as static identity-to-location binding database for externally connected SIP user agents that dont register (i.e. static-mode SIP-PBX).", + "uniqueKeys": [ + "Alias", + "RegistrarPort", + "RegistrarIPAddress" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the registrar.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this registrar.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the IP address was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "RegistrarIPAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP address the registrar listens on for incoming SIP requests from an externally connected SIP user agent. This parameter can only be modified if <> is <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "RegistrarPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The port the registrar listens on.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "RegisterExpires": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The minimum register expire time in <>. This parameter is valid only for SIP user agents that support registration.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "PingInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The interval in <> between sending a periodic ping request (e.g., a SIP OPTIONS ping) to externally connected SIP user agents. The CPE performs the periodic ping request to verify connectivity with externally connected devices that do not support SIP registration procedures (i.e. a static-mode SIP-PBX). A value of 0 indicates that the CPE should not perform the periodic ping request.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ], + "unit": "seconds" + }, + "Organization": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Text string to be used in the Organization header.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Realm": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Realm for authentication with the specified values of <.AuthUserName>> and <.AuthPassword>>.", + "datatype": "string" + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile to use with this registrar. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ContactURI": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Built by the CPE using <> and <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AccountNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.Account.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP account table.", + "uniqueKeys": [ + "URI", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this account, or places it into a quiescent state. Enumeration of: Enable, Quiescent, Disable. In the <> state, in-progress sessions remain intact, but no new sessions are allowed. If this parameter is set to <> in a CPE that does not support the <> state, it MUST treat it the same as the <> state (and indicate <> in <>).", + "default": "Disable", + "datatype": "string", + "enumerations": [ + "Enable", + "Quiescent", + "Disable" + ] + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this account. Unless noted otherwise, the <> values apply to both registering and non-registering external SIP user agents.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Deregistering", + "ErrorMisconfigured", + "ErrorNetwork", + "ErrorRegistration", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the <> was created. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "CallStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the call status for this account.", + "datatype": "string", + "enumerations": [ + "Idle", + "Dialing", + "Delivered", + "Connected", + "Alerting", + "Disconnected" + ] + }, + "AuthUserName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Username used to authenticate the connection to the registrar server. This parameter can only be modified if <> is Static.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "AuthPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Password used to authenticate the connection to the registrar server. This parameter can only be modified if <> is Static.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "RegistrationStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The current registration status of the externally connected SIP user agent. This parameter is valid only for SIP user agents that support registration.", + "datatype": "string", + "enumerations": [ + "Registered", + "Unregistered" + ] + }, + "URI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The URI (AoR) of the externally connected SIP user agent. For SIP user agents that register, this is the URI that is contained in the To header field of the incoming REGISTER request. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 389 + } + ] + }, + "Domain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The domain name used when the SIP user agent has registered itself. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CodecList": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", + "list": { + "datatype": "string" + } + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Voice profile to use with this <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ContactNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.Account.{i}.Contact.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Active registrations for this SIP account.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this entry.", + "default": "false", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this entry.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the <> was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "IPAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP Address of the externally connected SIP user agent. This is the IP address contained in the <> parameter. This parameter can only be modified if <> is <>.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "Port": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The port of the externally connected SIP user agent. This is the port contained in the <> parameter. This parameter can only be modified if <> is <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "ContactURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the SIP signaling address of the externally connected SIP user agent. If the SIP user agent registers, then <> is the Contact URI contained in the Contact header field of the REGISTER request received from the SIP user agent. If the SIP user agent does not register, then the <> is provisioned by the ACS. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ExpireTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time when this registration will expire. This parameter is valid only for external SIP user agents that register. If this registration never expires, this parameter SHOULD be set to the Unknown Time value.", + "datatype": "dateTime" + }, + "UserAgent": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter defines the User-Agent header that will be used by the SIP messages send by this user agent. Implementers SHOULD make the User-Agent header field a configurable option.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + } + } + } + } + }, + "Device.Services.VoiceService.{i}.MGCP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object is dedicated to MGCP as defined in <>. It models MGCP clients and networks.", + "access": false, + "array": false, + "ClientNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "NetworkNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.MGCP.Client.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "MGCP client table (a client as described in <>). Each MGCP client maintains a registration for the MGCP identities of the associated line with the <>.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this client.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this client.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Deregistering", + "Error_Misconfigured", + "Error_Network", + "Error_Registration", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "RegisterMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Register mode.", + "default": "Wildcard", + "datatype": "string", + "enumerations": [ + "Wildcard", + "Individual" + ] + }, + "LocalPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Port listening for incoming call control signaling.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "Domain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "CPE domain string. If <>, the CPE SHOULD use its IP address.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "User": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "User string used in accessing the call agent.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "Network": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "MGCP network with which this MGCP client is associated. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.MGCP.Network.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models a MGCP network (a network as described in <>).", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the <>. Starts the DNS resolving when enabled.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this <>.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Resolving", + "Error_DNS", + "Error_Other", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallAgent1": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of the main MGCP call agent.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CallAgentPort1": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting with the main MGCP call agent.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "CallAgent2": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of the backup MGCP call agent.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CallAgentPort2": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting with the backup MGCP call agent.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "RetranIntervalTimer": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Message retransfer interval, in <>.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ], + "unit": "seconds" + }, + "MaxRetranCount": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Max number of message retransfers.", + "default": "10", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "DSCPMark": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Diffserv code point to be used for outgoing MGCP signaling packets.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 63 + } + ] + }, + "VLANIDMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VLAN ID (as defined in <>) to be used for outgoing MGCP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "EthernetPriorityMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Ethernet priority code (as defined in <>) to be used for outgoing MGCP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "AllowPiggybackEvents": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether or not piggyback events are allowed to the MGCP call agent.", + "datatype": "boolean" + }, + "SendRSIPImmediately": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether or not to send RSIP immediately on restart.", + "datatype": "boolean" + }, + "STUNEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", + "default": "false", + "datatype": "boolean" + }, + "STUNServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Domain name or IP address of the STUN server.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NonVoiceBandwidthReservedUpstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "NonVoiceBandwidthReservedDownstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile to use with this network. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CodecList": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", + "list": { + "datatype": "string" + } + } + } + }, + "Device.Services.VoiceService.{i}.H323.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object is dedicated to H.323 as defined in <>. It models H.323 clients and networks.", + "access": false, + "array": false, + "ClientNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "NetworkNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.H323.Client.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "H.323 client table (a client as described in <>). Each H.323 client maintains a registration for the H.323 identities of the associated line with the <>.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this client.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this client.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Deregistering", + "Error_Misconfigured", + "Error_Network", + "Error_Registration", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "H235Authentication": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables usage of H.235 security baseline security profile as defined in <>.", + "default": "false", + "datatype": "boolean" + }, + "AuthPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Password to be used when H.235 is enabled.", + "datatype": "string" + }, + "SendersID": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "In ITU-T based H.235 authentication, the sendersID is the ID of the gateway as received from the Gatekeeper. As long as the endpointID is not received from the Gatekeeper, the sendersID will be applied as configured here. The generalID is the GatekeeperID.", + "datatype": "string" + }, + "Network": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "H.323 network with which this H.323 client is associated. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "H323ID": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The H.323 ID assigned to the client.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.H323.Network.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models a H.323 network (a network as described in <>).", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this <>. Starts the DNS resolving when enabled.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this network.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Resolving", + "Error_DNS", + "Error_Other", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Gatekeeper": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Host name or IP address of H.323 Gatekeeper.", + "datatype": "string" + }, + "GatekeeperPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination port to be used in connecting to the H.323 Gatekeeper.", + "default": "1719", + "datatype": "unsignedInt" + }, + "GatekeeperID": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Gatekeeper ID.", + "datatype": "string" + }, + "TimeToLive": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the TimeToLive specification in the registration with the Gatekeeper in <>.", + "default": "86400", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "DSCPMark": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Diffserv code point to be used for outgoing H.323 signaling packets.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 63 + } + ] + }, + "VLANIDMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VLAN ID (as defined in <>) to be used for outgoing H.323 signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "EthernetPriorityMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Ethernet priority code (as defined in <>) to be used for outgoing H.323 signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "STUNEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", + "default": "false", + "datatype": "boolean" + }, + "STUNServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Domain name or IP address of the STUN server.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NonVoiceBandwidthReservedUpstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "NonVoiceBandwidthReservedDownstream": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", + "default": "0", + "datatype": "unsignedInt", + "unit": "bits per second" + }, + "MaxSessions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", + "default": "0", + "datatype": "unsignedInt" + }, + "VoIPProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile to use with this network. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CodecList": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", + "list": { + "datatype": "string" + } + } + } + }, + "Device.Services.VoiceService.{i}.Trunk.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Trunk table. The <> holds all parameters a CPE needs to set up a trunk connection with an NGN, as defined in <>.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this trunk.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this trunk.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Unregistering", + "Error", + "Testing", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the <> was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "Name": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Name of the trunk.", + "datatype": "string", + "range": [ + { + "max": 16 + } + ] + }, + "DDIRange": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Examples: :0123456789 :0123456700-0123456720 Each time this value is changed, the table of Lines managed by the <> is automatically adapted and each value of the <> MUST be represented in corresponding <.DirectoryNumber>> parameter. If this trunk has a <> provider and <.E164Format>> is set to <>, full E.164 numbers with country code (but without + prefix) MUST be used. This parameter can only be modified if <> is <>.", + "list": { + "datatype": "string" + } + }, + "LineObjectCreation": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When <>, a <.>> instance SHOULD be created automatically for each identity within the ranges specified by <>.", + "datatype": "boolean" + }, + "MaxChannels": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the maximum number of simultaneous communication channels handled by this trunk. A channel is used to convey an information signal, for example a digital bit stream, from one or several senders to one or several receivers.", + "datatype": "unsignedInt" + }, + "MaxOutboundChannelCount": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximal number of simultaneous communication channels in outbound direction supported across this trunk. The maximum number cannot exceed <> - <>. A value n>0 means, that there are no more than n channels allowed, which are used by outbound calls. A value of -1 means that there are no restrictions in this direction.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxInboundChannelCount": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximal number of simultaneous communication channels in inbound direction supported across this trunk. The maximum number cannot exceed <> - <>. A value n>0 means, that there are no more than n channels allowed, which are used by inbound calls. A value of -1 means that there are no restrictions in this direction.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "CodecPriority": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> option controls which end of an inbound call leg will have priority over the negotiation of codecs.", + "datatype": "string", + "enumerations": [ + "Local", + "Remote" + ] + }, + "Provider": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP client or ISDN interface associated with the identities represented by this trunk. <> This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Call control and call routing parameters. This object is a control plane application for the VoiceService that provides numbers or names based routing, local PBX functionalities and advanced telephony features. It is mutually exclusive with the <> table which is used in case of switching capabilities.", + "access": false, + "array": false, + "MaxNumberOfLines": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of <.>> in <>. This value cannot be greater than <>.", + "datatype": "unsignedInt" + }, + "MaxNumberOfExtensions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of <.>> in <>. This value cannot be greater than <>.", + "datatype": "unsignedInt" + }, + "LineNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "ExtensionNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "MailboxNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "IncomingMapNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "OutgoingMapNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "NumberingPlanNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "GroupNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Voice line table. Support for adding and removing lines is conditional on whether the CPE supports more than one line in total as indicated by <>.", + "uniqueKeys": [ + "DirectoryNumber", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this line.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this line.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Testing", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the call status for this line.", + "datatype": "string", + "enumerations": [ + "Idle", + "Dialing", + "Delivered", + "Connected", + "Alerting", + "Disconnected" + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the <> instance was created.", + "datatype": "string", + "enumerations": [ + "Static", + "DDIRange" + ] + }, + "DirectoryNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Directory number associated with this line.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Provider": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Provider for the line. The value MUST be the path name of a row in one of the following tables: <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CallingFeatures": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Set of calling features to apply to this line. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for this <> instance. The CPE MUST reset the lines Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the line becomes operationally down due to a previous administrative down (i.e. the lines <> parameter transitions to a down state after the line is disabled) or when the line becomes administratively up (i.e. the lines <> parameter transitions from <> to <>).", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.IncomingCalls.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for incoming calls.", + "access": false, + "array": false, + "CallsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of received calls to the line.", + "datatype": "unsignedInt" + }, + "CallsConnected": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that successfully completed call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsFailed": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that failed to successfully complete call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsDropped": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", + "datatype": "unsignedInt" + }, + "TotalCallTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Cumulative call duration in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.OutgoingCalls.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for outgoing calls.", + "access": false, + "array": false, + "CallsAttempted": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of outgoing calls attempted from the line.", + "datatype": "unsignedInt" + }, + "CallsConnected": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that successfully completed call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsFailed": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that failed to successfully complete call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsDropped": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", + "datatype": "unsignedInt" + }, + "TotalCallTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Cumulative call duration in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.RTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "RTP statistic parameters.", + "access": false, + "array": false, + "PacketsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received.", + "datatype": "unsignedInt" + }, + "PacketsSent": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets sent.", + "datatype": "unsignedInt" + }, + "PacketsLost": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been lost.", + "datatype": "unsignedInt" + }, + "BytesSent": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes sent.", + "datatype": "unsignedInt" + }, + "BytesReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes received.", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.DSP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DSP statistic parameters.", + "access": false, + "array": false, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has overrun.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has underrun.", + "datatype": "unsignedInt" + } + } + } + }, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Extension table containing the local numbers and names. Support for adding and removing extensions is conditional on whether the CPE supports more than one line in total as indicated by <>.", + "uniqueKeys": [ + "ExtensionNumber", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this extension.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this extension.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Error", + "Testing", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the call status for this extension.", + "datatype": "string", + "enumerations": [ + "Idle", + "Dialing", + "Delivered", + "Connected", + "Alerting", + "Disconnected" + ] + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which the <> object was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "Name": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The name of this extension. This name will also be used for CallerIdName functionality and for displaying on screen of handset, etc...", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ExtensionNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number assigned to this extension for internal calls.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Provider": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Provider for the extension. The value MUST be the path name of a row in one of the following tables: <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NumberingPlan": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Numbering plan to be used for outgoing calls. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CallingFeatures": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Set of calling features to apply to this extension. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CallWaitingStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Status of endpoint managed call waiting, if supported. Enumeration of: Disabled, Idle, SecondaryRinging, SecondaryConnecting, SecondaryConnected. This parameter SHOULD NOT be present if the CPE does not support endpoint managed call waiting.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Idle", + "SecondaryRinging", + "SecondaryConnecting", + "SecondaryConnected" + ] + }, + "ConferenceCallingStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Status of endpoint managed conference calling, if supported. Enumeration of: Disabled, Idle, SecondaryCalling, SecondaryConnecting, SecondaryConnected, InConferenceCall. This parameter SHOULD NOT be present if the CPE does not support endpoint managed conference calling.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Idle", + "SecondaryCalling", + "SecondaryConnecting", + "SecondaryConnected", + "InConferenceCall" + ] + }, + "ConferenceCallingSessionCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of active sessions on this extension. : 0 indicates no call is in progress. : 1 indicates a single call is in progress. : Higher values indicate a conference call is in progress. This parameter SHOULD NOT be present if the CPE does not support endpoint managed conference calling.", + "datatype": "unsignedInt" + }, + "VoiceMail": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Voice mail to use when the <> is not responding. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for this extension. The CPE MUST reset the extensions Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the extension becomes operationally down due to a previous administrative down (i.e. the extensions <> parameter transitions to a down state after the extension is disabled) or when the extension becomes administratively up (i.e. the extensions <> parameter transitions from <> to <>).", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.IncomingCalls.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for incoming calls.", + "access": false, + "array": false, + "CallsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of received calls to the extension.", + "datatype": "unsignedInt" + }, + "CallsConnected": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that successfully completed call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsFailed": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that failed to successfully complete call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsDropped": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", + "datatype": "unsignedInt" + }, + "TotalCallTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Cumulative call duration in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.OutgoingCalls.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Statistics for outgoing calls.", + "access": false, + "array": false, + "CallsAttempted": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of outgoing calls attempted from the extension.", + "datatype": "unsignedInt" + }, + "CallsConnected": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that successfully completed call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsFailed": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of calls that failed to successfully complete call setup signaling.", + "datatype": "unsignedInt" + }, + "CallsDropped": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", + "datatype": "unsignedInt" + }, + "TotalCallTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Cumulative call duration in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.RTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "RTP statistic parameters.", + "access": false, + "array": false, + "PacketsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received.", + "datatype": "unsignedInt" + }, + "PacketsSent": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets sent.", + "datatype": "unsignedInt" + }, + "PacketsLost": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been lost.", + "datatype": "unsignedInt" + }, + "BytesSent": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes sent.", + "datatype": "unsignedInt" + }, + "BytesReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes received.", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.DSP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DSP statistic parameters.", + "access": false, + "array": false, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has overrun.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has underrun.", + "datatype": "unsignedInt" + } + } + } + }, + "Device.Services.VoiceService.{i}.CallControl.Group.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models an extension as a group of extensions.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Extensions": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> If this parameter is null the group is treated as a group that contains all extensions. <>", + "list": { + "datatype": "string" + } + }, + "RingType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the way of ringing for the extensions in this group. Enumeration of: Simultaneous, Hierarchical, Cyclic.", + "datatype": "string", + "enumerations": [ + "Simultaneous", + "Hierarchical", + "Cyclic" + ] + }, + "RingTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time (in <>) to wait for extension reply before trying the next extension. Only applicable if <> = <> or <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.Mailbox.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Voice mail configuration related to a particular extension.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "MaxMsg": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This limits the number of messages in a voicemail folder.", + "datatype": "unsignedInt" + }, + "MaxMessageTime": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the maximum amount of time in <> of an incoming message. Use this when there are many users and disk space is limited. A value of 0 means there will be no maximum time limit enforced.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "MinSize": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimal size in <> of the voicemail box.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "SMTPServerAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SMTP server FQDN or IP Address used for voicemail notifications.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SMTPServerPort": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SMTP server port for voicemail notifications.", + "default": "25", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "SMTPUser": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SMTP user name.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SMTPPassword": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SMTP password.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SMTPAuthenticationType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Type of authentication used to connect to the SMTP server.", + "default": "None", + "datatype": "string", + "enumerations": [ + "None", + "SSL", + "TLS", + "Auto" + ] + }, + "SMTPFrom": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Senders email address.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.IncomingMap.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> is a table that is used to control which extensions ring when an incoming call is received. The map approach separates the call routing aspects from the configuration of the lines and extensions. It support PBX concepts such as DDI (one extension per line) and groups (parallel dialing if extensions have same priority and hunting when extensions have different priority).", + "uniqueKeys": [ + "Line", + "Extension", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Line": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> used by the call. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Extension": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> that rings on incoming call. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Order": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the order in which extensions ring. First all extensions with the lowest order value will ring. When all these extensions have rejected the call or did not reply, the next order value will be attempted.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + }, + "Timeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time in <> the extension will ring before it is considered that there was no reply.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.VoiceService.{i}.CallControl.OutgoingMap.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> is a table that is used to control which line is used when an extension makes a call.", + "uniqueKeys": [ + "Extension", + "Line", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CLIPNoScreeningNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Public number to be presented outgoing calls, instead of the effective extension number.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Extension": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> which makes the outgoing call. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Line": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifies the <> to be used for outgoing calls. When applicable in the signaling protocol the DirectoryNumber will be used as source number for this call. Note: The Line to be used for an outgoing call can be overridden by the <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Order": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The order in which using the lines is attempted. This is used to implement a backup mechanism. If the first line is not available, using the next one will be attempted.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.NumberingPlan.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Information related the numbering plan. <> is applicable only if the device supports a dialing mechanism for which a number plan is needed (for example, some devices with an explicit Dial button do not need to be aware of the dialing plan) and if the device does not already support a numbering plan mechanism for this call control (e.g., in-band via MGCP).", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "MinimumNumberOfDigits": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the minimum number of digits to be collected before an outgoing request (e.g., a SIP INVITE) can be initiated. If End of Dialing (as defined in <>) occurs before the minimum number of digits has been reached then the number will be considered incomplete and no request will be initiated. In practice, searching <.PrefixInfo..>> commences only once <> digits has been received.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 32 + } + ] + }, + "MaximumNumberOfDigits": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When this number of digits has been collected, an outgoing request (e.g., a SIP INVITE) MUST be initiated. Any additional dialed digits will be ignored. This parameter is only used in the case that no match in <.PrefixInfo..>> has been found.", + "default": "15", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 32 + } + ] + }, + "InterDigitTimerStd": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This timer is the maximum allowable time (expressed in <>) between the dialing of digits. This timer is restarted every time a digit is dialed. Expiration of this timer indicates End of Dialing.", + "default": "15000", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 50000 + } + ], + "unit": "milliseconds" + }, + "InterDigitTimerOpen": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This timer is the maximum allowable time (expressed in <>) between the dialing of digits once the minimum number of digits defined on a prefix based has been reached. This timer is only applicable to open numbering, where the exact number of digits for a prefix is not known.", + "default": "3000", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 50000 + } + ], + "unit": "milliseconds" + }, + "TerminationDigit": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Digit that can be used by the subscriber to indicate that dialing has completed.", + "default": "#", + "datatype": "string", + "range": [ + { + "max": 1 + } + ] + }, + "InvalidNumberTone": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The tone that tells the user when the number dialed is determined to be invalid. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "PrefixInfoMaxEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the maximum number of instances of <.PrefixInfo..>> that can be supported.", + "datatype": "unsignedInt" + }, + "PrefixInfoNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the number of instances of <.PrefixInfo..>>.", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.CallControl.NumberingPlan.{i}.PrefixInfo.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table contains information related to an individual prefix in the NumberingPlan. It is anticipated that once the minimum number of digits has been received, the VoIP device will search this prefix list every time a new digit is received. If no new entry is found, then the object that was previously found will be used instead. If supported, <.PrefixInfoMaxEntries>> and <.PrefixInfoNumberOfEntries>> MUST be present. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "PrefixRange": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is a string representation of a range of prefixes. Each prefix consists of a From part consisting of 1 to n digits (string representation) followed by an OPTIONAL To part consisting of exactly one digit prefixed by a - symbol. All characters in the From and To parts of the prefix range MUST be 0-9, * or #. A further constraint is that the To digit MUST always be numerically greater than the last digit of the From part. Examples: : 02 : 031-5 : 032 : 0325 : *#34 : #22", + "datatype": "string", + "range": [ + { + "max": 42 + } + ] + }, + "PrefixMinNumberOfDigits": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the minimum number of allowable digits for the prefix range. Once the minimum number of digits has been reached, <> will be used instead of <>. If the minimum number of digits has been reached and the inter-digit timer expires, an outgoing request is initiated.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 40 + } + ] + }, + "PrefixMaxNumberOfDigits": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the maximum number of allowable digits for the prefix range. Once the number of digits received reaches this value an outgoing request is initiated.", + "default": "1", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 40 + } + ] + }, + "NumberOfDigitsToRemove": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If this parameter has a non-zero value, the specified number of digits will be removed from the internal digit buffer (which contains the dialed digits) from the position specified by <>. Subsequently a search of <> for a matching prefix using the modified number is performed. Note that this parameter does not have any impact on the number sent in the outgoing request: it is used only for searching within the Numbering Plan. This parameter has no effect if it is set to 0. This parameter is provided to handle Carrier override and other codes used as prefix to standard numbers and to ensure that the correct End of Dialing can be specified without significant data duplication.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 40 + } + ] + }, + "PosOfDigitsToRemove": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is used in conjunction with <>. It specifies the position within the internal digit buffer from which the digits are to be removed.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 40 + } + ] + }, + "DialTone": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The tone to be played by the VoIP device when the user has dialed exactly the same digits as defined in the prefix. The VoIP device will cease playing the tone once an additional digit has been dialed. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "FacilityAction": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is a string representing a Facility Action implemented by the VoIP device. The parameter MAY instead indicate a vendor-specific Facility Action, which MUST use the format defined in <>. When <> or the value is an unrecognized string (i.e. a Facility Action not supported by the CPE) normal outgoing requests are made.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "FacilityActionArgument": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Optional argument associated with <>. The interpretation of the argument is dependent on a specific value of <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models the calling features that can be apply on <> or <>.", + "access": false, + "array": false, + "SetNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models a set of calling features that can be applied in <> or <> objects.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallerIDEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the transmission of caller ID information on incoming calls (CLIP).", + "datatype": "boolean" + }, + "CallerIDNameEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the transmission of caller ID name information on incoming calls (CNIP).", + "datatype": "boolean" + }, + "CallWaitingEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables call waiting in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint managed call waiting.", + "datatype": "boolean" + }, + "CallForwardUnconditionalEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables unconditional call forwarding by the endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "boolean" + }, + "CallForwardUnconditionalNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Directory number to which all incoming calls to this line are forwarded when <> is <>. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "CallForwardOnBusyEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables call forwarding-on-busy by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "boolean" + }, + "CallForwardOnBusyNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Directory number to which all incoming calls to this line are forwarded when <> is <> and the line is busy. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "CallForwardOnBusyRingTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Delay in <> before considering there is no answer for call forwarding-on-busy. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "CallForwardOnNoAnswerEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables call forwarding-on-no-answer by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "boolean" + }, + "CallForwardOnNoAnswerNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Directory number to which all incoming calls to this line are forwarded when <> is <> and there is no local answer. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "CallForwardOnNoAnswerRingTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Delay in <> before considering there is no answer for call forwarding-on-no-answer. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "CallTransferEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables call transfer by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call transfer.", + "datatype": "boolean" + }, + "MWIEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables Message Waiting Indication by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support MWI.", + "datatype": "boolean" + }, + "VMWIEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables Visual Message Waiting Indication.", + "datatype": "boolean" + }, + "LineMessagesWaiting": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the number of messages which are currently waiting on this line as known by the CPE. This parameter SHOULD NOT be present if the CPE does not support MWI.", + "datatype": "unsignedInt" + }, + "AnonymousCallRejectionEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Anonymous Call Block capability in the endpoint (ACR). This parameter SHOULD NOT be present if the CPE does not support endpoint based Anonymous Call Block capability.", + "datatype": "boolean" + }, + "AnonymousCallEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Anonymous Call capability in the endpoint (CLIR). This parameter SHOULD NOT be present if the CPE does not support endpoint based Anonymous Call capability.", + "datatype": "boolean" + }, + "DoNotDisturbEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Do Not Disturb capability in the Endpoint. When enabled, all calls are forwarded to voice mail. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Do Not Disturb capability.", + "datatype": "boolean" + }, + "RepeatDialEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Repeat Dial capability in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Repeat Dial capability.", + "datatype": "boolean" + }, + "VoiceMailEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Voice Mail capability in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Voice Mail capability.", + "datatype": "boolean" + }, + "CallPickUpEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable Call Interception capability in the Endpoint.", + "datatype": "boolean" + }, + "CCBSEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable automatic recall on busy (Completion of Calls to Busy Subscriber) capability in the Endpoint.", + "datatype": "boolean" + }, + "IIFCEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable successive forwarding (Inhibition of Incoming Forwarded Calls) from the Endpoint.", + "datatype": "boolean" + }, + "BlockForwardEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Allow or block any internal forward to the Endpoint.", + "datatype": "boolean" + }, + "SecretForwarderEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable secret identity of this Endpoint in case it initiates (on an external incoming call) a forward to another internal phone Endpoint. If enabled, only the remote caller party can be identified (if not anonymous), not this intermediate via phone extension.", + "datatype": "boolean" + }, + "FollowMeEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable FollowMe capability in the Endpoint.", + "datatype": "boolean" + }, + "CFTNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "SCFNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "SCREJNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "FollowMeNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.CFT.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines a Call Forwarding Timed (CFT) that permit the user to forward calls to particular destinations depending on the time of day. Note: a bad configuration (e.g. timeslots overlapping) could cause unexpected behavior.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether this schedule is currently enabled.", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Day": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Day where the schedule active.", + "datatype": "string", + "enumerations": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday", + "All" + ] + }, + "StartTime": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Start time of the schedule in the form : hh:mm.", + "datatype": "string", + "range": [ + { + "max": 5 + } + ] + }, + "EndTime": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "End time of the schedule in the form : hh:mm.", + "datatype": "string", + "range": [ + { + "max": 5 + } + ] + }, + "ForwardedToNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number to forward the call to.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.SCF.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines a Selective Call Forwarding (SCF) that permit the user to forward calls to different destinations depending on the calling number.", + "uniqueKeys": [ + "CallingNumber", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this Selective Call Forward.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallingNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Calling number concerned by the forward. The CPE SHOULD perform an exact match with this string without any attempts at number normalization.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "ForwardedToNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number to forward the call to.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.SCREJ.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines a Selective Call Rejection (SCREJ) that permit the user to selectively reject calls depending on the calling number.", + "uniqueKeys": [ + "CallingNumber", + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this Selective Call Rejection.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallingNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Calling number concerned by the reject. The CPE SHOULD perform an exact match with this string without any attempts at number normalization.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + } + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.FollowMe.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines the FollowMe destinations mapping definition, in the provided sequence order.", + "uniqueKeys": [ + "Alias", + "Number", + "Order" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this FollowMe sequence item.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Delay": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Delay in <> before next FollowMe sequence item applies.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "Number": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Directory number to which all incoming calls to this line are forwarded to after <>, when <> is <>. In this case, <> is not used.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Order": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "For a given <>, defines the order of this item in the FollowMe sequence.", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.Voice2Mail.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Voice to mail specific attributes. Applies only if <> is set to <>.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable voice mail notification.", + "datatype": "boolean" + }, + "MaxMessageLength": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Defines the maximum amount of time in <> of an incoming message. Use this when there are many users and disk space is limited. A value of 0 means there will be no maximum time limit enforced.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "Attach": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates if the message is sent as an attachment in voice mail notification.", + "datatype": "boolean" + }, + "KeepLocal": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether the voice to mail message is kept on the CPE after sending the mail. Applicable only if <> is <>.", + "datatype": "boolean" + }, + "EMailAddress": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "E-mail for voice to mail notification messages.", + "datatype": "string" + } + } + } + } + }, + "Device.Services.VoiceService.{i}.Interwork.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table configures Inter-Working Function switching features. It is mutually exclusive with the <> object which is used in case of PBX or Endpoint capabilities.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable this <> instance.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this <> instance.", + "default": "Disabled", + "datatype": "string", + "enumerations": [ + "Up", + "Error", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "OperationalStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the operational status of the <> connections when <> is <>. Enumeration of: InService, OutOfService, NetworkServersOffline.", + "default": "OutOfService", + "datatype": "string", + "enumerations": [ + "InService", + "OutOfService", + "NetworkServersOffline" + ] + }, + "OperationalStatusReason": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string identifying the reason or explanation for the current <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "NetworkConnectionMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter indicates whether or not the CPE supports a registration procedure that conveys its signaling IP address:port to the network. This parameter also indicates whether the network-facing Client object and its parameters are statically provisioned by the ACS or dynamically created by the CPE. Enumeration of: Static, RegisterDynamic, RegisterLearn, RegisterStatic.", + "datatype": "string", + "enumerations": [ + "Static", + "RegisterDynamic", + "RegisterLearn", + "RegisterStatic" + ] + }, + "UserConnectionMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter indicates whether or not an externally connected user device supports a registration procedure to convey its signaling address to the CPE. This parameter also indicates whether the user-facing objects and parameters that contain the external user device signaling address are statically provisioned by the ACS or dynamically learned by the CPE. Enumeration of: Static, RegisterDynamic, RegisterLearn.", + "datatype": "string", + "enumerations": [ + "Static", + "RegisterDynamic", + "RegisterLearn" + ] + }, + "E164Mode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This attribute indicates whether or not the CPE performs E.164 routing of incoming requests received from the service provider network when the target Endpoint is a PBX.", + "datatype": "boolean" + }, + "NetworkAuthenticationChallengeMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter indicates how the CPE treats authentication challenges received from the service provider network. This parameter only has meaning when the CPE supports an externally connected user device (e.g., the CPE is acting as a gateway between the user device and the network). Enumeration of: PassThru, RespondLocal, Hop-by-Hop.", + "datatype": "string", + "enumerations": [ + "PassThru", + "RespondLocal", + "Hop-by-Hop" + ] + }, + "NetworkIPAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The network IP Address of the CPE. The CPE MUST resolve this when the <.>> object is created. Note: In case of multiple network IP addresses, the choice is left to the CPE.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "InterworkingRuleSetURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "URI of the Interworking Rule Set for this <> instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "InterworkingRuleSetInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The duration in <> of the interval for which the CPE SHOULD send request to refresh the Interworking Rule Set. A value of 0 indicates that this feature is disabled.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "InterworkingRuleSetTime": { + "type": "dateTime", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "An absolute time reference in UTC to determine when the CPE will send a request to refresh the Interworking Rule Set. Each refresh request MUST occur at this reference time plus or minus an integer multiple of the <>. <> is used only to set the phase of refresh requests. The actual value of <> can be arbitrarily far into the past or future. For example, if <> is 86400 (a day) and if <> is set to UTC midnight on some day (in the past, present, or future) then the refresh requests will occur every day at UTC midnight. These MUST begin on the very next midnight, even if <> refers to a day in the future. The Unknown Time value defined in <> indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and needs only to adhere to the specified <>. If absolute time is not available to the CPE, its behavior MUST be the same as if the <> parameter was set to the Unknown Time value.", + "datatype": "dateTime" + }, + "FirewallRuleSetURI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "URI of the Firewall Rule Set for this <> instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "FirewallRuleSetInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The duration in <> of the interval for which the CPE SHOULD send request to refresh the Firewall Rule Set. A value of 0 indicates that this feature is disabled.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "FirewallRuleSetTime": { + "type": "dateTime", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "An absolute time reference in UTC to determine when the CPE will send a request to refresh the Firewall Rule Set. Each refresh request MUST occur at this reference time plus or minus an integer multiple of the <>. <> is used only to set the phase of refresh requests. The actual value of <> can be arbitrarily far into the past or future. For example, if <> is 86400 (a day) and if <> is set to UTC midnight on some day (in the past, present, or future) then the refresh requests will occur every day at UTC midnight. These MUST begin on the very next midnight, even if <> refers to a day in the future. The Unknown Time value defined in <> indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and needs only to adhere to the specified <>. If absolute time is not available to the CPE, its behavior MUST be the same as if the <> parameter was set to the Unknown Time value.", + "datatype": "dateTime" + }, + "InterworkName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string identifying the name or explanation for this <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ProxyServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> associated with this <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Networks": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> List of available Networks for routing calls.", + "list": { + "datatype": "string" + } + }, + "E164Client": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is MUST contain the <> for all <> objects referenced in the <> table when <> = <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "UserInterfaceNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "MapNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Interwork.{i}.UserInterface.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each table entry references a row in the <> table to identify the User IP address and listening port for the Device and the Network to route calls to.", + "uniqueKeys": [ + "Alias", + "Registrar" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable (<>) or disable (<>) <>.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Registrar": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> to use with this <>. The value of <> MUST be unique over all <.>>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Network": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If not null this provides the appropriate <> to route calls from this User server to. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.Interwork.{i}.Map.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "For interworking use cases such as SIP-ISDN PBX plug and ESBC : mapping instance between a Network interface and a User extension.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable (<>) or disable (<>) this connection mapping.", + "default": "false", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this connection mapping. Enumeration of: Active, InActive.", + "default": "InActive", + "datatype": "string", + "enumerations": [ + "Active", + "InActive" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "StatusDescription": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string identifying the reason or explanation of the current mapping <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "LastTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The last time the Status was updated.", + "datatype": "dateTime" + }, + "Origin": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Mechanism via which this connection mapping was assigned. Enumeration of: AutoConfigured, Static.", + "default": "Static", + "datatype": "string", + "enumerations": [ + "AutoConfigured", + "Static" + ] + }, + "NetworkConnection": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "UserConnection": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>. This parameter can only be modified if <> is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "DigitMap": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Digit map controlling digit collection on a User interface. The string defines the criteria to be met as digits are collected before an outgoing request (e.g., a SIP INVITE) can be initiated. The syntax of this parameter is exactly the syntax used by MGCP as defined in <>. This parameter is applicable only if the User interface supports per digit dialing and the Network interface supports en-bloc dialing only.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "DigitMapEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables use of <>.", + "default": "true", + "datatype": "boolean" + }, + "Priority": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the priority for this combination of Network-to-User mapping, where 1 is the highest priority. Where the priority differs between entries in this table, the CPE SHOULD use the highest priority (lowest numbered) entry. Where the priorities are equal among multiple entries, the CPE MAY apply a local criterion for choosing among them.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This table contains a list of calls. An entry is similar to a CDR (Call Detail Record) as used in PBX or on mobile phones. An entry is created each time a call is terminated. If the number of <> exceeds <>, the CPE SHOULD remove the oldest <> object on basis of <> parameter.", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "CallingPartyNumber": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of the party originating the call.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CalledPartyNumber": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of destination party of the call.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Source": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Party originating the call. <> <>, <.Account>> and <> objects SHOULD be referenced only when <> is in use.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Destination": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Destination party of the call. <> <>, <.Account>> and <> objects SHOULD be only referenced only when <> is in use.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "RemoteParty": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The phone number of the remote party after the dial plan has been processed.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "UsedLine": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> used to process the call. <> When <> is in use, this parameter is <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "UsedExtensions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> <> For an incoming call multiple <> objects can be involved till one user answers the call. When <> is in use, this parameter is <>.", + "list": { + "datatype": "string" + } + }, + "Direction": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Direction of the call.", + "datatype": "string", + "enumerations": [ + "Incoming", + "Outgoing" + ] + }, + "Start": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Start of the call.", + "datatype": "dateTime" + }, + "Duration": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Length of the call in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "CallTerminationCause": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The call termination cause. The parameter MAY instead indicate a vendor-specific cause, which MUST use the format defined in <>.", + "datatype": "string", + "enumerations": [ + "NoExtensionsMapped", + "NoExtensionsAvailable", + "AnonymousCallRejection", + "CallWaitingRejected", + "CallForwardingUnconditional", + "CallForwardingBusy", + "CallForwardingNoReply", + "LocalDisconnect", + "LocalForbidden", + "LocalTimeout", + "LocalMediaError.", + "LocalPriority.", + "LocalReject", + "LocalTransfer", + "LocalInternalError", + "RemoteDisconnect", + "RemoteBadRequest", + "RemoteForbidden", + "RemoteNotFound", + "RemoteReject", + "RemoteNotAllowed", + "RemoteNotAcceptable", + "RemoteTimeout", + "RemoteUnavailable", + "RemoteBusy", + "RemoteNotSupported", + "RemoteNetworkFailure" + ] + }, + "SessionNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the number of entries in <.Session..>>. Sessions are the equivalent of RTP streams in VoIP calls : a call can have more than one session in sequence when codec changes happen during a call. In multimedia calls, multiple sessions in parallel are possible.", + "datatype": "unsignedInt" + }, + "SignalingPerformanceNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.SignalingPerformance.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This table contains signaling performance statistics for each protocol involved in the call.", + "uniqueKeys": [ + "Protocol" + ], + "access": false, + "array": true, + "Protocol": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Protocol for which this signaling performance statistics are available.", + "datatype": "string", + "enumerations": [ + "H.323", + "SIP" + ] + }, + "CallSetupDelay": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time between the instant a system receives a call attempt and the instant of invitation of ringing at the call receiver end instrument in <>.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "OutgoingMediaEstablishDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time in <> between : :- the instant a system has received information that the called party is connected :- the instant the first media packet goes out the CPE The value could be negative if a media packet is sent before the connection establishment.", + "datatype": "int", + "unit": "milliseconds" + }, + "IncomingMediaEstablishDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time in <> between : :- the instant a system has received information that the called party is connected :- the instant the first media packet goes into the CPE The value could be negative if a media packet arrives before the connection establishment.", + "datatype": "int", + "unit": "milliseconds" + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Session information within one call.", + "uniqueKeys": [ + "SessionID" + ], + "access": false, + "array": true, + "StreamType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The type of media stream used in this session.", + "datatype": "string", + "enumerations": [ + "Audio", + "Video", + "Fax", + "Modem" + ] + }, + "Start": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time that the session started, in UTC.", + "datatype": "dateTime" + }, + "Duration": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Length of the session in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "SessionID": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Session Identifier. For the SIP protocol this corresponds to the SIP SDP session identifier.", + "datatype": "string", + "range": [ + { + "max": 16 + } + ] + }, + "SIPSessionID": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SIP Session Identifier", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The source of the session information within one call.", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.RTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The RTP part of the source session information.", + "access": false, + "array": false, + "FarEndIPAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP address of far end VoIP device.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "FarEndUDPPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The UDP port used for current session in the far end device.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "LocalUDPPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The local UDP port used for current session.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "MinJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The minimum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "MaxJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "MeanJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The mean relative transit time in <> between each two packet series as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "PacketDelayVariation": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "1-Point Packet Delay Variation according to <> in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "BufferDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average delay in <> added by buffer processing. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "BurstCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of bursts (as defined in <>) that occur during this session (during one burst several packets MAY be lost). The bursts threshold is configured with the parameter <.RTP.Gmin>>.", + "datatype": "StatsCounter32" + }, + "PacketsReceived": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received for this session.", + "datatype": "StatsCounter64" + }, + "PacketsSent": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets sent for this session.", + "datatype": "StatsCounter64" + }, + "PacketsLost": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been lost for this session (see <>).", + "datatype": "StatsCounter32" + }, + "PacketsDiscarded": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been discarded for this session (see <>).", + "datatype": "StatsCounter32" + }, + "BytesReceived": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes received for this session.", + "datatype": "StatsCounter64" + }, + "BytesSent": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes sent for this session.", + "datatype": "StatsCounter64" + }, + "ReceivePacketLossRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current receive packet loss rate in percent, calculated as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ] + }, + "FarEndPacketLossRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current far end receive packet lost rate in percent, calculated as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ] + }, + "ReceiveInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current receive interarrival jitter in timestamp units. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "FarEndInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current Interarrival jitter in timestamp units as reported from the far-end device via RTCP. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "AverageReceiveInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average receive interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "AverageFarEndInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average far-end interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "RoundTripDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current round trip delay in <> calculated as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "AverageRoundTripDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average round trip delay in <> since the beginning of the current session. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "SamplingFrequency": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Sample frequency in <> used by the codec for this session.", + "datatype": "unsignedInt", + "unit": "Hertz" + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The DSP part of the line session information.", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.ReceiveCodec.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The receive codec used in this session.", + "access": false, + "array": false, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The codec in use for the incoming voice stream. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not silence suppression is in use for the incoming voice stream.", + "datatype": "boolean" + }, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has overrun for this session.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has underrun for this session.", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.TransmitCodec.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The transmit codec used in this session.", + "access": false, + "array": false, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The codec in use for the outgoing voice stream. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not silence suppression is in use for the outgoing voice stream.", + "datatype": "boolean" + }, + "PacketizationPeriod": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current outgoing packetization period in <>.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the transmit jitter buffer has overrun for this session.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the transmit jitter buffer has underrun for this session.", + "datatype": "unsignedInt" + } + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.VoiceQuality.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP Statistics for current session instance.", + "access": false, + "array": false, + "VoIPQualityIndicator": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> The interval is specified by <.QICalculationInterval>> and the quality model used is specified by <.QIModelUsed>>. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. For long sessions the number of values might exceed the limit given by <>. In that case, the CPE MUST remove the oldest values to keep the number of reported values within the limit. The interpretation of the QI values are algorithm-specific, the only constraints being the range and the fact that lower values indicate worse quality than do higher values. For instance, if <> is reported as 78,57,88,79,34,56, and <.QICalculationInterval>> is 10 seconds, the quality during the first ten seconds was 78, the next ten seconds 57, and so on. The last reported value (here 56) might cover a shorter time period than <.QICalculationInterval>>, but the length can be deduced using <>.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + }, + "WorstVoIPQualityIndicatorsValues": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Only the N worst values are stored, where N is the limit stored in the <.NumberOfWorstQIValues>> attribute. The values are given in the same algorithm-specific representation as <>, and MUST be in quality-order with the lowest value first. Example: 34,56,57 are the 3 worst values calculated during the call.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + }, + "WorstVoIPQualityIndicatorTimestamps": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each value represents the timestamp index, given in units of <.QICalculationInterval>>, when the corresponding value in <> was calculated. The first index is number 1. Only the N worst values are stored, where N is the limit stored in <.NumberOfWorstQIValues>>. Example: if <.QICalculationInterval>> is equal to 10 (seconds), the value 6,2,5 designates the time intervals 50-60 s, 10-20 s, and 40-50 s when the 3 worst values were calculated.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + } + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The destination part of session information within one call.", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.RTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The RTP part of the destination session information.", + "access": false, + "array": false, + "FarEndIPAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP address of far end VoIP device.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "FarEndUDPPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The UDP port used for current session in the far end device.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "LocalUDPPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The local UDP port used for current session.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "MinJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The minimum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "MaxJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "MeanJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The mean relative transit time in <> between each two packet series as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "PacketDelayVariation": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "1-Point Packet Delay Variation according to <> in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "milliseconds" + }, + "BufferDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average delay in <> added by buffer processing. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "BurstCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of bursts (as defined in <>) that occur during this session (during one burst several packets MAY be lost). The bursts threshold is configured with the parameter <.RTP.Gmin>>.", + "datatype": "StatsCounter32" + }, + "PacketsReceived": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received for this session.", + "datatype": "StatsCounter64" + }, + "PacketsSent": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets sent for this session.", + "datatype": "StatsCounter64" + }, + "PacketsLost": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been lost for this session (see <>).", + "datatype": "StatsCounter32" + }, + "PacketsDiscarded": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets that have been discarded for this session (see <>).", + "datatype": "StatsCounter32" + }, + "BytesReceived": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes received for this session.", + "datatype": "StatsCounter64" + }, + "BytesSent": { + "type": "unsignedLong", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes sent for this session.", + "datatype": "StatsCounter64" + }, + "ReceivePacketLossRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current receive packet loss rate in percent, calculated as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ] + }, + "FarEndPacketLossRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current far end receive packet lost rate in percent, calculated as defined in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ] + }, + "ReceiveInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current receive interarrival jitter in timestamp units. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "FarEndInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current Interarrival jitter in timestamp units as reported from the far-end device via RTCP. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "AverageReceiveInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average receive interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "AverageFarEndInterarrivalJitter": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average far-end interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "RoundTripDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current round trip delay in <> calculated as defined in <>. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "AverageRoundTripDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Average round trip delay in <> since the beginning of the current session. A value of -1 indicates no reliable value is available.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "microseconds" + }, + "SamplingFrequency": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Sample frequency in <> used by the codec for this session.", + "datatype": "unsignedInt", + "unit": "Hertz" + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The DSP part of the destination session information.", + "access": false, + "array": false, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.ReceiveCodec.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The receive codec used in this session.", + "access": false, + "array": false, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The codec in use for the incoming voice stream. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not silence suppression is in use for the incoming voice stream.", + "datatype": "boolean" + }, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has overrun for this session.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has underrun for this session.", + "datatype": "unsignedInt" + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.TransmitCodec.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The transmit codec used in this session.", + "access": false, + "array": false, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The codec in use for the outgoing voice stream. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not silence suppression is in use for the outgoing voice stream.", + "datatype": "boolean" + }, + "PacketizationPeriod": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current outgoing packetization period in <>.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the transmit jitter buffer has overrun for this session.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the transmit jitter buffer has underrun for this session.", + "datatype": "unsignedInt" + } + } + }, + "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.VoiceQuality.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP Statistics for current session instance.", + "access": false, + "array": false, + "VoIPQualityIndicator": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> The interval is specified by <.QICalculationInterval>> and the quality model used is specified by <.QIModelUsed>>. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. For long sessions the number of values might exceed the limit given by <>. In that case, the CPE MUST remove the oldest values to keep the number of reported values within the limit. The interpretation of the QI values are algorithm-specific, the only constraints being the numeric range and the fact that lower values indicate worse quality than do higher values. For instance, if <> is reported as 78,57,88,79,34,56, and <.QICalculationInterval>> is 10 seconds, the quality during the first ten seconds was 78, the next ten seconds 57, and so on. The last reported value (here 56) might cover a shorter time period than <.QICalculationInterval>>, but the length can be deduced using <>.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + }, + "WorstVoIPQualityIndicatorsValues": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Only the N worst values are stored, where N is the limit stored in the <.NumberOfWorstQIValues>> attribute. The values are given in the same algorithm-specific representation as <>, and MUST be in quality-order with the lowest value first. Example: 34,56,57 are the 3 worst values calculated during the call.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + }, + "WorstVoIPQualityIndicatorTimestamps": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each value represents the timestamp index, given in units of <.QICalculationInterval>>, when the corresponding value in <> was calculated. The first index is number 1. Only the N worst values are stored, where N is the limit stored in <.NumberOfWorstQIValues>>. Example: if <.QICalculationInterval>> is equal to 10 (seconds), the value 6,2,5 designates the time intervals 50-60 s, 10-20 s, and 40-50 s when the 3 worst values were calculated.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "max": 65535 + } + ] + } + } + } + } + } + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Configuration profile that can be shared by VoIP components. A VoIP Profile contains media transport configuration parameters that are common to different VoIP protocols. VoIP Profiles could be used by <>, <>, <>, <> and <>.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this VoIP profile. If the value is set to <>, all components using the profile are disabled, whatever their status is.", + "default": "false", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Name": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string to identify the profile instance.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "DTMFMethod": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Method by which DTMF digits MUST be passed. Enumeration of: InBand, RFC4733, SIPInfo. If <> is non-empty, then this parameter applies only when the current codec is not G.711.", + "default": "InBand", + "list": { + "datatype": "string", + "enumerations": [ + "InBand", + "RFC4733", + "SIPInfo" + ] + } + }, + "DTMFMethodG711": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Method by which DTMF digits MUST be passed if the the current codec is G.711. Enumeration of: InBand, RFC4733, SIPInfo, . If <> indicates that the value of <> is to apply whether or not the the the current codec is G.711.", + "datatype": "string", + "enumerations": [ + "InBand", + "RFC4733", + "SIPInfo", + "" + ] + }, + "QIModelUsed": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Quality model which the CPE shall use to calculate the parameters <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>>. The value MUST be a member of the list reported by the <> parameter.", + "datatype": "string", + "range": [ + { + "max": 128 + } + ] + }, + "QICalculationInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The interval between successive calculations of <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>> values (in <>). If <> is not set then only one final quality value covering the complete session is reported in <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>>.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "NumberOfWorstQIValues": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum number of worst quality indicators to store for each call. The CPE MUST permit <> to be set to any value in the range from 0 to <>.", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile parameters related to the voice stream sent via RTP.", + "access": false, + "array": false, + "LocalPortMin": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Base of port range to be used for incoming RTP streams for this profile.", + "default": "1024", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 65535 + } + ] + }, + "LocalPortMax": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Top of port range to be used for incoming RTP streams for this profile.", + "default": "1024", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 65535 + } + ] + }, + "Gmin": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum number of consecutive received packets after the end of an RTP Loss Event. A Loss Event is defined as as a sequence of lost or discarded packets, possibly including islands of received packets. Each island consists of up to (<> - 1) received packets (a sequence of <> received packets terminates the Loss Event, and so is not an island).", + "default": "16", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 255 + } + ] + }, + "DSCPMark": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Diffserv code point to be used for outgoing RTP and RTCP packets for this profile. It is RECOMMENDED that by default the DSCP for RTP traffic be set to the value to indicate EF traffic.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 63 + } + ] + }, + "VLANIDMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VLAN ID (as defined in <>) to be used for outgoing RTP packets for this profile. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "EthernetPriorityMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Ethernet priority code (as defined in <>) to be used for outgoing RTP packets for this profile. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "TelephoneEventPayloadType": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Payload type to be used for RTP telephone events. This parameter indicates the payload type to be used for DTMF events if transmission of DTMF information is in use according to <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 128 + } + ] + }, + "JitterBufferType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The indicates if the jitte buffer is static or dynamic.", + "datatype": "string", + "enumerations": [ + "Static", + "Dynamic" + ] + }, + "JitterBufferMaxSize": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximal (or static) jitter buffer size in <>.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "JitterBufferMinSize": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimal jitter buffer size in <>, not used if static buffer is used.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "JitterBufferActualSize": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Actual jitter buffer size in <>, if static buffer ist used equal to <>.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.RTCP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile parameters related to RTCP.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable RTCP.", + "datatype": "boolean" + }, + "TxRepeatInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transmission repeat interval, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + }, + "LocalCName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Local Cname (canonical name).", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + } + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.SRTP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile parameters for secure voice transmission via SRTP.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the use of SRTP. If RTCP is enabled, a <> value of this parameter also implies the use of SRTCP.", + "datatype": "boolean" + }, + "KeyingMethods": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Enumeration of: Null, Static, SDP, IKE.", + "list": { + "datatype": "string", + "enumerations": [ + "Null", + "Static", + "SDP", + "IKE" + ] + } + }, + "EncryptionKeySizes": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.Redundancy.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "VoIP profile parameters for RTP payload redundancy as defined by <>.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the use of RTP payload redundancy as defined by <>.", + "default": "false", + "datatype": "boolean" + }, + "PayloadType": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The Payload Type of RTP packet as defined in <>. Values SHOULD be within the range of dynamic Payload Types (96-127).", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 127 + } + ] + }, + "BlockPayloadType": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Block Payload Type of redundancy packet.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 127 + } + ] + }, + "FaxAndModemRedundancy": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the redundancy number for fax and modem pass-through data transmissions. A non-negative value indicates that <> is to be used for fax and modem pass-through data. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for fax and modem pass-through data. If <> is present, then <> applies only to fax transmissions, but not to modem transmissions.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1, + "max": 5 + } + ] + }, + "ModemRedundancy": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the redundancy number for modem pass-through data transmissions. A non-negative value indicates that <> is to be used for modem pass-through data. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for modem pass-through data.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1, + "max": 5 + } + ] + }, + "DTMFRedundancy": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the redundancy number for DTMF transmissions. A non-negative value indicates that <> is to be used for DTMF. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for DTMF.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1, + "max": 5 + } + ] + }, + "VoiceRedundancy": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the redundancy number for general voice transmissions. A non-negative value indicates that <> is to be used for voice. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for voice.", + "default": "-1", + "datatype": "int", + "range": [ + { + "min": -1, + "max": 5 + } + ] + }, + "MaxSessionsUsingRedundancy": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum number of sessions using <> payload redundancy simultaneously in this profile. A value of zero indicates no explicit limit on the number of sessions using redundancy.", + "default": "0", + "datatype": "unsignedInt" + } + } + }, + "Device.Services.VoiceService.{i}.VoIPProfile.{i}.FaxT38.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "T.38 Fax information for devices that support T.38 relay.", + "access": false, + "array": false, + "MaxBitRate": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum data rate in <> for fax as defined in <>.", + "default": "14400", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ], + "unit": "bits per second" + }, + "HighSpeedRedundancy": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the packet-level redundancy for high-speed data transmissions (i.e., T.4 image data).", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 3 + } + ] + }, + "LowSpeedRedundancy": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Specifies the packet-level redundancy for low-speed data transmissions (i.e., T.30 handshaking information).", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 5 + } + ] + }, + "TCFMethod": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The method with which data is handled over the network.", + "datatype": "string", + "enumerations": [ + "Local", + "Network" + ] + } + } + }, + "Device.Services.VoiceService.{i}.CodecProfile.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table of codec profiles. This table MUST be populated with the set of supported codecs matching <>. Additional entries can be added to use different configurations of codec or to use the same codec configuration in different CodecList parameters.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable the use of this combination of codec parameters.", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Codec": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "PacketizationPeriod": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each item is a supported packetization period, in milliseconds, or continuous ranges of packetization periods as defined in <.PacketizationPeriod>>. The ACS MAY restrict the set of packetization periods by modifying the value of this parameter to a more restricted set of values than is listed in <.PacketizationPeriod>>. The CPE MUST ignore any values or portions of ranges outside of those specified in <.PacketizationPeriod>>.", + "list": { + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + } + }, + "SilenceSuppression": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates support for silence suppression for this codec. If silence suppression is supported, it can be disabled for this codec/bit-rate by setting this parameter to <>.", + "datatype": "boolean" + } + }, + "Device.Services.VoiceService.{i}.Tone.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines the contents of the tones and announcements generated locally by the VoIP device.", + "access": false, + "array": false, + "DescriptionNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "PatternNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "EventProfileNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "DefautEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the default tone event profile.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Device.Services.VoiceService.{i}.Tone.Description.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table defines the contents of an individual tone. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "ToneEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the tone entry. If a disabled tone entry is referenced, the result is that no tone is played.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ToneName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Name of the tone.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "TonePattern": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the <.>> object that begins this tone. If the tone is specified by a tone file instead of a tone pattern, this parameter MUST be set to <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ToneFile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The file name of a tone file locally present on the CPE. An ACS MUST use the Download method with FileType=4 Tone File as defined in <> to download a tone file. If the tone is specified by a tone pattern instead of a tone file, this parameter MUST be <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ToneRepetitions": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The default number of times the data in <> is repeated. If the value is 0 (zero) then <> is played indefinitely.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 255 + } + ] + }, + "ToneText": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The text to be displayed by on the screen of the VoIP device when the tone is played and no specific error message has been provided. This parameter is applicable only for VoIP devices capable text display.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + } + }, + "Device.Services.VoiceService.{i}.Tone.Pattern.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in the table defines a single phase in an overall tone pattern. Each phase identifies the entry that corresponds to the next phase. Each entry in the table refers to the entry that corresponds to the next phase of the pattern. The table MAY be set up such that entries form loops, or MAY end after a finite sequence. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ToneOn": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not a tone is on during this phase of the pattern. If the value is <>, the frequency and power parameters in this entry MUST be ignored.", + "default": "false", + "datatype": "boolean" + }, + "Frequency1": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "First tone frequency in <>. A value of zero indicates this tone component is not used.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 4095 + } + ], + "unit": "hertz" + }, + "Power1": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "First tone power level in units of 0.1 <>.", + "default": "0", + "datatype": "int", + "unit": "dBm0" + }, + "Frequency2": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Second tone frequency in <>. A value of zero indicates this tone component is not used.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 4095 + } + ], + "unit": "hertz" + }, + "Power2": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Second tone power level in units of 0.1 <>.", + "default": "0", + "datatype": "int", + "unit": "dBm0" + }, + "Frequency3": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Third tone frequency in <>. A value of zero indicates this tone component is not used.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 4095 + } + ], + "unit": "hertz" + }, + "Power3": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Third tone power level in units of 0.1 <>.", + "default": "0", + "datatype": "int", + "unit": "dBm0" + }, + "Frequency4": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Fourth tone frequency in <>. A value of zero indicates this tone component is not used.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 4095 + } + ], + "unit": "herts" + }, + "Power4": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Fourth tone power level in units of 0.1 <>.", + "default": "0", + "datatype": "int", + "unit": "dBm0" + }, + "ModulationFrequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Modulation frequency in <>. A value of zero indicates this tone component is not used.", + "default": "0", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 4095 + } + ], + "unit": "hertz" + }, + "ModulationPower": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Modulation power level in units of 0.1 <>.", + "default": "0", + "datatype": "int", + "unit": "dBm0" + }, + "Duration": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The duration of this phase of the tone pattern, in <>. A value of zero indicates an unlimited duration.", + "default": "0", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "NextPattern": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> for the next phase of the tone pattern, after the specified <> of this phase has completed. <> <> indicates that the tone pattern is to terminate after the current phase is completed.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.Tone.EventProfile.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Configuration profile for tone events.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "EventNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Tone.EventProfile.{i}.Event.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table of events for which a tone is defined. The table is pre-populated with the list of events for which the CPE supports definition of tones.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Function": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The event for which the tone is to apply. Enumeration of: Busy, Confirmation, Dial, LineMessagesWaiting, OffHookWarning, RingBack, ReOrder, Stutterdial, CallWaiting1, CallWaiting2, CallWaiting3, CallWaiting4, AlertingSignal, SpecialDial, SpecialInfo, Release, Congestion, UserDefined1, UserDefined2, UserDefined3, UserDefined4. The parameter MAY instead indicate a vendor-specific event name, which MUST use the format defined in <>.", + "datatype": "string", + "enumerations": [ + "Busy", + "Confirmation", + "Dial", + "LineMessagesWaiting", + "OffHookWarning", + "RingBack", + "ReOrder", + "Stutterdial", + "CallWaiting1", + "CallWaiting2", + "CallWaiting3", + "CallWaiting4", + "AlertingSignal", + "SpecialDial", + "SpecialInfo", + "Release", + "Congestion", + "UserDefined1", + "UserDefined2", + "UserDefined3", + "UserDefined4" + ] + }, + "Tone": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The description for the tone to be associated with the given event. <> <> indicates no tone is to be played for this event.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models a telephony terminal, each object in the table represents an end-user interface. This object has to be used when the CPE is a voice endpoint itself.", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this terminal.", + "datatype": "boolean" + }, + "QuiescentMode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of this terminal.", + "datatype": "string", + "enumerations": [ + "Up", + "Initializing", + "Registering", + "Unregistering", + "Error", + "Testing", + "Quiescent", + "Disabled" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ToneEventProfile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Reference to the <> to use with this terminal. If this parameter is <>, the value of <> is used instead.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AudioNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "DiagTests()": { + "type": "command", + "async": true, + "protocols": [ + "usp" + ], + "input": { + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates which test to perform. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", + "datatype": "string", + "enumerations": [ + "RingingTest" + ] + } + }, + "output": { + "Status": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Canceled, Complete, Error, Error_Internal, Error_Other. If the value of this parameter is anything other than <>, the values of the other results parameters for this test are indeterminate.", + "datatype": "string", + "enumerations": [ + "Canceled", + "Complete", + "Error", + "Error_Internal", + "Error_Other" + ] + }, + "PhoneRinging": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Indicates whether or not the phone associated with this port is ringing. This parameter is applicable only if <> is supported.", + "datatype": "boolean" + } + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.Audio.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object models the audio outputs of a telephony terminal.(ex. Handset, handsfree, ...)", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The internal name of this audio.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.Audio.{i}.VoiceProcessing.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to voice processing capabilities.", + "access": false, + "array": false, + "TransmitGain": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Gain in <> to apply to the transmitted voice signal prior to encoding. This gain is a modifier of the default transmit-gain, which is unspecified.", + "datatype": "int", + "unit": "0.1 dB" + }, + "ReceiveGain": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Gain in <> to apply to the received voice signal after decoding. This gain is a modifier of the default receive-gain, which is unspecified.", + "datatype": "int", + "unit": "0.1 dB" + }, + "EchoCancellationEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enable or disable echo cancellation for this line.", + "datatype": "boolean" + }, + "EchoCancellationInUse": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indication of whether or not echo cancellation is currently in use for this line.", + "datatype": "boolean" + }, + "EchoCancellationTail": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Tail length in <> of the echo canceller associated with this line (whether or not it is currently in use).", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.ButtonMap.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object is provided to permit the purpose of the CPE buttons and function keys to be defined via the ACS. Support of this object is appropriate only for a device that has programmable buttons in its user interface.", + "access": false, + "array": false, + "ButtonNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.ButtonMap.Button.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table specifies the purpose of each programmable CPE button / function key and whether the user has permission to reprogram the button.", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ButtonName": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Name of the button.", + "datatype": "string", + "range": [ + { + "max": 16 + } + ] + }, + "FacilityAction": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The value MUST be a member of the list reported by <>. This is an OPTIONAL parameter that SHOULD NOT be specified for buttons not related to a particular Facility Action (e.g., invocation of Call Return) implemented by the VoIP device. The parameter MAY instead indicate a vendor-specific Facility Action, which MUST use the format defined in <>. An empty or unrecognized string (i.e. a Facility Action not supported by the CPE) means that there is no Facility Action to be taken. If this parameter is specified (not <>) then <> SHOULD be <>.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "FacilityActionArgument": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Optional argument associated with the specified <>. The interpretation of the argument is dependent on the specific FacilityAction.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "QuickDialNumber": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is a string representing a quick dial destination number. Only the characters 0-9, * and # can be used. If this parameter is specified (not <>) then <> SHOULD be <>.", + "datatype": "string", + "range": [ + { + "max": 40 + } + ] + }, + "ButtonMessage": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This string represents the message to be displayed on the screen when the button or function key is pressed.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "UserAccess": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter indicates whether the user has permission to program the button or function key. If this parameter is set to <> then <>, <> and <> MUST all be <>.", + "datatype": "boolean" + } + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object defines the ring sequences that may be generated by the terminal.", + "access": false, + "array": false, + "DescriptionNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "PatternNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.Description.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in this table defines the contents of an individual ring specification. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "RingEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the ring description entry. If a disabled ring description entry is referenced, the result is that no ring is played.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "RingName": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Name of the ring.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "RingPattern": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This is the <.>> object that begins this ring. If the ring is specified by a ring file instead of a ring pattern, this parameter MUST be set to <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "RingFile": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The file name of a ring file file locally present on the CPE. An ACS MUST use the Download method with FileType=5 Ringer File as defined in <> to download a ring file. If the ring is specified by a ring pattern instead of a ring file, this parameter MUST be <>.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.Pattern.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry in the table defines a single phase in an overall ring pattern. Each phase identifies the entry that corresponds to the next phase. Each entry in the table refers to the entry that corresponds to the next phase of the pattern. The table MAY be set up such that entries form loops, or MAY end after a finite sequence. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", + "uniqueKeys": [ + "Alias" + ], + "access": true, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "default": "false", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "RingerOn": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Whether or not a ringer is on during this phase of the pattern.", + "default": "false", + "datatype": "boolean" + }, + "Duration": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The duration of this phase of the ring pattern, in <>. A value of zero indicates an unlimited duration.", + "default": "0", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "NextPattern": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The <> for the next phase of the ring pattern, after the specified <> of this phase has completed. <> <> indicates that the ring pattern is to terminate after the current phase is completed.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.VoiceService.{i}.Terminal.{i}.DiagTests.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "Terminal level tests.", + "access": false, + "array": false, + "DiagnosticsState": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", + "datatype": "DiagnosticsState", + "enumerations": [ + "None", + "Requested", + "Canceled", + "Complete", + "Error" + ] + }, + "TestSelector": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Indicates which test to perform. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", + "datatype": "string", + "enumerations": [ + "RingingTest" + ] + }, + "PhoneRinging": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp" + ], + "description": "Indicates whether or not the phone associated with this port is ringing. This parameter is applicable only if <> is supported.", + "datatype": "boolean" + } + } + }, + "Device.Services.VoiceService.{i}.ClockSynchronization.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Clock source configuration for Time-Division multiplexing subsystem.", + "access": false, + "array": false, + "ClockSourceNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "CurrentSource": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The currently selected external clock source. If the current clock source is not selected from the <> table, e.g. an internal holdover clock, this parameter is set to <>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Description": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human readable description of the current clock synchronization status.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "AutoRevert": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If set to <> the CPE automatically reverts back to a higher priority external clock source when it becomes available once again. If set to <>, an automatic change between external clock sources only occurs when the current source becomes unavailable.", + "datatype": "boolean" + }, + "Device.Services.VoiceService.{i}.ClockSynchronization.ClockSource.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "List of eligible external clock sources. The number of entries in this table depends on the maximum number of external clock sources supported by the CPE.", + "uniqueKeys": [ + "Alias", + "Order", + "Interface" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this entry.", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Order": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Position of the <> entry in the order of precedence. A value of 1 indicates the first entry considered (highest precedence).", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 100 + } + ] + }, + "Interface": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A reference to a physical interface from which a clock signal can be derived. <.>> is eligible as a clock source when <.ClockMode>> is <.ClockMode>>. <.>> is eligible as a clock source when <.ProtocolEmulation>> is <.ProtocolEmulation>>. <>", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + } + }, + "Device.Services.STBService.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The top-level object for an STB CPE.", + "uniqueKeys": [ + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this <> instance.", + "datatype": "boolean" + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Device.Services.STBService.{i}.Capabilities.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "The overall capabilities of the STB CPE. This is a constant read-only object, meaning that only a firmware update will cause these values to be altered.", + "access": false, + "array": false, + "MaxActiveAVStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneously active AV streams supported by the STB. A value of -1 indicates no specific limit on the number of active streams. A value of 0, while not strictly illegal, would indicate an STB that doesnt support AV streams, which is extremely unlikely.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxActiveAVPlayers": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneously active AV players supported by the STB. An AV player is associated with a presentation device (such as a TV set). Note that this is the strict maximum but, depending on the AV streams to be decoded, a given STB may not always have the resources to run all of these AV players, e.g. it might be able to decode one main picture and one PIP in standard definition, but just a main picture and no PIP in high definition. A value of -1 indicates no specific limit on the number of active players. A value of 0, while not strictly illegal, would indicate an STB that doesnt support AV players, which is extremely unlikely.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "Device.Services.STBService.{i}.Capabilities.FrontEnd.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Front-end capabilities.", + "access": false, + "array": false, + "Device.Services.STBService.{i}.Capabilities.FrontEnd.DVBT.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Capabilities of the DVB-T receiver.", + "access": false, + "array": false, + "MaxActiveDVBTStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous active AV streams supported by the DVB-T FrontEnd. A value of -1 indicates no specific limit on the number of active streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxLogicalChannels": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of logical channels that can be contained in a Service List Database. A value of -1 indicates no specific limit on the number of logical channels.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + } + }, + "Device.Services.STBService.{i}.Capabilities.FrontEnd.IP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP front-end capabilities.", + "access": false, + "array": false, + "MaxActiveIPStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous active AV streams supported by the IP FrontEnd. A value of -1 indicates no specific limit on the number of active streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxActiveInboundIPStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous active Inbound AV streams supported by the IP FrontEnd. A value of -1 indicates no specific limit on the number of active streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxActiveOutboundIPStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of simultaneous active Outbound AV streams supported by the IP FrontEnd. A value of -1 indicates no specific limit on the number of active streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "StreamingControlProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported streaming control protocols.", + "list": { + "datatype": "string", + "enumerations": [ + "RTSP", + "IGMP", + "IGMPv2", + "IGMPv3", + "DSM-CC" + ] + } + }, + "StreamingTransportProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Network protocols supported for AV streaming.", + "list": { + "datatype": "string", + "enumerations": [ + "UDP", + "TCP", + "SCTP", + "DCCP", + "RTP", + "HTTP" + ] + } + }, + "StreamingTransportControlProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport control protocols supported for AV streaming in combination with RTP.", + "list": { + "datatype": "string", + "enumerations": [ + "RTCP", + "ARQ", + "AL-FEC" + ] + } + }, + "DownloadTransportProtocols": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Network protocols supported for AV download.", + "list": { + "datatype": "string", + "enumerations": [ + "HTTP", + "HTTPS", + "FTP", + "FTPS", + "SFTP", + "TFTP" + ] + } + }, + "MultiplexTypes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV multiplex types supported by the front end.", + "list": { + "datatype": "string", + "enumerations": [ + "None", + "MPEG1-SYS", + "MPEG2-PS", + "VOB", + "MPEG2-TS" + ] + } + }, + "MaxDejitteringBufferSize": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Describes the maximum de-jittering buffer size, in <>, supported by the STB. A value of -1 indicates no specific limit on the buffer size.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "bytes" + } + } + }, + "Device.Services.STBService.{i}.Capabilities.PVR.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "PVR capabilities.", + "access": false, + "array": false, + "MaxIOStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of AV streams that the PVR can simultaneously record and playback. For example a time shift, consisting of a record and a play back is considered as 2 streams. A value of -1 indicates no specific limit on the number of streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxRecordingStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of AV streams that the PVR can simultaneously record. A value of -1 indicates no specific limit on the number of streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxPlaybackStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of AV streams that the PVR can simultaneously play back. A value of -1 indicates no specific limit on the number of streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MaxTimeDelay": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum time delay, in <>, that the PVR time-shift mode can support. A value of -1 indicates no specific limit on the time delay.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "seconds" + } + }, + "Device.Services.STBService.{i}.Capabilities.AudioDecoder.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio decoder capabilities.", + "access": false, + "array": false, + "AudioStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio standards supported by this STB.", + "list": { + "datatype": "string", + "enumerations": [ + "MPEG1-Part3-Layer2", + "MPEG1-Part3-Layer3", + "MPEG2-Part3 -Layer2", + "MPEG2-Part3-Layer3", + "MPEG2.5", + "MP3-PRO", + "MP3-Surround", + "MPEG2-AAC-LC", + "MPEG4-AAC-LC", + "MPEG4-AAC-MP", + "MPEG4-BSAC", + "MPEG4-AAC-HE-v2", + "MPEG-Surround", + "DOLBY-AC3", + "DOLBY-DD+", + "DTS", + "DTS-HD" + ] + } + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video decoder capabilities.", + "access": false, + "array": false, + "VideoStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video standards supported by this STB.", + "list": { + "datatype": "string", + "enumerations": [ + "MPEG2-Part2", + "MPEG4-Part2", + "MPEG4-Part10", + "SMPTE-VC-1" + ] + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG2Part2.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Object describing the set of supported MPEG2 profiles and levels for this STB. It also describes the set of audio standards supported when MPEG2 Part 2 is used as the video standard.", + "access": false, + "array": false, + "AudioStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio Standards supported by the Player when associated with MPEG2 Part 2 Video.", + "list": { + "datatype": "string" + } + }, + "ProfileLevelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of instances of <>.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG2Part2.ProfileLevel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to describe the set of profiles and levels combinations supported by the STB when MPEG2 Part 2 is used as video standard. <> The table MUST include a distinct entry for each supported combination of these parameters.", + "uniqueKeys": [ + "Profile", + "Level", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Profile": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the MPEG2 Part 2 profile.", + "datatype": "string", + "enumerations": [ + "SP", + "MP", + "SNR", + "Spt", + "HP", + "4:2:2" + ] + }, + "Level": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the MPEG2 part 2 level.", + "datatype": "string", + "enumerations": [ + "LL", + "ML", + "H-14", + "HL" + ] + }, + "MaximumDecodingCapability": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum decoding capability for this video standard in <>. This strictly depends on the profile and level selected.", + "datatype": "unsignedInt", + "unit": "Kilobits per second" + } + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG4Part2.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Object describing the set of supported profiles and levels for this STB. It also describes the set of audio standards supported when MPEG4 Part 2 is used as the video standard.", + "access": false, + "array": false, + "AudioStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio Standards supported by the Player when associated with MPEG4 Part 2 video.", + "list": { + "datatype": "string" + } + }, + "ProfileLevelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of instances of <>.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG4Part2.ProfileLevel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to describe the set of profiles and levels combinations supported by the STB when MPEG4 Part 2 is used as video standard. <> The table MUST include a distinct entry for each supported combination of these parameters.", + "uniqueKeys": [ + "Profile", + "Level", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Profile": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the MPEG4 Part 2 profile.", + "datatype": "string", + "enumerations": [ + "SIMPLE", + "SIMPLE SCALABLE", + "CORE", + "CORE SCALABLE", + "ADVANCED CORE", + "MAIN", + "N-BIT", + "ADVANCED REAL TIME SIMPLE", + "ADVANCED CODING EFFICIENCY", + "SIMPLE STUDIO", + "CORE STUDIO", + "ADVANCED SIMPLE", + "FINE GRANULARITY SCALABLE", + "ADVANCED SCALABLE TEXTURE", + "ANIMATED 2D MESH", + "BASIC ANIMATED TEXTURE", + "STILL SCALABLE TEXTURE", + "SIMPLE FACE", + "SIMPLE FBA" + ] + }, + "Level": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the MPEG4 Part 2 level.", + "datatype": "string", + "enumerations": [ + "L5", + "L4", + "L4a", + "L3b", + "L3", + "L2", + "L1", + "L0" + ] + }, + "MaximumDecodingCapability": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum decoding capability for this video standard in <>. This strictly depends on the profile and level selected.", + "datatype": "unsignedInt", + "unit": "Kilobits per second" + } + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG4Part10.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Object describing the set of supported profiles and levels for this STB. It also describes the set of audio standards supported when MPEG4 Part 10 is used as the video standard.", + "access": false, + "array": false, + "AudioStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio Standards supported by the Player when associated with MPEG4 Part 10 video.", + "list": { + "datatype": "string" + } + }, + "ProfileLevelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of instances of <>.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.MPEG4Part10.ProfileLevel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to describe the set of profiles and levels combinations supported by the STB when MPEG4 Part 10 is used as video standard. <> The table MUST include a distinct entry for each supported combination of these parameters.", + "uniqueKeys": [ + "Profile", + "Level", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Profile": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported MPEG4 Part 10 profiles.", + "list": { + "datatype": "string", + "enumerations": [ + "BASELINE", + "MAIN", + "EXTENDED", + "HIGH", + "HIGH 10", + "HIGH 4:2:2", + "HIGH 4:4:4" + ] + } + }, + "Level": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported MPEG4 Part 10 Levels.", + "list": { + "datatype": "string", + "enumerations": [ + "1", + "1b", + "1.1", + "1.2", + "1.3", + "2", + "2.1", + "2.2", + "3", + "3.1", + "3.2", + "4", + "4.1", + "4.2", + "5", + "5.1" + ] + } + }, + "MaximumDecodingCapability": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum decoding capability for this video standard in <>. This strictly depends on the profile and level selected.", + "datatype": "unsignedInt", + "unit": "Kilobits per second" + } + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.SMPTEVC1.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Object describing the set of supported SMPTE-VC-1 profiles and levels for this STB. It also describes the set of audio standards supported when SMPTE-VC-1 is used as the video standard.", + "access": false, + "array": false, + "AudioStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio Standards supported by the Player when associated with SMPTE-VC-1 video.", + "list": { + "datatype": "string" + } + }, + "ProfileLevelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of instances of <>.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Capabilities.VideoDecoder.SMPTEVC1.ProfileLevel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to describe the set of profiles and levels combinations supported by the STB when SMPTE-VC-1 is used as video standard. <> The table MUST include a distinct entry for each supported combination of these parameters.", + "uniqueKeys": [ + "Profile", + "Level", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Profile": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the SMPTE-VC-1 profile.", + "datatype": "string", + "enumerations": [ + "SP", + "MP", + "AP" + ] + }, + "Level": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Identifier of the SMPTE-VC-1 level.", + "datatype": "string", + "enumerations": [ + "LL", + "ML", + "HL", + "L0", + "L1", + "L2", + "L3", + "L4" + ] + }, + "MaximumDecodingCapability": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The maximum decoding capability for this video standard in <>. This strictly depends on the profile and level selected.", + "datatype": "unsignedInt", + "unit": "Kilobits per second" + } + } + } + }, + "Device.Services.STBService.{i}.Capabilities.AudioOutput.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio output capabilities. The audio output stage may include selecting output formats, selecting output connectors, and copy protection.", + "access": false, + "array": false, + "AudioFormats": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported audio output formats. Enumeration of: ANALOG-MONO, ANALOG-2-CHANNELS, ANALOG-5.1-CHANNELS, DIGITAL-OPTICAL-SP/DIF, DIGITAL-COAXIAL-SP/DIF, HDMI, RF. Note that these refer to supported output formats and not to physical connectors.", + "list": { + "datatype": "string", + "enumerations": [ + "ANALOG-MONO", + "ANALOG-2-CHANNELS", + "ANALOG-5.1-CHANNELS", + "DIGITAL-OPTICAL-SP/DIF", + "DIGITAL-COAXIAL-SP/DIF", + "HDMI", + "RF" + ] + } + } + }, + "Device.Services.STBService.{i}.Capabilities.VideoOutput.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video output capabilities. The video output stage may include selecting output formats, selecting output connectors, and copy protection.", + "access": false, + "array": false, + "CompositeVideoStandards": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Analog composite video standards supported for video output. This applies only to CVBS video output.", + "list": { + "datatype": "string", + "enumerations": [ + "NTSC-J", + "NTSC-M", + "PAL-B", + "PAL-D", + "PAL-G", + "PAL-H", + "PAL-I", + "PAL-N", + "PAL-M", + "SECAM-B", + "SECAM-G", + "SECAM-H", + "SECAM-D", + "SECAM-K", + "SECAM-K1", + "SECAM-L" + ] + } + }, + "VideoFormats": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported video output formats. Enumeration of: CVBS, S-Video, YPrPb, RGsB, RGB, HDMI, DVI, RF. Note that these refer to supported output formats and not to physical connectors.", + "list": { + "datatype": "string", + "enumerations": [ + "CVBS", + "S-Video", + "YPrPb", + "RGsB", + "RGB", + "HDMI", + "DVI", + "RF" + ] + } + }, + "Macrovision": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported version of Macrovision digital content protection standard.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "HDCP": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported version of HDCP digital content protection standard.", + "datatype": "string", + "range": [ + { + "max": 32 + } + ] + }, + "DisplayFormats": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a supported display format and MUST be in the form of \u201cx:y\u201d, such as for example \u201c4:3, 16:9, 14:9. <>", + "list": { + "datatype": "string", + "pattern": [ + "\\d+:\\d+" + ] + } + } + }, + "Device.Services.STBService.{i}.Capabilities.HDMI.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the HDMI interface, if any.", + "access": false, + "array": false, + "SupportedResolutions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video resolutions supported for the HDMI video output. Enumeration of: 640x480p/60Hz, 1280x720p/60Hz, 1920x1080i/60Hz, 720x480p/60Hz, 720(1440)x480i/60Hz, 1280x720p/50Hz, 1920x1080i/50Hz, 720x576p/50Hz, 720(1440)x240p/60Hz, 2880x480i/60Hz, 2880x240p/60Hz, 1440x480p/60Hz, 1920x1080p/60Hz, 720(1440)x288p/50Hz, 2880x576i/50Hz, 2880x288p/50Hz, 1440x576p/50Hz, 1920x1080p/50Hz, 1920x1080p/24Hz, 1920x1080p/25Hz, 1920x1080p/30Hz, 2880x480p/60Hz, 2880x576p/50Hz, 1920x1080i (1250 total)/50Hz, 720(1440)x480i/120Hz, 720x480p/120Hz, 1920x1080i/120Hz, 1280x720p/120Hz, 720(1440)x480i/240Hz, 720x480p/240Hz, 720(1440)x576i/100Hz, 720x576p/100Hz, 1920x1080i/100Hz, 1280x720p/100Hz, 720(1440)x576i/200Hz, 720x576p/200Hz, 1280x720p/24Hz, 1280x720p/25Hz, 1280x720p/30Hz, 1920x1080p/120Hz, 1920x1080p/100Hz.", + "list": { + "datatype": "string", + "enumerations": [ + "640x480p/60Hz", + "1280x720p/60Hz", + "1920x1080i/60Hz", + "720x480p/60Hz", + "720(1440)x480i/60Hz", + "1280x720p/50Hz", + "1920x1080i/50Hz", + "720x576p/50Hz", + "720(1440)x240p/60Hz", + "2880x480i/60Hz", + "2880x240p/60Hz", + "1440x480p/60Hz", + "1920x1080p/60Hz", + "720(1440)x288p/50Hz", + "2880x576i/50Hz", + "2880x288p/50Hz", + "1440x576p/50Hz", + "1920x1080p/50Hz", + "1920x1080p/24Hz", + "1920x1080p/25Hz", + "1920x1080p/30Hz", + "2880x480p/60Hz", + "2880x576p/50Hz", + "1920x1080i (1250 total)/50Hz", + "720(1440)x480i/120Hz", + "720x480p/120Hz", + "1920x1080i/120Hz", + "1280x720p/120Hz", + "720(1440)x480i/240Hz", + "720x480p/240Hz", + "720(1440)x576i/100Hz", + "720x576p/100Hz", + "1920x1080i/100Hz", + "1280x720p/100Hz", + "720(1440)x576i/200Hz", + "720x576p/200Hz", + "1280x720p/24Hz", + "1280x720p/25Hz", + "1280x720p/30Hz", + "1920x1080p/120Hz", + "1920x1080p/100Hz" + ] + } + }, + "CECSupport": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether the STB is supporting HDMI-CEC features as described in <>.", + "datatype": "boolean" + }, + "HDMI3D": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether the STB is supporting the 3D video formats mandated by <>.", + "datatype": "boolean" + } + }, + "Device.Services.STBService.{i}.Capabilities.CDS.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the Content Download System, if any.", + "access": false, + "array": false, + "PushCapable": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Capability of providing a CDS Push service for the operator initiated download of content items to local storage via a broadband IP connection.", + "datatype": "boolean" + }, + "PullCapable": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Capability of providing a CDS Pull service for the user initiated download of content items to a local storage via a broadband IP connection.", + "datatype": "boolean" + } + }, + "Device.Services.STBService.{i}.Capabilities.CA.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the Conditional Access, if any.", + "access": false, + "array": false, + "CASystems": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique identifiers (e.g. commercial names) of supported CA systems.", + "list": { + "datatype": "string", + "maxsize": 1024 + } + } + }, + "Device.Services.STBService.{i}.Capabilities.DRM.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the Digital Rights Management, if any.", + "access": false, + "array": false, + "DRMSystems": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique identifiers (e.g. commercial names) of supported DRM systems.", + "list": { + "datatype": "string", + "maxsize": 1024 + } + } + }, + "Device.Services.STBService.{i}.Capabilities.ServiceMonitoring.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the capabilities of the <> object.", + "access": false, + "array": false, + "ServiceTypes": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Supported service types, each of which relates to an AV stream source. Enumeration of: IPTV, VoD, IP, TEST, IP-All, CAB, DTT, SAT, PVR. Note that none of the standard service types cover LAN-sourced IP streams.", + "list": { + "datatype": "string", + "enumerations": [ + "IPTV", + "VoD", + "IP", + "TEST", + "IP-All", + "CAB", + "DTT", + "SAT", + "PVR" + ] + } + }, + "MaxEventsPerSampleInterval": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of events of each applicable statistic that the STB is able to store for each sample interval. A value of -1 indicates no specific maximum number of events.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "bytes" + }, + "MaxActiveMainStreams": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of AV Main streams for which the STB can simultaneously collect statistics. A value of -1 indicates no specific limit on the number of active streams.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "MinSampleInterval": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum sample interval in <> that the STB MUST be able to support. A value of -1 indicates no specific minimum sample interval.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ], + "unit": "seconds" + }, + "MaxReportSamples": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of samples of each statistic that the STB is able to store and report. A value of -1 indicates no specific maximum number of samples.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "HighLevelMetricNames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The names of the supported high-level metrics. If a metric produces several different scores (e.g. an audio, a video, and an audiovisual score), then they MUST be explicitly named. Example (using XYZ as the name of the base metric): XYZAudio,XYZVideo,XYZAudiovisual.", + "list": { + "datatype": "string", + "maxsize": 1024 + } + }, + "MaxMainStreamEventLogEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of event log entries that the STB is able to record for a MainStream object instance.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.Capabilities.AudienceStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the capabilities of the <> object.", + "access": false, + "array": false, + "MaxAudienceStatsChannels": { + "type": "int", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of channels that the STB MUST support in the <> object A value of -1 indicates no specific limit on the number of channels.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + } + } + }, + "Device.Services.STBService.{i}.Components.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Details of STB logical or physical internal components. Unlike the <> object, which is read-only and which doesnt describe individual instances, this object contains some writeable parameters.", + "access": false, + "array": false, + "FrontEndNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "AudioDecoderNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "VideoDecoderNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "AudioOutputNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "VideoOutputNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "SCARTNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "CANumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "DRMNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "HDMINumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "SPDIFNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "FrontEnd instance table. Each front-end instance, including vendor-specific front-end types, will normally have a sub-object that corresponds to the front-end type (e.g. DVB-T or IP).", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this front-end.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this front-end. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this front-end.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T front-end details. This object will normally be present if and only if this front-end is a DVB-T front-end. Parameters are taken from the DGTVi D-Book <>.", + "access": false, + "array": false, + "InstallProgress": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "usp" + ], + "description": "Progression in <> of the current scan. The value is undefined when a scan is not in progress.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ], + "unit": "%" + }, + "Install()": { + "type": "command", + "async": true, + "protocols": [ + "usp" + ], + "input": { + "StartFrequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Frequency (in <>) at which to start the scanning process.", + "datatype": "unsignedInt", + "unit": "kHz" + }, + "StopFrequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Frequency (in <>) at which to stop the scanning process.", + "datatype": "unsignedInt", + "unit": "kHz" + } + } + }, + "LogicalChannelConnect()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ], + "input": { + "LogicalChannelNumber": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "Logical channel number to connect to (the logical channels preferred service will be connected to). If a <> instance with ServiceType = DTT is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance.", + "datatype": "unsignedInt" + } + } + }, + "ServiceConnect()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ], + "input": { + "DvbId": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "DvbId of the service to connect to. If a <> instance with ServiceType = DTT is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance.", + "datatype": "string", + "range": [ + { + "max": 12 + } + ] + } + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.Modulation.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T modulation details.", + "access": false, + "array": false, + "Frequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the current frequency in <>. The value of this parameter is undefined while installing the service list (see <.DVBT.Install>>).", + "datatype": "unsignedInt", + "unit": "kHz" + }, + "ChannelBandwidth": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the channel bandwidth in use.", + "datatype": "string", + "enumerations": [ + "8MHz", + "7MHz", + "6MHz" + ] + }, + "Constellation": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the current constellation in use.", + "datatype": "string", + "enumerations": [ + "QPSK", + "16QAM", + "64QAM" + ] + }, + "HierarchicalInformation": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Hierarchical parameter alpha. The higher the value of alpha, the more noise-immune the High Priority Modulation is.", + "datatype": "string", + "enumerations": [ + "0", + "1", + "2", + "4" + ] + }, + "CodeRateHP": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the current code rate in use. Code rate applies to HP in case of hierarchical coding.", + "datatype": "string", + "enumerations": [ + "1/2", + "2/3", + "3/4", + "5/6", + "7/8" + ] + }, + "CodeRateLP": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the current code rate in use. Code rate applies to LP in case of hierarchical coding.", + "datatype": "string", + "enumerations": [ + "0", + "1/2", + "2/3", + "3/4", + "5/6", + "7/8" + ] + }, + "GuardInterval": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the current guard interval in use.", + "datatype": "string", + "enumerations": [ + "1/32", + "1/16", + "1/8", + "1/4" + ] + }, + "TransmissionMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the number of carriers in an OFDM frame.", + "datatype": "string", + "enumerations": [ + "2k", + "8k" + ] + }, + "SNR": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Signal/Noise ratio in the carrier band, measured in <>.", + "datatype": "unsignedInt", + "unit": "dB" + }, + "BER": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Bit Error Ratio before correction, expressed in multiples of 1e-6.", + "datatype": "unsignedInt" + }, + "CBER": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Bit Error Ratio after correction, expressed in multiples of 1e-9.", + "datatype": "unsignedInt" + }, + "Locked": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether or not the tuner is locked on a frequency.", + "datatype": "boolean" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.Service.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T Current service details.", + "access": false, + "array": false, + "CurrentLogicalChannel": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "It represents the logical channel object instance for the current service, For example: .Components.FrontEnd.1.DVBT.-ServiceListDatabase.LogicalChannel.12.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CurrentService": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "It represents the service object instance for the current service. For example: .Components.FrontEnd.1.DVBT.ServiceListDatabase.LogicalChannel.12.Service.1.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.Install.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "DVB-T service list database installation. Supports maintenance of the service list database by scanning frequencies in order to detect services. The service list database is in <.DVBT.ServiceListDatabase>>.", + "access": false, + "array": false, + "Start": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Starts (when set to <>) or stops (when set to <>) scanning for services. The value is not saved in device state and is always <> when read. Discovered services are merged with those already present in the service list database. This supports cases where the frequency spectrum is not continuous. In order to force a re-install, the service list database needs to be reset (see <.DVBT.ServiceListDatabase.Reset>>).", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp" + ], + "description": "Indicates the status of the scanning process. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Progress": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp" + ], + "description": "Progression in <> of the current scan. The value is undefined when a scan is not in progress.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ], + "unit": "%" + }, + "StartFrequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Frequency (in <>) at which to start the scanning process.", + "datatype": "unsignedInt", + "unit": "kHz" + }, + "StopFrequency": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Frequency (in <>) at which to stop the scanning process.", + "datatype": "unsignedInt", + "unit": "kHz" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.ServiceListDatabase.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T service list database.", + "access": false, + "array": false, + "TotalServices": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of services defined in the service list database, i.e. the number of different DvbIds in the database.", + "datatype": "unsignedInt" + }, + "LogicalChannelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of logical channels in the service list database.", + "datatype": "unsignedInt" + }, + "Reset": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, resets the service list database. Setting it to <> has no effect. The value is not saved in device state and is always <> when read.", + "datatype": "boolean" + }, + "Reset()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.ServiceListDatabase.LogicalChannel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T logical channel information.", + "uniqueKeys": [ + "LogicalChannelNumber", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "LogicalChannelNumber": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Logical channel number.", + "datatype": "unsignedInt" + }, + "ServiceNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of services associated with this logical channel.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.ServiceListDatabase.LogicalChannel.{i}.Service.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB-T service information.", + "uniqueKeys": [ + "DvbId", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this service, e.g. read from the DVB service information metadata.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "DvbId": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "DVB Triplet <> that uniquely identifies the service in the service list database. The DVB Triplet is a 12-byte string that is a concatenation of 4 hexadecimal characters for each of the following: Original Network Id, Transport Stream Id, Service Id. For example: * OriginalNetworkId = 8442 = 0x20FA * TransportStreamId = 4 = 0x0004 * ServiceId = 257 = 0x0101 -> DvbId = 20FA00040101", + "datatype": "string", + "range": [ + { + "max": 12 + } + ] + }, + "Frequency": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transmitter frequency (in <>) for this service.", + "datatype": "unsignedInt", + "unit": "kHz" + }, + "BER": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Bit Error Ratio before correction, expressed in multiples of 1e-6 (indicates the quality of this service).", + "datatype": "unsignedInt" + }, + "CBER": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Bit Error Ratio after correction, expressed in <> (indicates the quality of this service).", + "datatype": "unsignedInt", + "unit": "multiples of 1e-9" + }, + "SNR": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Signal/Noise ratio in the carrier band, measured in <> (indicates the quality of this service).", + "datatype": "unsignedInt", + "unit": "dB" + }, + "Preferred": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, identifies this as the preferred service for this logical channel and automatically sets <> to <> for other services associated with this logical channel. When set to <>, cancels this services preferred status and causes the service with the lowest <> (best received quality) to become the preferred service for this logical channel. Whenever frequencies are re-scanned, all <> parameters are implicitly reset to <>, i.e. a re-scan will always use the <> to determine preferred services, and will discard any past explicit overrides.", + "datatype": "boolean" + } + } + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.LogicalChannelConnect.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "Connect to a DVB-T logical channel.", + "access": false, + "array": false, + "LogicalChannelNumber": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "Logical channel number to connect to (the logical channels preferred service will be connected to). If a <> instance with ServiceType = DTT is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance. The value is not saved in device state. The value when read is not specified and need not be the value that was most recently written.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.DVBT.ServiceConnect.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "Connect to a DVB-T service.", + "access": false, + "array": false, + "DvbId": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "DvbId of the service to connect to. If a <> instance with ServiceType = DTT is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance. The value is not saved in device state. The value when read is not specified and need not be the value that was most recently written.", + "datatype": "string", + "range": [ + { + "max": 12 + } + ] + } + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP front-end details. This object will normally be present if and only if the front-end is an IP front-end.", + "access": false, + "array": false, + "InboundNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "OutboundNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "ActiveInboundIPStreams": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> AV streams currently active (i.e. with Status != Disabled, which means audio or AV data are being processed).", + "datatype": "unsignedInt" + }, + "ActiveOutboundIPStreams": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> AV streams currently active (i.e. with Status != Disabled, which means audio or AV data are being processed).", + "datatype": "unsignedInt" + }, + "ServiceConnect()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ], + "input": { + "URI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "usp" + ], + "description": "RFC 3986 URI that describes the service to connect to in the form: * ://:?StrCtrl=?StrTrspCtrl=?MuxType= where: * is the IP address of the service source (for Unicast) or IGMP group (for Multicast). * is the associated TCP/UDP port. If not specified, the STB is assumed to know and use an appropriate default port. * is the streaming transport protocol and MUST be one of the values in <>, which SHOULD be converted to lower-case. * is the streaming control protocol and MUST be one of the values in <>. If not specified, no streaming control protocol is to be used. * is the streaming transport control protocol and MUST be one of the values in <>. If not specified, no streaming transport control protocol is to be used. * is the multiplex type and MUST be one of the values in <>. This tells the STB which multiplex type to expect. If not specified, the STB is assumed to know, or to be able to determine, the multiplex type. Note that download protocols are not supported by the above syntax. However, the specified syntax is just a baseline, and STBs MAY support an extended syntax. Example of Multicast MPEG2-TS over RTP with no transport control: * rtp://224.112.15.18:3257?StrCtrl=IGMP?MuxType=MPEG2-TS Example of Multicast MPEG2-TS over RTP with AL-FEC transport control: * rtp://224.112.15.18:3257?StrCtrl=IGMP?StrTrspCtrl=AL-FEC?MuxType=MPEG2-TS Example of Unicast MPEG2-TS over UDP with RTSP transport control: * udp://174.146.35.12:3257?StrCtrl=RTSP?MuxType=MPEG2-TS Example of Unicast raw AV over RTP with RTCP control and RTSP transport control: * rtp://174.146.35.12:3257?StrCtrl=RTSP?StrTrspCtrl=RTCP?MuxType=None If a <> instance with ServiceType = IP or IPTV (or VoD if the URI accesses a VoD service) is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.RTCP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to RTCP receiver report generation as defined in <>.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables RTCP receiver report generation.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of RTCP receiver report generation. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "TxRepeatInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transmission repeat interval, in <>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.RTPAVPF.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to RTP AVPF configuration as defined in <> and <>.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables RTP/AVPF receiver report generation. When set to <>, enables the error correction operation, immediately (<> mode) or automatically when necessary (<> mode). When set to <>, disables the error correction operation.", + "datatype": "boolean" + }, + "OperationMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The operation mode of the Error Correction mechanism. Enumeration of: Auto, Forced. In <> mode, when Error Correction is enabled, the STB decides whether or not to run the Error Correction operation (e.g. after an error analysis). In <> mode, when Error Correction is enabled the STB MUST run the Error Correction operation.", + "datatype": "string", + "enumerations": [ + "Auto", + "Forced" + ] + }, + "ECOperationStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of RTP/AVPF operation. Enumeration of: Disabled, Auto mode EC On, Auto mode EC Off without buffering, Auto mode EC Off with buffering, Forced mode EC On, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Auto mode EC On", + "Auto mode EC Off without buffering", + "Auto mode EC Off with buffering", + "Forced mode EC On", + "Error" + ] + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of RTP/AVPF receiver report generation. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "RetransmitTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time in <> the receiver shall wait for a retransmitted packet before considering it to be lost.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MinLossPackets": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum number of lost packets the receiver shall wait for before generating a retransmission request.", + "datatype": "unsignedInt" + }, + "MaxReportTime": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum time in <> the receiver shall wait between a lost packet and the generation of a retransmission request.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MaxLossBurst": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of consecutive lost packets for which the receiver shall attempt recovery.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.FEC.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to AL-FEC configuration as defined in <>.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables FEC decoder operation. When set to <>, enables the FEC decoder operation, immediately (<> mode) or automatically when necessary (<> mode). When set to <>, disables the FEC decoder operation.", + "datatype": "boolean" + }, + "OperationMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The operation mode of the FEC decoder. Enumeration of: Auto, Forced. In <> mode, when Error Correction is enabled the STB decides whether or not to run the AL_FEC decoding (e.g. after an error analysis). In <> mode, when Error Correction is enabled the STB MUST run the FEC decoding.", + "datatype": "string", + "enumerations": [ + "Auto", + "Forced" + ] + }, + "ECOperationStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of FEC decoder operation. Enumeration of: Disabled, Auto mode EC On, Auto mode EC Off without buffering, Auto mode EC Off with buffering, Forced mode EC On, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Auto mode EC On", + "Auto mode EC Off without buffering", + "Auto mode EC Off with buffering", + "Forced mode EC On", + "Error" + ] + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters that are specific to IGMP clients when changing channels.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables all IGMP support on the receiver side of the CPE.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Status of IGMP support on the receiver side of the CPE. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "MaximumNumberOfConcurrentGroups": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of group memberships allowed simultaneously. For example, this would need to be at least 2 in order to support a Multicast-delivered main picture and a Multicast-delivered PIP.", + "datatype": "unsignedInt" + }, + "MaximumNumberOfTrackedGroups": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum number of groups for which statistics will be tracked. This relates only to the maintenance of statistics, and does not affect the operation of the STB.", + "datatype": "unsignedInt" + }, + "LoggingEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Controls logging of IGMP traffic. The CPE MAY choose to throttle log entries, e.g. if joins and leaves are occurring at an excessive rate.", + "datatype": "boolean" + }, + "DSCPMark": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Diffserv code point to be used for outgoing IGMP packets.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 63 + } + ] + }, + "VLANIDMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "VLAN ID (as defined in 802.1Q) to be used for outgoing IGMP packets. A value of -1 indicates the default value is to be used. If either the <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "EthernetPriorityMark": { + "type": "int", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Ethernet priority code (as defined in 802.1D) to be used for outgoing IGMP packets. A value of -1 indicates the default value is to be used. If either the <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", + "datatype": "int", + "range": [ + { + "min": -1 + } + ] + }, + "ClientVersion": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The highest IGMP version supported by the IGMP Client.", + "datatype": "string", + "enumerations": [ + "v1", + "v2", + "v3" + ] + }, + "ClientRobustness": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Robustness is a way of indicating how vulnerable the network is to lost packets. IGMP can recover from robustness minus 1 lost IGMP packets. RFC 3376 specifies a default of 2.", + "datatype": "unsignedInt" + }, + "ClientUnsolicitedReportInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of <> between repetitions of a hosts initial report of membership in a group. RFC 3376 specifies a default of 1s.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1, + "max": 25 + } + ], + "unit": "seconds" + }, + "ClientGroupNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of entries in the <> table.", + "datatype": "unsignedInt" + }, + "ClientGroupStatsNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of entries in the <> table.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.ClientGroup.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "IGMP Group table. This is the database that is maintained by the IGMP client to reflect the current group membership. The CPE MUST support at least MaximumNumberOfConcurrentGroups table entries.", + "uniqueKeys": [ + "GroupAddress", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "GroupAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP multicast group address for which this entry contains information.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "UpTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time elapsed in <> since the multicast group has been a member on this interface.", + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.ClientGroupStats.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "IGMP Group statistics table. This stores per-group historical statistical data. The CPE MUST support at least MaximumNumberOfTrackedGroups table entries. The CPE MAY reclaim entries based on the oldest membership reports.", + "uniqueKeys": [ + "GroupAddress", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "GroupAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The IP multicast group address for which this entry contains information.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "TotalStart": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> since the beginning of the period used for collection of <> statistics. Statistics SHOULD continue to be accumulated across CPE reboots, though this may not always be possible.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "CurrentDayStart": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> since the beginning of the period used for collection of <> statistics. The CPE MAY align the beginning of each <> interval with days in the UTC time zone, but is not required to do so. Statistics SHOULD continue to be accumulated across CPE reboots, though this may not always be possible.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "QuarterHourStart": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> since the beginning of the period used for collection of <> statistics. The CPE MAY align the beginning of each <> interval with real-time quarter-hour intervals, but is not required to do so. Statistics SHOULD continue to be accumulated across CPE reboots, though this may not always be possible.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.ClientGroupStats.{i}.Total.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total statistics for this multicast group.", + "access": false, + "array": false, + "NumberOfJoins": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP joins during this period.", + "datatype": "unsignedInt" + }, + "NumberOfLeaves": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP leaves during this period.", + "datatype": "unsignedInt" + }, + "MaxJoinDelay": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum latency delay, in <>, from the sending of a Join message for this group to the arrival of the first IP packet for this group during this period.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.ClientGroupStats.{i}.CurrentDay.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current day statistics for this multicast group.", + "access": false, + "array": false, + "NumberOfJoins": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP joins during this period.", + "datatype": "unsignedInt" + }, + "NumberOfLeaves": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP leaves during this period.", + "datatype": "unsignedInt" + }, + "MaxJoinDelay": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum latency delay, in <>, from the sending of a Join message for this group to the arrival of the first IP packet for this group during this period.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.IGMP.ClientGroupStats.{i}.QuarterHour.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Current quarter hour statistics for this multicast group.", + "access": false, + "array": false, + "NumberOfJoins": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP joins during this period.", + "datatype": "unsignedInt" + }, + "NumberOfLeaves": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of IGMP leaves during this period.", + "datatype": "unsignedInt" + }, + "MaxJoinDelay": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum latency delay, in <>, from the sending of a Join message for this group to the arrival of the first IP packet for this group during this period.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + } + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.Dejittering.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to the de-jittering buffer configuration for all inbound IP streams.", + "access": false, + "array": false, + "BufferSize": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "De-jittering buffer size, measured in <>, on the receiver side of the CPE. The STB is responsible for converting this into the actual buffer size in bytes.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "BufferInitialLevel": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Describes the number of <> worth of data that should be in the receiver side dejittering buffer before play-out can start. Typically this would be half of the buffer size.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.Inbound.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Inbound IP streams currently entering the STB via this front-end.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this Inbound stream. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique human-readable name associated with this inbound IP instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "StreamingControlProtocol": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Network protocol currently used for controlling streaming of the source content, or <> if the content is not being streamed or is being streamed but is not being controlled.", + "datatype": "string" + }, + "StreamingTransportProtocol": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Network protocol currently used for streaming the source content, or an empty string if the content is not being streamed.", + "datatype": "string" + }, + "StreamingTransportControlProtocol": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Transport control protocol currently used for streaming the source content, or an empty string if the content is not being streamed.", + "datatype": "string" + }, + "MultiplexType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV multiplex type currently used for the source content, or an empty string if the content is not being demultiplexed.", + "datatype": "string" + }, + "DownloadTransportProtocol": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Network protocol currently used for downloading the source content, or an empty string if the content is not being downloaded.", + "datatype": "string" + }, + "SourceAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP address of the source of the current stream content.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "SourcePort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "TCP or UDP port number of the source of the current stream content, or 0 if the content is not being delivered via IP or if not applicable.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "DestinationAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "IP address of the destination of the current stream content, or <> if the content is not being delivered via IP.", + "datatype": "IPAddress", + "range": [ + { + "max": 45 + } + ] + }, + "DestinationPort": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "TCP or UDP port number of the destination of the current stream content, or 0 if the content is not being delivered via IP or if not applicable.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "URI": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "RFC 3986 URI that indicates the current source (possibly including Multicast group and port, if relevant) of the stream content, or <> if the source is not known or cannot be represented as a URI. For example, for a WAN-delivered stream this might be a content providers URL, or for a LAN-delivered stream it might be an UPnP AV URN. If specified, the URI MUST be consistent with the other source-related parameters.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.Outbound.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters related to an outbound IP stream.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this Outbound stream. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique human-readable name associated with this outbound IP instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MultiplexType": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV multiplex type currently used for the destination content, or an empty string if the content is not being demultiplexed.", + "datatype": "string" + }, + "URI": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "RFC 3986 URI that indicates the current destination (possibly including Multicast group and port, if relevant) of the stream content, or an empty string if the destination is not known or cannot be represented as a URI. For example, this might be an UPnP AV URN.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.ServiceConnect.": { + "type": "object", + "protocols": [ + "cwmp" + ], + "description": "Parameters used to force connection to a dedicated IP stream for test purposes.", + "access": false, + "array": false, + "URI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "RFC 3986 URI that describes the service to connect to in the form: * ://:?StrCtrl=?StrTrspCtrl=?MuxType= where: * is the IP address of the service source (for Unicast) or IGMP group (for Multicast). * is the associated TCP/UDP port. If not specified, the STB is assumed to know and use an appropriate default port. * is the streaming transport protocol and MUST be one of the values in <>, which SHOULD be converted to lower-case. * is the streaming control protocol and MUST be one of the values in <>. If not specified, no streaming control protocol is to be used. * is the streaming transport control protocol and MUST be one of the values in <>. If not specified, no streaming transport control protocol is to be used. * is the multiplex type and MUST be one of the values in <>. This tells the STB which multiplex type to expect. If not specified, the STB is assumed to know, or to be able to determine, the multiplex type. Note that download protocols are not supported by the above syntax. However, the specified syntax is just a baseline, and STBs MAY support an extended syntax. Example of Multicast MPEG2-TS over RTP with no transport control: * rtp://224.112.15.18:3257?StrCtrl=IGMP?MuxType=MPEG2-TS Example of Multicast MPEG2-TS over RTP with AL-FEC transport control: * rtp://224.112.15.18:3257?StrCtrl=IGMP?StrTrspCtrl=AL-FEC?MuxType=MPEG2-TS Example of Unicast MPEG2-TS over UDP with RTSP transport control: * udp://174.146.35.12:3257?StrCtrl=RTSP?MuxType=MPEG2-TS Example of Unicast raw AV over RTP with RTCP control and RTSP transport control: * rtp://174.146.35.12:3257?StrCtrl=RTSP?StrTrspCtrl=RTCP?MuxType=None If a <> instance with ServiceType = IP or IPTV (or VoD if the URI accesses a VoD service) is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance. The value is not saved in device state. The value when read is not specified and need not be the value that was most recently written.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.STBService.{i}.Components.FrontEnd.{i}.IP.ForceMonitor.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Parameters used to describe the force monitoring operation. When running in the force monitoring mode, the STB MUST automatically connect to a test URI defined by the <> parameter whenever it detects that the IP tuner is not not receiving any data from the WAN. When running in normal mode, the STB does not perform any action when it does not receive any data from the IP tuner coming from the WAN. The force monitor mode allows to maintain an active stream coming from the network so as to keep collecting statistics.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, forces the operation mode in ForceMonitor mode When set to <>, forces operation mode in Normal mode.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the status of the statistic mode of operation. Enumeration of: Normal, Force Monitor.", + "datatype": "string", + "enumerations": [ + "Normal", + "Force Monitor" + ] + }, + "URI": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Describes the service to connect to for force monitoring purposes with the same syntax as <>. If a <> instance with ServiceType = TEST or IP-All is currently enabled, the STB MUST ensure that performance data for this service is collected in that instance. The value when read is not specified and need not be the value that was most recently written.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + } + }, + "Device.Services.STBService.{i}.Components.PVR.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "PVR details. This is a read-only object that exists only to reference PVR storage objects.", + "access": false, + "array": false, + "StorageNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Components.PVR.Storage.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "PVR storage table. There MUST be an instance for each storage object that can be accessed by the PVR. Entries MAY be dynamically created and deleted as storage devices become available and unavailable.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique human-readable name associated with this storage instance.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Reference": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "References the corresponding StorageService <> instance, or an object contained within such an instance, e.g. a PhysicalMedium, LogicalVolume or Folder instance. The value is the full hierarchical name of the corresponding object. Example: Device.Services.StorageService.1", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.STBService.{i}.Components.AudioDecoder.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio decoder instance table. It contains data representing the current status of the Audio decoder.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this audio decoder.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this audio decoder. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this audio decoder.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AudioStandard": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio standard currently being processed by this audio decoder, or an empty string if no audio standard is currently being processed.", + "datatype": "string" + } + }, + "Device.Services.STBService.{i}.Components.VideoDecoder.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video decoder instance table. It contains data representing the current status of the video decoder.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this video decoder.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this video decoder. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this video decoder.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MPEG2Part2": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "MPEG2 Part 2 profile and level object instance, or <> if MPEG2 Part 2 is not used. For example: .Capabilities.VideoDecoder.MPEG2Part2.ProfileLevel.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MPEG4Part2": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "MPEG4 Part 2 profile and level object instance, or <> if MPEG4 Part 2 is not used). For example: .Capabilities.VideoDecoder.MPEG4Part2.ProfileLevel.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "MPEG4Part10": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "MPEG4 Part 10 profile and level object instance, or <> if MPEG4 Part 10 is not used. For example: .Capabilities.VideoDecoder.MPEG4Part10.ProfileLevel.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SMPTEVC1": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SMPTE-VC-1 profile and level object instance, or <> if SMPTE-VC-1 is not used. For example: .Capabilities.VideoDecoder.SMPTEVC1.ProfileLevel.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ContentAspectRatio": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the native aspect ratio of the content available at this decoder.", + "datatype": "string", + "enumerations": [ + "4:3", + "16:9" + ] + } + }, + "Device.Services.STBService.{i}.Components.AudioOutput.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio output instance table.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this audio output.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this audio output. Enumeration of: Disabled, Enabled, Muted, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Muted", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this audio output.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AudioFormat": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Currently active audio output format, or <> if no audio output format is currently active. Note that this parameter refers to output formats and not to physical connectors.", + "datatype": "string" + }, + "AudioLevel": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The audio level on this audio output in <> (0 is quietest and 100 is loudest). This setting is independent of the mute status. For some audio formats, the audio level is not meaningful, in which case this parameter SHOULD have a fixed value of 0.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 100 + } + ], + "unit": "%" + }, + "CancelMute": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, cancels this audio outputs mute status. Setting it to <> has no effect. The value is not saved in device state and is always <> when read.", + "datatype": "boolean" + }, + "SCARTs": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SCART object instances associated with this audio output, or <> if not associated with any SCART object instances. For example: * .Components.SCART.2 * .Components.SCART.2,.Components.SCART.3", + "list": { + "datatype": "string", + "maxsize": 1024 + } + }, + "CancelMute()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + } + }, + "Device.Services.STBService.{i}.Components.SPDIF.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "S/PDIF output instance table configuration. This object, if present, is connected to the audio ouput instance currently delivering S/PDIF audio format as described in <>.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the S/PDIF output.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this S/PDIF output. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this output.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ForcePCM": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, forces the audio format over S/PDIF to be in PCM mode. When set to <>, let the compressed audio format be carried over S/PDIF (passthrough).", + "datatype": "boolean" + }, + "Passthrough": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When in Passthrough mode, the STB sends the audio stream over S/PDIF without decoding it.", + "datatype": "boolean" + }, + "AudioDelay": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio delay value, in <>, currently being applied to the audio stream on the S/PDIF interface. The audio delay is entered by the user via his local UI, when necessary for correcting the lipsync.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.Components.VideoOutput.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video output instance table.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this video output.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this video output. Enumeration of: Disabled, Enabled, ColorbarEnabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "ColorbarEnabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ColorbarEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the color bar display. When set to <>, the CPE MUST suspend the running service currently using the video output (e.g. IPTV broadcast reception) and MUST display the color bar. When set to <>, the CPE MUST resume the previousely running service. This parameter MUST be always initialized with the value <> on STB boot.", + "datatype": "boolean" + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this Video output.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CompositeVideoStandard": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The type of analog video standard currently in use or <> if no analog video standard is currently in use. Note that this parameter applies only to the CVBS output format.", + "datatype": "string" + }, + "VideoFormat": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Currently active video output format, or <> if no video output format is currently active. Note that this parameter refers to output formats and not to physical connectors.", + "datatype": "string" + }, + "AspectRatioBehaviour": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates the aspect ratio behaviour for display on monitors with an aspect ratio different from that of the content, which is specified in <.ContentAspectRatio>>.", + "datatype": "string", + "enumerations": [ + "None", + "Letterbox", + "16:9 Letterbox", + "14:9 Letterbox", + "CenterCutOut", + "Combined", + "Combined 16:9 Letterbox and CenterCutOut", + "Combined 14:9 Letterbox and CenterCutOut" + ] + }, + "DisplayFormat": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Display format being connected to this VideoOutput. This parameter is used by the STB to determine whether an aspect ratio conversion is required.", + "datatype": "string" + }, + "Macrovision": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether Macrovision analog protection is being used on this video output. The Macrovision version supported is indicated in <>.", + "datatype": "boolean" + }, + "HDCP": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether HDCP is being used on this video output. The HDCP version supported is indicated in <>.", + "datatype": "boolean" + }, + "SCARTs": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "SCART object instances associated with this video output, or <> if not associated with any SCART object instances. For example: * .Components.SCART.2 * .Components.SCART.2,.Components.SCART.3", + "list": { + "datatype": "string", + "maxsize": 1024 + } + } + }, + "Device.Services.STBService.{i}.Components.SCART.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "SCART configuration. This object allows configuration of the STBs AV switching.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this SCART connector.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this SCART connector. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this connector.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Presence": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the Presence control signal (pin 8 of the SCART connector), an output from the STB to control the display device connected to the SCART. When enabled (set to <>) the STB MUST drive pin 8 to the appropriate level to indicate the output video format (SD or HD) to the connected device. When disabled (set to <>) the STB MUST NOT drive pin 8.", + "datatype": "boolean" + } + }, + "Device.Services.STBService.{i}.Components.HDMI.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "HDMI instance table. This object allows configuration of the STB\u2019s HDMI output.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the HDMI output.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of HDMI output. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this output.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ResolutionMode": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The resolution mode of the HDMI output. In <> mode, the resolution is automatically set at the best format via HDMI protocols. In <> mode, the resolution to be applied to the HDMI output is given by the ResolutionValue parameter.", + "datatype": "string", + "enumerations": [ + "Auto", + "Manual" + ] + }, + "ResolutionValue": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When <> is set to <> mode, a write action configures the resolution to be applied to the HDMI output, When <> is set to <>, a write action as no effect. A read action provides the current resolution of the HDMI output.", + "datatype": "string" + }, + "Device.Services.STBService.{i}.Components.HDMI.{i}.DisplayDevice.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "HDMI connected display device configuration. This object provides parameters from the HDMI connected device if any.", + "access": false, + "array": false, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of the connected HDMI Display device. Enumeration of: Present, None, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Present", + "None", + "Error" + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this display device.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "EEDID": { + "type": "hexBinary", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enhanced Extended Display Information Data (E-EDID) retrieved from the connected HDMI device.", + "datatype": "hexBinary", + "range": [ + { + "max": 256 + } + ] + }, + "SupportedResolutions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a supported resolution of the connected HDMI device and MUST be one element of <>.", + "list": { + "datatype": "string" + } + }, + "PreferredResolution": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Preferred connected HDMI device resolution format.", + "datatype": "string" + }, + "VideoLatency": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video latency, in <>, being applied in the connected HDMI device. This parameter is extracted from the E-EDID and can be used to compensate the video latency to preserve lipsync.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "CECSupport": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, indicates the connected HDMI device is supporting HDMI-CEC features. When set to <>, indicates the connected HDMI device does not support HDMI CEC.", + "datatype": "boolean" + }, + "AutoLipSyncSupport": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, indicates the connected display device supports auto lip synchronization. This mode consists in communicating over HDMI, the delay to be applied by the STB to the audio in order to preserve the lip sync.", + "datatype": "boolean" + }, + "HDMI3DPresent": { + "type": "boolean", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "When set to <>, indicates the connected display device supports the 3D video formats mandated by <>.", + "datatype": "boolean" + } + } + }, + "Device.Services.STBService.{i}.Components.CA.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the Conditional Access, if any.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this CA system.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this CA system. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates a unique identifier (e.g. the commercial name: La 7 piu, Mediaset Premium) for this CA system.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SmartCardReader": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Path name of the smart card reader object instance containing the smart card (if any) associated with this CA system. The value MUST be <> (if not associated with a smart card) or else be the full path name of the corresponding smart card reader object. For example: Device.SmartCardReader.1", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + }, + "Device.Services.STBService.{i}.Components.DRM.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object describes the characteristics of the Digital Rights Management, if any.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this DRM system.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this DRM system. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates a unique identifier (e.g. the commercial name: La 7 piu, Mediaset Premium) for this DRM system.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "SmartCardReader": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Path name of the smart card reader object instance containing the smart card (if any) associated with this DRM system. The value MUST be <> (if not associated with a smart card) or else be the full path name of the corresponding smart card reader object. For example: Device.SmartCardReader.1", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.STBService.{i}.AVStreams.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV Streams object. If more than one AV stream can be active at a time, it may contain several <> instances.", + "access": false, + "array": false, + "ActiveAVStreams": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of AV streams currently active (i.e. with Status != Disabled, which means audio or AV data are being processed).", + "datatype": "unsignedInt" + }, + "AVStreamNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.AVStreams.AVStream.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Details of each AVStream. AV streams are created statically. Each AV stream corresponds to a valid instance combination (although if the PVR is active for this stream, only or will be in use).", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this AV stream. Enumeration of: Disabled, Enabled, Error_PVRWriteFailure, Error_PVRReadFailure, Error. An AV stream is disabled if any of the referenced objects are disabled. If an AV stream is disabled then the values of other AV stream parameters are not significant. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error_PVRWriteFailure", + "Error_PVRReadFailure", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this stream, e.g. read from the DVB service information metadata.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "PVRState": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates whether this stream is using the PVR and, if so, the PVR state. Enumeration of: Disabled, Stopped, Play, Paused, FastForward, Rewind. PVR record state can be inferred from whether the stream has an input FrontEnd: if so and <> is not <>, the PVR is recording.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Stopped", + "Play", + "Paused", + "FastForward", + "Rewind" + ] + }, + "FrontEnd": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Input FrontEnd object instance associated with this AV stream, or <> if not associated with a FrontEnd object). For example: .Components.FrontEnd.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Inbound": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Inbound IP stream object instance associated with the FrontEnd for this AV stream, or <> if the inbound stream is not delivered over IP. For example: .Components.FrontEnd.2.IP.Inbound.3", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Outbound": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Outbound IP stream object instance associated with the output FrontEnd for this AV stream (which is always the IP FrontEnd), or <> if the outbound stream is not delivered over IP. For example: .Components.FrontEnd.2.IP.Outbound.3", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AudioDecoder": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio Decoder object instance associated with this AV stream, or <> if not associated with an Audio Decoder object. For example: .Components.AudioDecoder.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "VideoDecoder": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video Decoder object instance associated with this AV stream, or <> if not associated with a Video Decoder object. For example: .Components.VideoDecoder.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "CA": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "CA system object instance associated with this AV stream, or <> if not associated with a CA object. For example: .Components.CA.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "DRM": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "DRM system object instance associated with this AV stream, or <> if not associated with a DRM object. For example: .Components.DRM.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + } + } + }, + "Device.Services.STBService.{i}.AVPlayers.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV Players object. If more than one AV player can be active at a time, it may contain several <> instances. AV players are created statically. Each AV player corresponds to a combination of several AV streams (one main screen video, several PIP, one audio) being connected to an AV presentation device (such as a TV set). There is no guarantee that the STB has the resources to enable all of its AV players at the same time.", + "access": false, + "array": false, + "ActiveAVPlayers": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of AV players currently active (i.e. with Status != Disabled, which means the <> is processing an audio or AV stream).", + "datatype": "unsignedInt" + }, + "AVPlayerNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "PreferredAudioLanguage": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string, as specified in <>, describing the audio language that SHOULD be used by the STB when receiving a multi-language audio multiplex. <> indicates that there is no preferred audio language.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "PreferredSubtitlingLanguage": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string, as specified in <>, describing the subtitling language that SHOULD be used by the STB when receiving multi-language subtitling. A value of None indicates that no subtitling is required. <> indicates that there is no preferred subtitling language.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "PreferredBehaviour": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Aspect ratio behaviour preference for display on monitor. If non-empty, the string MUST be one of the .Components.VideoOutput.. AspectRatioBehaviour values.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "ResetPINCode": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, the master PIN code for the STB is set to 0000. Setting it to <> has no effect. The value is not saved in device state and is always <> when read. It is not recommended that this be set to true without the users permission. No data on the device such as PVR recordings are to be cleared as a result of resetting the PIN code.", + "datatype": "boolean" + }, + "ResetPINCode()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.AVPlayers.AVPlayer.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "List of AV Player objects. Each item is one particular AV player being processed by the STB.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this AV player.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this AV player. Enumeration of: Disabled, Enabled, Error. If an AV player is disabled then the values of other AV player parameters are not significant. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable name associated with this AV player.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "AudioLanguage": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string, as specified in <>, describing the audio language being currently processed by the AV player.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "SubtitlingStatus": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of subtitling for this AV player. Enumeration of: Disabled, Enabled, Error. Subtitles are assumed to be shown only on the main screen. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "SubtitlingLanguage": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Human-readable string, as specified in <>, describing the subtitling language being currently processed by the AV player. Subtitles are assumed to be shown only on the main screen.", + "datatype": "string", + "range": [ + { + "max": 64 + } + ] + }, + "AudioOutputs": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio output object instances associated with this AV player, or <> if not associated with any audio output object instances. For example: .Components.AudioOutput.2", + "list": { + "datatype": "string", + "maxsize": 1024 + } + }, + "VideoOutputs": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video output object instances associated with this AV player, or <> if not associated with any video output object instances. For example: .Components.VideoOutput.2", + "list": { + "datatype": "string", + "maxsize": 1024 + } + }, + "MainStream": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV stream object instance associated with this AV player that is being sent to the main screen, or <> if not associated with an AV stream object. For example: .AVStreams.AVStream.2", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "PIPStreams": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "AV stream object instances associated with this AV player that are being displayed as Picture In Picture (PIP), or <> if not associated with any PIP AV stream objects. For example: * .AVStreams.AVStream.2 * .AVStreams.AVStream.2,.AVStreams.AVStream.3", + "list": { + "datatype": "string", + "maxsize": 1024 + } + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Records events and collects QoS / QoE related statistics for Main AV streams. These statistics are broken down into categories, e.g. de-jittering and RTP, and for each category there are two types of statistics: * Total statistics, which count the number of occurrences of something. * Sample statistics, which are measured over a sample interval, and are made available to the ACS as a list of the most recent n samples. Total statistics are always collected (collection cannot be disabled, but the values can be reset). For Sample statistics, an STB uses a single sample interval and number of samples (n) for all <> instances. The sample interval can be aligned with absolute time. When Sample statistics collection is enabled, statistics collection MUST proceed regardless of whether there are any active Main AV streams. For example, even when the STB is not receiving any data, sample intervals will continue to be timed as normal. Refer to <> for non-normative explanation of the operation of the ServiceMonitoring object.", + "access": false, + "array": false, + "SampleEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables collection of Sample statistics. When collection of Sample statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately.", + "datatype": "boolean" + }, + "SampleState": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates availability of Sample statistics. Enumeration of: Disabled, Enabled, Trigger. The <> value is only used for triggering the ACS to fetch the collected data and can only be used when <> is in the range [1:<>]. The transition from <> -> <> -> <> MUST be instantaneous and so will result in only a single value change for notification purposes.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Trigger" + ] + }, + "SampleInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The sample interval in <>. Each statistic is measured over this sample interval. The STB MAY reject a request to set <> to less than <>. Sample intervals MUST begin every <> seconds, with no delay between samples. If <> is changed while collection of Sample statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately. For example, if <> is 24 and <> is 3600 (an hour), the STB can store up to a days worth of samples for each statistic.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "seconds" + }, + "ReportSamples": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of samples that the STB can store and report for each statistic. The STB MUST permit <> to be set to any value in the range from 1 to <>. If <> is changed while collection of Sample statistics is enabled, the STB will truncate or extend its statistics buffers as appropriate, but statistics collection MUST NOT otherwise be affected. For example, if <> is 24 and <> is 3600 (an hour), the STB can store up to a days worth of samples for each statistic.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + }, + "EventsPerSampleInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of event measurements of each applicable statistic that the STB is able to store for each sample interval. The STB MUST permit <> to be set to any value in the range from 1 to <>. If <> is changed while collection of Sample statistic is enabled, the STB will truncate or extend its event measurement buffers as appropriate, but event measurement collection MUST NOT otherwise be affected. For example, if <> is 24 and <> is 3600 (an hour), and <> is 60, the STB can store up 60 event measurements per hour, or in total 1440 event measurements per day.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + }, + "FetchSamples": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "If collection of Sample statistics is enabled and <> is in the range [1:<>] then <> MUST transition from <> -> <> -> <> on completion of every <> sample intervals. Otherwise, this transition MUST NOT occur. For example, if <> is 25 and <> is 24, then the STB will store 25 values for each statistic and the above <> transition will occur every 24 sample intervals, which means that the ACS could delay for up to two sample intervals before reading the stored values and would still not miss any samples (see also <>).", + "datatype": "unsignedInt" + }, + "TimeReference": { + "type": "dateTime", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "An absolute time reference in UTC to determine when sample intervals will complete. Each sample interval MUST complete at this reference time plus or minus an integer multiple of <>. This time reference also determines when the <> <> -> <> -> <> transitions that are controlled by <> will occur. If collection of Sample statistics is enabled and <> is in the range [1:<>] then each such <> transition MUST occur at this reference time plus or minus an integer multiple of <> * <> (the fetch interval). <> is used only to set the phase of the sample and fetch intervals. The actual value of <> can be arbitrarily far into the past or future. If <> is changed while collection of Sample statistics is enabled, any stored samples are discarded, and the first sample interval begins immediately. The Unknown Time value defined in <> indicates that no particular time reference is specified. That is, the STB MAY locally choose the time reference, and is required only to adhere to the specified sample and fetch intervals. If absolute time is not available to the STB, its sample and fetch interval behavior MUST be the same as if the <> parameter was set to the Unknown Time value. For example, if <> is 3600 (an hour) and if <> is set to UTC midnight on some day (in the past, present, or future) then sample intervals will complete on each UTC hour (00:00, 01:00, 02:00 etc). If, in addition, <> is 24, then the fetch interval is 86400 (a day) and <> <> -> <> -> <> transitions will occur every day at UTC midnight. Note that, if <> is set to a time other than the Unknown Time, the first sample interval (which has to begin immediately) will almost certainly be shorter than <>). This is why <> is defined in terms of when sample intervals complete rather than start.", + "datatype": "dateTime" + }, + "ForceSample": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, forces statistics for the current sample to be calculated and updated in the data model. Setting it to <> has no effect. The value is not saved in device state and is always <> when read. If this is the first time that <> has been set to true during the current sample interval, this MUST cause a new value to be added to each of the Sample statistics comma-separated list parameters, and the <> and all SampleSeconds parameters MUST be updated accordingly. If this is not the first time that <> has been set to <> during the current sample interval, then the new values that were added as described in the previous paragraph, and the <> and all SampleSeconds parameters, MUST be updated accordingly. Note that <> just provides a sneak preview of the current sample. It does not create a new sample and it does not interfere with the sample interval schedule. At the end of each sample interval, if <> was set to <> during the sample interval then the new values that were added as described above, and the <> and all SampleSeconds parameters, will be updated accordingly. In other words, the partial sample data that was created when <> was set to <> will be updated one last time at the end of the sample interval.", + "datatype": "boolean" + }, + "ReportStartTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The absolute time at which the sample interval for the first stored sample (for each statistic) started.", + "datatype": "dateTime" + }, + "ReportEndTime": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The absolute time at which the sample interval for the last stored sample (for each statistic) ended. If <> has been used to force statistics for the current sample to be calculated and updated in the data model, then <> MUST be updated to reflect the actual time over which stored data was collected.", + "datatype": "dateTime" + }, + "MainStreamNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "EventCollectionEnable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables the collection of the events for all main streams. When the collection of events is enabled, any previously collected events are discarded and the collection of new events begins immediately.", + "datatype": "boolean" + }, + "ForceSample()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "List of Main AV stream objects. Each instance is associated with a specified service type and will collect statistics only for the main stream that matches that service type. Note that this means that streams that do not match an instances service type MUST NOT contribute to the instances Total and Sample statistics. It is up to the STB to determine which AV stream should be regarded as the Main AV stream for a given service type at any given time. For example, if two active streams are associated with the same service type, the STB might prefer streams that are associated with an AV player, or if more than one stream is associated with an AV player, the STB might prefer a player that is outputting a DVI stream to a player that is outputting an RF stream. Note that some parameters, e.g. <.IP.ServiceConnect.URI>>, include requirements that restrict the STBs freedom to determine which AV stream should be regarded as the Main AV stream for a given service.", + "uniqueKeys": [ + "ServiceType", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables collection of Total and Sample statistics and events for this object instance. The collection of events requires the value of this parameter to be <> and the value of the <> to be <>.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total and Sample statistics and event collection status for this object instance. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "SessionId": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time based UUID <> that is the identifier for the associated <> parameter when available to the device.", + "datatype": "UUID", + "range": [ + { + "min": 36, + "max": 36 + } + ], + "pattern": [ + "[A-Fa-f0-9]{8}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{4}-[A-Fa-f0-9]{12}" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ServiceType": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Service type associated with this main stream instance, or <> if this instance is disabled. The STB MUST reject a request that would result in a given AV stream contributing to more than one <> instance, e.g. it would reject a request to enable simultaneous collection of both IPTV and IP statistics, or to collect IPTV statistics on more than one instance.", + "datatype": "string" + }, + "AVStream": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Main AV stream object instance currently associated with this ServiceMonitoring main stream instance. For example: .AVStreams.AVStream.2 Note that, during the period of time over which Sample statistics are stored, this ServiceMonitoring main stream instance might be associated with many different AVStream instances. This parameter just provides information about which AVStream is currently being monitored.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Gmin": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum number of consecutive received packets after the end of an RTP Loss Event. A Loss Event is defined as as a sequence of lost packets, possibly including islands of received packets. Each island consists of up to (<> - 1) received packets (a sequence of <> received packets terminates the Loss Event, and so is not an island).", + "datatype": "unsignedInt" + }, + "SevereLossMinDistance": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The minimum distance required between error events before an RTP Loss Event is considered severe. Used in the calculation of SevereLossIndexCount and SevereLossIndexCountBeforeEC.", + "datatype": "unsignedInt" + }, + "SevereLossMinLength": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The minimum value for the count of lost packets per RTP Loss Event before the count of lost packets is considered severe. Used in the calculation of SevereLossLengthCount and SevereLossLengthCountBeforeEC.", + "datatype": "unsignedInt" + }, + "ChannelChangeFailureTimeout": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Time period, in <>, between a user channel change request (defined as the instant of transmission of the relevant control protocol message (IGMP JOIN or RTSP SETUP) or a tuner command in case of DTT), and the display of the first I frame for the current AVStream, above which a channel change is considered as failed.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "PacketsLostByEventHistogramIntervals": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Definition of the histogram intervals for counting loss events according to their size (in <>). Each value indicates the maximum value of the interval. For example, 1,2,4,8, defines the five intervals: 1 packet lost, 2 packets, 3 or 4 packets, 5 to 8 packets and 9 or more packets. (No value after the last comma means no upper bound.) If this parameter is set to an empty string, no PacketsLostByEvent stats will be collected.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "packets" + } + }, + "DelayBetweenLossEventsHistogramIntervals": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Definition of the histogram intervals for counting loss events according to their delay (in <>) after the preceding loss event. Each value indicates the maximum value of the interval. For example, 10,20,50,100,1000,60000,3600000, defines the intervals up to 10 ms, to 20 ms, to 50 ms, to 100 ms, to 1 s, to 1 mn, to 1 h and more than 1 h. (No value after the last comma means no upper bound.) If this parameter is set to an empty string, no DelayBetweenLossEvents stats will be collected.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + } + }, + "DurationSevereLossEventsHistogramIntervals": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Definition of the histogram intervals for counting severe loss events according to their duration (in <>). Each value indicates the maximum value of the interval. For example, 50,100,500,1000,2000,5000,10000,120000, defines the intervals up to 50 ms, to 100 ms, to 500 ms, to 1 s, to 2 s etc. (No value after the last comma means no upper bound.) If this parameter is set to an empty string, no DurationSevereLossEvents stats will be collected.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ], + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total statistics since this ServiceMonitoring main stream instance was last enabled or Total statistics were last reset.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than the <>, for several reasons, including the STB was not receiving any data (Standby mode without force monitoring).", + "datatype": "unsignedInt" + }, + "Reset": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, resets Total statistics for this ServiceMonitoring main stream instance. Setting it to <> has no effect. The value is not saved in device state and is always <> when read.", + "datatype": "boolean" + }, + "ResetTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of seconds since the Total statistics were last enabled or reset for this ServiceMonitoring main stream instance.", + "datatype": "unsignedInt" + }, + "Reset()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.DejitteringStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total de-jittering statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * De-jittering data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "EmptyBufferTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total time, in <>, for which the playout was stopped due to buffer issues (empty or too low level) for this AV stream.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "Overruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has overrun for this AV stream.", + "datatype": "unsignedInt" + }, + "Underruns": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of times the receive jitter buffer has underrun for this AV stream.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.TCPStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total TCP statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * TCP data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "PacketsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of TCP packets correctly received for this AV stream.", + "datatype": "unsignedInt" + }, + "PacketsRetransmitted": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of TCP packets being retransmitted for this AV stream.", + "datatype": "unsignedInt" + }, + "BytesReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of bytes received for this AV stream.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.RTPStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total RTP statistics for this ServiceMonitoring main stream instance. If no EC is applied the BeforeEC statistics provide the same values as the corresponding statistics, e.g. when there is no EC, <> = <>.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * RTP data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "PacketsExpected": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets expected for this AV stream as described in <>.", + "datatype": "unsignedInt" + }, + "PacketsDiscarded": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of packets discarded at the RTP layer for this AV stream because they were too late for playout, regardless of their being out of sequence or not. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "PacketsOutOfSequence": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of packets out of sequence at the RTP level for this AV stream, regardless of their being too late for playout or not. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "PacketsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received for this AV stream. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "PacketsReceivedBeforeEC": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets received for this AV stream. These statistics are collected before any EC, if available, is applied.", + "datatype": "unsignedInt" + }, + "PacketsLost": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets lost for this stream. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "PacketsLostBeforeEC": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP packets lost for this stream. These statistics are collected before any EC, if available, is applied.", + "datatype": "unsignedInt" + }, + "PacketsLostByEventHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of loss events counted by their length in packets (1 packet, 2 packets, etc.) according to the intervals defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsLostByEventHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of loss events counted by their length in packets (1 packet, 2 packets, etc.) according to the intervals defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "LossEvents": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events for this stream. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "LossEventsBeforeEC": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events for this stream. These statistics are collected before any EC, if available, is applied.", + "datatype": "unsignedInt" + }, + "DelayBetweenLossEventsHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of times that the delay (in milliseconds) between two consecutive loss events belongs to each time interval defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "DelayBetweenLossEventsHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of times that the delay (in milliseconds) between two consecutive loss events belongs to each time interval defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "SevereLossIndexCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events closer than SevereLossMinDistance. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "SevereLossIndexCountBeforeEC": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events closer than SevereLossMinDistance. These statistics are collected before any EC, if available, is applied.", + "datatype": "unsignedInt" + }, + "SevereLossLengthCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events longer than SevereLossMinLength. These statistics are collected when no EC is applied or after any EC if available.", + "datatype": "unsignedInt" + }, + "SevereLossLengthCountBeforeEC": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of Loss Events longer than SevereLossMinLength. These statistics are collected before any EC, if available, is applied.", + "datatype": "unsignedInt" + }, + "DurationSevereLossEventsHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of severe loss events counted by their duration (in milliseconds) according to the intervals defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "DurationSevereLossEventsHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Total number of severe loss events counted by their duration (in milliseconds) according to the intervals defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "RetransmitTimeouts": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTP/AVPF retransmission timeouts (<>, <>) If RTP/AVPF is not used this parameter does not increment", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.MPEG2TSStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total MPEG2-TS statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * MPEG2 TS data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "TSPacketsReceived": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of MPEG2-TS packets received for this AV stream.", + "datatype": "unsignedInt" + }, + "TSSyncByteErrorCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of MPEG2-TS packets with an invalid transport sync byte received for this AV stream. Not meaningful when MPEG2-TS is transported over IP.", + "datatype": "unsignedInt" + }, + "TSSyncLossCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of MPEG2-TS Loss of Synchronization Events for this AV stream. Not meaningful when MPEG2-TS is transported over IP.", + "datatype": "unsignedInt" + }, + "PacketDiscontinuityCounter": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of MPEG2-TS Discontinuity errors that have been captured for this AV stream. This parameter accumulates all of the discontinuities observed for all currently monitored PIDs. These statistics are collected when no CA decryption scheme is in use or after any CA decryption if in use.", + "datatype": "unsignedInt" + }, + "PacketDiscontinuityCounterBeforeCA": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of MPEG2-TS Discontinuity errors that have been captured for this AV stream. This parameter accumulates all of the discontinuities observed for all currently monitored PIDs. These statistics are collected before any CA decryption scheme, if used, is applied.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.VideoDecoderStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total video decoder application layer statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * Video Decoder data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "FrameRate": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The latest frame rate at which the STB played out the video content for this AV stream. Also the reported rate will be rounded off to the nearest integer.", + "datatype": "unsignedInt" + }, + "DecodedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of video frames that were decoded completely (errorless frames) or partially (corrupted frames) for this AV stream.", + "datatype": "unsignedInt" + }, + "LostFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of video frames that could not be reproduced by the STB for this AV stream.", + "datatype": "unsignedInt" + }, + "ConcealedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of video frames that were reproduced by the STB for which some information was missing and loss concealment was applied for this AV stream.", + "datatype": "unsignedInt" + }, + "IDecodedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of I frames that were decoded completely (errorless frames) or partially (corrupted frames) for this AV stream.", + "datatype": "unsignedInt" + }, + "ILostFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of I frames that could not be reproduced by the STB for this AV stream.", + "datatype": "unsignedInt" + }, + "IConcealedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of I frames that were reproduced by the STB for which some information was missing and loss concealment applied for this AV stream.", + "datatype": "unsignedInt" + }, + "PDecodedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of P frames that were decoded completely (errorless frames) or partially (corrupted frames) for this AV stream.", + "datatype": "unsignedInt" + }, + "PLostFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of P frames that could not be reproduced by the STB for this AV stream.", + "datatype": "unsignedInt" + }, + "PConcealedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of P frames that were reproduced by the STB for which some information was missing and loss concealment applied for this AV stream.", + "datatype": "unsignedInt" + }, + "BDecodedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of B frames that were decoded completely (errorless frames) or partially (corrupted frames) for this AV stream.", + "datatype": "unsignedInt" + }, + "BLostFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of B frames that could not be reproduced by the STB for this AV stream.", + "datatype": "unsignedInt" + }, + "BConcealedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of B frames that were reproduced by the STB for which some information was missing and loss concealment applied for this AV stream.", + "datatype": "unsignedInt" + }, + "AVResynchCounter": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of AV resynchronizations that were performed by the STB for this AV stream.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.AudioDecoderStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total audio decoder application layer statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * Audio Decoder data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "DecodedFrames": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of audio frames that were decoded completely (errorless frames) or partially (corrupted frames) for this AV stream.", + "datatype": "unsignedInt" + }, + "DecodingErrors": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of audio decoding errors detected for this AV stream.", + "datatype": "unsignedInt" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Total.VideoResponseStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total video response statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "TotalSeconds": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The number of seconds during which data was collected for this AV stream since last reset Each statistics category (Dejittering, RTP etc) has its own <> parameter, which indicates the number of seconds during which data was collected for that statistics category since last reset. Individual <> values can be less than <.Total.ResetTime>>, for several reasons, including: * Any of the reasons for which the <> values might be less than <.Total.ResetTime>>. * Video response data collection is not appropriate or possible for this AV stream.", + "datatype": "unsignedInt" + }, + "ChannelChangeFailures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of channel change failures. A channel change is considered as failed when the time period between a user channel change request and the display of the first I frame for this AVStream is above <.ChannelChangeFailureTimeout>>.", + "datatype": "unsignedInt" + }, + "ChannelFailures": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry represents a channel for which a channel change failed. Channels MAY be described as IP address, URL or Service names as appropriate. Only last 10 failures are required to be reported.", + "list": { + "datatype": "string", + "item": { + "max": 10 + } + } + }, + "MinimumVoDControlResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum time period, in <>, between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I frame of unicast stream. Only measured when started from a non-play state, i.e. either idle or paused.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MaximumVoDControlResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum time period, in <>, between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I-frame of unicast stream. Only measured when started from a non-play state, i.e. either idle or paused.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "RequestedTransactions": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of RTSP protocol requests to start a VoD program display. Only meaningful for VoD.", + "datatype": "unsignedInt" + }, + "AccessSuccesses": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of successful VoD attempts. An attempt is considered successful when the first I-frame is displayed by the client. Only meaningful for VoD.", + "datatype": "unsignedInt" + }, + "CompletionCount": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Total number of completed VoD requests. An attempt is defined successful if it continues until a RTSP protocol request to end the session is sent by the STB. Only meaningful for VoD.", + "datatype": "unsignedInt" + }, + "MinimumVideoSystemResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum time period (in <>) between the instant of transmitting an IGMP JOIN command or an RTSP SETUP command, and the display of the first I frame for this AV stream.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MaximumVideoSystemResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum time period (in <>) between the instant of transmitting an IGMP JOIN command or an RTSP SETUP command, and the display of the first I frame for this AV stream.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Sample statistics collected since collection was last enabled or reset. Most of the parameters in this object are comma-separated lists of individual statistics values, each of which corresponds to a sample interval. The statistics values in these comma-separated lists MUST be in time order, with the oldest one first and the most recent one last. Each comma-separated list can contain up to <> statistics values. When the list is full, each new value causes the oldest one to be discarded. Some comma-separated lists contain terms that are comma-separated lists themselves and are used to store measurements on an event basis. These sub-lists can contain up to <> values. If no data was collected for a statistic during a sample interval then the value for that sample interval MUST be zero unless otherwise specified in the description of the individual statistics parameter.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which data was collected for this AV stream during the sample interval. Each statistics category (Dejittering, RTP etc) has its own SampleSeconds parameter, which indicates the number of seconds during which data was collected for that statistics category during the sample interval. Individual SampleSeconds values can be less than the SampleInterval, for several reasons, including: * The STB was not receiving any data for the corresponding ServiceType for all or part of the sample interval. * TimeReference has been set to a time other than the Unknown Time and the current sample interval started part of the way through a scheduled sample interval. * ForceSample has been used to force statistics for the current sample to be calculated and updated in the data model.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "SignificantChanges": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of times that a channel change (or other potentially disruptive event) occurred for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "PVRTimeShift": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a Boolean that indicates whether the PVR, with a non-zero time-shift, was used at any time for this AV stream during the sample interval.", + "list": { + "datatype": "boolean" + } + }, + "HighLevelMetricStatsNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> instances.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.DejitteringStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "De-jittering Sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which de-jittering data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * De-jittering data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Overruns": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of times the receive jitter buffer has overrun for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "Underruns": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of times the receive jitter buffer has underrun for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "EmptyBufferTime": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the time period, in <>, for which the playout was stopped due to buffer issues (empty or too low level) for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.TCPStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "TCP sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which de-jittering data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * TCP data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "PacketsReceived": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of TCP packets received for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsRetransmitted": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of TCP packets being retransmitted this AV stream.during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "BytesReceived": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of bytes received for this AV stream.during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.RTPStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "RTP Sample statistics for this ServiceMonitoring main stream instance. If no EC is applied the BeforeEC statistics provide the same values as the corresponding statistics, e.g. when there is no EC, <> = <>.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which RTP data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * RTP data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "PacketsExpected": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of RTP packets expected for this AV stream during the sample interval as described in <>.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsDiscarded": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of packets that were discarded at the RTP layer for this AV stream during the sample interval because they were too late for playout, regardless of their being out of sequence or not. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsOutOfSequence": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of packets out of sequence at the RTP level for this AV stream during the sample interval, regardless of their being too late for playout or not. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsReceived": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of RTP packets received for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsReceivedBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of RTP packets received for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "RetransmitTimeouts": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of RTP/AVPF retransmission timeouts (<>, <>) for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsLost": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of RTP packets lost for this AV stream during the sample interval. Calculated by looking for missing RTP sequence headers. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsLostBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of RTP packets lost for this AV stream during the sample interval. Calculated by looking for missing RTP sequence headers. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketsLostByEventHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of loss events counted by their length in packets (1 packet, 2 packets, etc.) according to the intervals defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "string" + } + }, + "PacketsLostByEventHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of loss events counted by their length in packets (1 packet, 2 packets, etc.) according to the intervals defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "string" + } + }, + "LossEvents": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "LossEventsBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "DelayBetweenLossEventsHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of the number of times that the delay (in milliseconds) between two consecutive loss events belongs to each time interval defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "string" + } + }, + "DelayBetweenLossEventsHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of the number of times that the delay (in milliseconds) between two consecutive loss events belongs to each time interval defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "string" + } + }, + "SevereLossIndexCount": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events that occurred at a distance shorter than SevereLossMinDistance from the previous Loss Event for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "SevereLossIndexCountBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events that occurred at a distance shorter than SevereLossMinDistance from the previous Loss Event for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "AverageLossDistance": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the average distance in <> between consecutive Loss Events for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "AverageLossDistanceBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the average distance in <> between consecutive loss events for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "MinimumLossDistance": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the shortest distance between consecutive Loss Events for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "MinimumLossDistanceBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the shortest distance between consecutive Loss Events for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "SevereLossLengthCount": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events with length in RTP packets greater than SevereLossMinLength for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt" + } + }, + "SevereLossLengthCountBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of Loss Events with length in RTP packets greater than SevereLossMinLength for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "DurationSevereLossEventsHistogram": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of the number of severe loss events counted by their duration (in milliseconds) according to the intervals defined by <>. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "string" + } + }, + "DurationSevereLossEventsHistogramBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<> Each list item is a comma-separated list of unsigned integers that represents, for a sample interval, a histogram of the number of severe loss events counted by their duration (in milliseconds) according to the intervals defined by <>. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "string" + } + }, + "MaximumLossPeriod": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the longest Loss Event for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "MaximumLossPeriodBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the longest Loss Event for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "AverageLossPeriod": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the average length in <> of Loss Events for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "AverageLossPeriodBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the average length in <> of Loss Events for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "MinimumLossPeriod": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the shortest RTP Loss Event for this AV stream during the sample interval. These statistics are collected when no EC is applied or after any EC if available.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + }, + "MinimumLossPeriodBeforeEC": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the length in <> of the shortest RTP Loss Event for this AV stream during the sample interval. These statistics are collected before any EC, if available, is applied.", + "list": { + "datatype": "unsignedInt", + "unit": "RTP packets" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.MPEG2TSStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "MPEG2-TS Sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which MPEG2-TS data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * MPEG2-TS data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "TSPacketsReceived": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of MPEG2-TS packets received for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "TSPacketsDrained": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of good MPEG2-TS packets removed from the buffer for this AV stream during the sample interval. Packets received minus packets drained provides an indication how close the buffer came to over or under running during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "TSSyncByteErrorCount": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of MPEG2-TS packets with an invalid transport sync byte for this AV stream during the sample interval. Not meaningful when MPEG2-TS is transported over IP.", + "list": { + "datatype": "unsignedInt" + } + }, + "TSSyncLossCount": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of MPEG2-TS Loss of Synchronization Events for this AV stream during the sample interval. Not meaningful when MPEG2-TS is transported over IP.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketDiscontinuityCounter": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of MPEG2-TS Discontinuity errors that were captured for this AV stream during the sample interval. These statistics are collected when no CA decryption scheme is in use or after any CA decryption if in use.", + "list": { + "datatype": "unsignedInt" + } + }, + "PacketDiscontinuityCounterBeforeCA": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the total number of MPEG2-TS Discontinuity errors that were captured for this AV stream during the sample interval. These statistics are collected before any CA decryption scheme, if used, is applied.", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.VideoDecoderStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video decoder Sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which video decoder data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * Video Decoder data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "FrameRate": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the last frame rate at which the STB played out the video content for this AV stream during the sample interval. . Also the reported rate will be rounded off to the nearest integer.", + "list": { + "datatype": "unsignedInt" + } + }, + "DecodedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of video frames that were decoded completely (errorless frames) or partially (corrupted frames) by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "LostFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of video frames that could not be reproduced by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "ConcealedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of video frames that were reproduced by the STB for which some information was missing for this AV stream during the sample interval and loss concealment was applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "IDecodedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of I frames that were decoded completely (errorless frames) or partially (corrupted frames) by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "ILostFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of I frames that could not be reproduced by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "IConcealedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of I frames that were reproduced by the STB for which some information was missing for this AV stream during the sample interval and loss concealment applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "PDecodedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of P frames that were decoded completely (errorless frames) or partially (corrupted frames) by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "PLostFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of P frames that could not be reproduced by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "PConcealedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of P frames that were reproduced by the STB for which some information was missing for this AV stream during the sample interval and loss concealment applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "BDecodedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of B frames that were decoded completely (errorless frames) or partially (corrupted frames) by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "BLostFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of B frames that could not be reproduced by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "BConcealedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of B frames that were reproduced by the STB for which some information was missing for this AV stream during the sample interval and loss concealment applied.", + "list": { + "datatype": "unsignedInt" + } + }, + "AVResynchCounter": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of AV resynchronizations that were performed by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.AudioDecoderStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audio decoder Sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which audio decoder data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * Audio decoder data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "DecodedFrames": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of audio frames that were decoded completely (errorless frames) or partially (corrupted frames) by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + }, + "DecodingErrors": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of audio decoding errors detected by the STB for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.VideoResponseStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Video response Sample statistics for this ServiceMonitoring main stream instance.", + "access": false, + "array": false, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which video response data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * Video response data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "AverageVideoSystemResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the time period (in <>) between the instant of transmitting an IGMP JOIN or an RTSP SETUP command and the display of the first I frame, computed as the average of the VideoSystemResponse events that occured for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "MinimumVideoSystemResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the minimum time period (in <>) between the instant of transmitting an IGMP JOIN or an RTSP SETUP command and the display of the first I frame for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "MaximumVideoSystemResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the maximum time period (in <>) between the instant of transmitting an IGMP JOIN or an RTSP SETUP command and the display of the first I frame for this AV stream during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "AverageVoDControlResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the time period, in <>, between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I-frame of unicast stream, computed as the average of the VoDControlResponse events that occured for this AV stream during the sample interval. Only measured when started from a non-play state, i.e. either idle or paused.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "MinimumVoDControlResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the minimum time period, in <>, between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I-frame of unicast stream. Only measured when started from a non-play state, i.e. either idle or paused.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "MaximumVoDControlResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the maximum time period, in <>, between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I-frame of unicast stream. Only measured when started from a non-play state, i.e. either idle or paused.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "VoDControlResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a colon separated list of time periods in milliseconds between the instant of transmitting a RTSP PLAY command to start playing stream, and displaying the first I-frame of unicast stream. Only measured when started from a non-play state, i.e. either idle or paused. A comma separates measurements made in different sample intervals, while a colon separates individual measurements within a specific sample interval. If no VoDControlResponse measurements were made during a specific sample interval then this MUST be represented by an empty string. Example: ,837:453:1234,759,,,923:698,,,1284 Here there were no measurements during first sample interval, three during the second, one during the third, etc. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. This applies both to sample intervals and to individual measurements during a specific sample interval. <>", + "list": { + "datatype": "string", + "pattern": [ + "(\\d+(:\\d+)*)?" + ] + } + }, + "VideoSystemResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a colon separated list of time periods in milliseconds between the instant of transmitting an IGMP JOIN or an RTSP SETUP command and the display of the first I frame that occurred for this AV stream during the sample interval. A comma separates measurements made in different sample intervals, while a colon separates individual measurements within a specific sample interval. If no VideoSystemResponse measurements were made during a specific sample interval then this MUST be represented by an empty string. Example: ,837:453:1234,759,,,923:698,,,1284 Here there were no measurements during first sample interval, three during the second, one during the third, etc. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. This applies both to sample intervals and to individual measurements during a specific sample interval. <>", + "list": { + "datatype": "string", + "pattern": [ + "(\\d+(:\\d+)*)?" + ] + } + }, + "RequestedTransactions": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of RTSP protocol requests to start a VoD program display during the sample interval. Only meaningful for VoD.", + "list": { + "datatype": "unsignedInt" + } + }, + "AccessSuccesses": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of successful VoD attempts during the sample interval. An attempt is considered successful when the first I-frame is displayed by the client. Only meaningful for VoD.", + "list": { + "datatype": "unsignedInt" + } + }, + "CompletionCount": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of completed VoD requests during the sample interval. An attempt is defined successful if it continues until a RTSP protocol request to end the session is sent by the STB. Only meaningful for VoD.", + "list": { + "datatype": "unsignedInt" + } + }, + "ChannelChangeFailures": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of channel change failures. A channel change is considered as failed when the time period between a user channel change request and the display of the first I frame for this AVStream is above <.ChannelChangeFailureTimeout>>.", + "list": { + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.Sample.HighLevelMetricStats.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "High-level metric Sample statistics for this ServiceMonitoring main stream instance. One or more different high-level metrics can be supported; this is specified by <.Sample.HighLevelMetricStatsNumberOfEntries>>.", + "uniqueKeys": [ + "MetricName", + "Alias" + ], + "access": false, + "array": true, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables this Metric instance.", + "datatype": "boolean" + }, + "Status": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The status of this Metric instance. Enumeration of: Disabled, Enabled, Error. The <> value MAY be used by the CPE to indicate a locally defined error condition.", + "datatype": "string", + "enumerations": [ + "Disabled", + "Enabled", + "Error" + ] + }, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "MetricName": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Indicates a unique identifier for this high-level metric.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Metric1Threshold": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "Metric2Threshold": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "SampleSeconds": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the number of seconds during which this high-level metrics data was collected for this AV stream during the sample interval. Individual <> values can be less than the sample interval, for several reasons, including: * Any of the reasons for which the <.Sample.SampleSeconds>> values might be less than the sample interval. * This high-level metrics data collection is not appropriate or possible for this AV stream.", + "list": { + "datatype": "unsignedInt", + "unit": "seconds" + } + }, + "Metric1": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + } + }, + "Metric2": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + } + }, + "Metric1Failures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "datatype": "unsignedInt" + }, + "Metric2Failures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "This parameter is DEPRECATED and replaced by the <> parameter and, if needed, several instances of <.Sample.HighLevelMetricStats.>>.", + "datatype": "unsignedInt" + }, + "MetricSampleInterval": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A time period measured in <>. A new value for the high level metric is calculated every <> seconds. The value for <> MUST be less than, or equal to, <>. <> SHOULD be chosen such that <> is an integer multiple of <>. If not, the last metric sample interval in each sample interval MUST be shortened so that the last metric sample interval ends when the sample interval ends. The value for <> is algorithm-specific.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "MetricThreshold": { + "type": "unsignedInt", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The threshold value that controls the calculation of the <> parameter.", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + }, + "Metric": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a high-level metric calculated for this AV stream during the sample interval as the average of the high level metric values calculated on a metric sample interval basis. The length of the metric sample interval is given by <>. The interpretation of the metric values is algorithm-specific; the only constraints are that values have to be numeric, in the range [0:65535] and that lower values indicate worse QoE than do higher values.", + "list": { + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 65535 + } + ] + } + }, + "MetricFailures": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Counts the number of times (since the last time this MainStream and Sample statistics collection were both enabled) that a newly-calculated value of high-level metric <> was less than or equal to <>. This parameter can be incremented at any time during a sample interval, and might be incremented more than once during a single sample interval.", + "datatype": "unsignedInt" + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.EventLog.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object represents the log entries of events recorded by the MainStream object instance. When the number of log entries in the EventLog exceeds the value of the <> parameter, the Entry object with the lowest SequenceNumber value is replaced by the new EventLog Entry object. Log entries are persisted across reboots of the CPE.", + "access": false, + "array": false, + "Reset": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to true, clears the events from the event log and the value of <.SequenceNumber>> parameter is reset to the parameters minimum value.", + "datatype": "boolean" + }, + "EntryNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Reset()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.EventLog.Entry.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object represents an entry (e.g., start session, channel change) in the event log.", + "uniqueKeys": [ + "SequenceNumber" + ], + "access": false, + "array": true, + "SequenceNumber": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The sequence number of the event within the EventLog. This parameter is incremented by one (1) for each entry within the EventLog. When the value of the parameter exceeds the maximium range, the lowest value of this parameter that is not contained in current EventLog entries is used.", + "datatype": "unsignedInt", + "range": [ + { + "min": 1 + } + ] + }, + "Type": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Type of the event. The values for this parameter are vendor specific.", + "datatype": "string" + }, + "Time": { + "type": "dateTime", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Timestamp of the event.", + "datatype": "dateTime" + }, + "ParameterNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.ServiceMonitoring.MainStream.{i}.EventLog.Entry.{i}.Parameter.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "This object represents an instance of a parameter that is associated with the Entry object Instance.", + "access": false, + "array": true, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Name of the parameter (vendor-specific).", + "datatype": "string" + }, + "Value": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Value of the parameter.", + "datatype": "string" + } + } + } + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.GlobalOperation.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Global operations statistics.", + "access": false, + "array": false, + "Device.Services.STBService.{i}.ServiceMonitoring.GlobalOperation.Total.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Global operations total statistics.", + "access": false, + "array": false, + "ServiceAccessTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The time period in, <>, between the first message (e.g. DHCP Discover) sent by the STB during boot-up and the first multicast I-frame for the default channel displayed by the STB.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MinimumPortalResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Minimum portal latency defined as the minimum time period, in <>, between the instant of transmitting TCP SYN (the three way handshake) prior to first HTTP message, and receiving the last HTTP message carrying the information.", + "datatype": "unsignedInt", + "unit": "milliseconds" + }, + "MaximumPortalResponse": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Maximum portal latency defined as the maximum time period, in <>, between the instant of transmitting TCP SYN (the three way handshake) prior to first HTTP message, and receiving the last HTTP message carrying the information.", + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "Device.Services.STBService.{i}.ServiceMonitoring.GlobalOperation.Sample.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Global operations sample statistics.", + "access": false, + "array": false, + "MinimumPortalResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the minimum portal latency defined as the minimum time period, in <>, between the instant of transmitting TCP SYN (the three way handshake) prior to first HTTP message, and receiving the last HTTP message carrying the information during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "MaximumPortalResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is the maximum portal latency defined as the maximum time period, in <>, between the instant of transmitting TCP SYN (the three way handshake) prior to first HTTP message, and receiving the last HTTP message carrying the information during the sample interval.", + "list": { + "datatype": "unsignedInt", + "unit": "milliseconds" + } + }, + "PortalResponse": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Each entry is a colon separated list of time periods (in milliseconds) between the instant of transmitting TCP SYN (the three way handshake) prior to first HTTP message, and receiving the last HTTP message carrying the information. A comma separates measurements made in different sample intervals, while a colon separates individual measurements within a specific sample interval. If no PortalResponse measurements were made during a specific sample interval then this MUST be represented by an empty string. Example: ,837:453:1234,759,,,923:698,,,1284 Here there were no measurements during first sample interval, three during the second, one during the third, etc. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. This applies both to sample intervals and to individual measurements during a specific sample interval. <>", + "list": { + "datatype": "string", + "pattern": [ + "(\\d+(:\\d+)*)?" + ] + } + } + } + } + }, + "Device.Services.STBService.{i}.Applications.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Applications.", + "access": false, + "array": false, + "ServiceProviderNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of Service Provider instances.", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Applications.AudienceStats.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Audience viewing statistics.", + "access": false, + "array": false, + "Enable": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Enables or disables collection of viewing statistics. Enabling collection of viewing statistics also resets the viewing statistics table.", + "datatype": "boolean" + }, + "Reset": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <> resets the viewing statistics table. Setting it to <> has no effect. The value is not saved in device state and is always <> when read. Resetting statistics MUST reset all <.Duration>> parameters.", + "datatype": "boolean" + }, + "ResetTime": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of <> since the Audience statistics were last enabled or reset.", + "datatype": "unsignedInt", + "unit": "seconds" + }, + "ChannelNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Number of instances of <>.", + "datatype": "unsignedInt" + }, + "Reset()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + }, + "Device.Services.STBService.{i}.Applications.AudienceStats.Channel.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Table to record what the STB has been receiving. Time durations are recorded only for an AVPlayers main AVStream (i.e. for TV channels being displayed in the main screen). Each entry corresponds to a given TV channel and is indexed by channel name (the instance number is chosen by the STB and is not related to the channel number).", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "String describing the TV channel being displayed in the main screen. MUST be the value of the corresponding <.Name>> parameter.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Duration": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "The cumulative duration of this channel in <>.", + "datatype": "unsignedInt", + "unit": "seconds" + } + } + }, + "Device.Services.STBService.{i}.Applications.CDSPush.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Details of STB CDS Push logical internal parameters.", + "access": false, + "array": false, + "Reference": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "It references the object instance dedicated to the CDS Push service. Example: \u201cDevice.Services.StorageService.1.LogicalVolume.1.Folder.1\u201d.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ContentItemNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Applications.CDSPush.ContentItem.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Content Item instance table.", + "uniqueKeys": [ + "ContentReferenceId", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ContentReferenceId": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique Content Item reference as defined in <>, or <>.", + "datatype": "string" + }, + "VersionNumber": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Version number of the stored content item (a content item could be updated with a new version e.g. in case of errors in the video preventing the play out).", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 255 + } + ], + "unit": "%" + }, + "DeleteItem": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, deletes this Content Item instance. The value is not saved in device state and is always <> when read.", + "datatype": "boolean" + }, + "DeleteItem()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + } + } + }, + "Device.Services.STBService.{i}.Applications.CDSPull.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Details of STB CDS Pull logical internal component. This object is present only if the user allowed (via his local STB UI) the remote management of the CDS Pull service.", + "access": false, + "array": false, + "Reference": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "It references the object instance dedicated to the CDS Pull service. Example: \u201cDevice.Services.StorageService.1.LogicalVolume.1.Folder.1\u201d.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ContentItemNumberOfEntries": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "<>", + "datatype": "unsignedInt" + }, + "Device.Services.STBService.{i}.Applications.CDSPull.ContentItem.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Content Item instance table.", + "uniqueKeys": [ + "ContentReferenceId", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "ContentReferenceId": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Unique Content Item reference as defined in <>, or <>.", + "datatype": "string" + }, + "VersionNumber": { + "type": "unsignedInt", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Version number of the stored content item (a content item could be updated with a new version e.g. in case of errors in the video preventing the play out).", + "datatype": "unsignedInt", + "range": [ + { + "min": 0, + "max": 255 + } + ], + "unit": "%" + }, + "DeleteItem": { + "type": "boolean", + "read": true, + "write": true, + "protocols": [ + "cwmp" + ], + "description": "When set to <>, deletes this Content Item instance. The value is not saved in device state and is always <> when read.", + "datatype": "boolean" + }, + "DeleteItem()": { + "type": "command", + "async": false, + "protocols": [ + "usp" + ] + } + } + }, + "Device.Services.STBService.{i}.Applications.ServiceProvider.{i}.": { + "type": "object", + "protocols": [ + "cwmp", + "usp" + ], + "description": "Service Provider instance table.", + "uniqueKeys": [ + "Name", + "Alias" + ], + "access": false, + "array": true, + "Alias": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", + "datatype": "Alias", + "range": [ + { + "max": 64 + } + ] + }, + "Name": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Service Provider name.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "Domain": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Service Provider domain URI.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ServiceDiscoveryServer": { + "type": "string", + "read": true, + "write": true, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Service Provider\u2019s Service Discovery Server. It MAY be configured in the format of IMS Public Service Identifier, or IP address or URL.", + "datatype": "string", + "range": [ + { + "max": 256 + } + ] + }, + "ActiveBCGServers": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "cwmp", + "usp" + ], + "description": "Comma separated list of the BCG (Broadband Content Guide) server URLs the STB is currently retrieving IPTV service information from.", + "datatype": "string", + "range": [ + { + "max": 1024 + } + ] + } + } + } + } }, "Device.DeviceInfo.": { "type": "object", @@ -912,7 +23201,12 @@ "usp" ], "description": "The <> specifying the destination file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. This argument specifies only the destination file location, and does not indicate in any way the name or location of the local file to be uploaded. If the Agent receives multiple upload requests with the same URL, the Agent MUST perform each upload as requested, and MUST NOT assume that the content of the file to be uploaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -964,7 +23258,12 @@ "usp" ], "description": "The <> specifying the source file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. If the Agent receives multiple download requests with the same source URL, the Agent MUST perform each download as requested, and MUST NOT assume that the content of the file to be downloaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -1903,7 +24202,12 @@ "usp" ], "description": "The <> specifying the destination file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. This argument specifies only the destination file location, and does not indicate in any way the name or location of the local file to be uploaded. If the Agent receives multiple upload requests with the same URL, the Agent MUST perform each upload as requested, and MUST NOT assume that the content of the file to be uploaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -2216,7 +24520,12 @@ "usp" ], "description": "The <> specifying the source file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. If the Agent receives multiple download requests with the same source URL, the Agent MUST perform each download as requested, and MUST NOT assume that the content of the file to be downloaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "AutoActivate": { "type": "boolean", @@ -2500,7 +24809,12 @@ "usp" ], "description": "The <> specifying the destination file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. This argument specifies only the destination file location, and does not indicate in any way the name or location of the local file to be uploaded. If the Agent receives multiple upload requests with the same URL, the Agent MUST perform each upload as requested, and MUST NOT assume that the content of the file to be uploaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -2749,7 +25063,12 @@ "usp" ], "description": "The <> specifying the destination file location. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. This argument specifies only the destination file location, and does not indicate in any way the name or location of the local file to be uploaded. If the Agent receives multiple upload requests with the same URL, the Agent MUST perform each upload as requested, and MUST NOT assume that the content of the file to be uploaded is the same each time. This URL MUST NOT include the userinfo component, as defined in <>.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -16707,8 +39026,7 @@ "cwmp", "usp" ], - "description": "Signal/Noise ratio as perceived for this channel. Describes the Signal/Noise of the downstream channel, measured in <>. See <>.", - "datatype": "None" + "description": "Signal/Noise ratio as perceived for this channel. Describes the Signal/Noise of the downstream channel, measured in <>. See <>." }, "Microreflections": { "type": "int", @@ -16800,8 +39118,7 @@ "cwmp", "usp" ], - "description": "<> provides an in-channel received Modulation Error Ratio (MER), measured in <>. <> is defined as an estimate, provided by the demodulator, of the ratio: (average constellation energy with equally likely symbols) / (average squared magnitude of error vector) <> is measured just prior to FEC (trellis/Reed-Solomon) decoding. <> includes the effects of the HFC channel as well as implementation effects of the modulator and demodulator. Error vector estimation may vary among demodulator implementations. In the case of S-CDMA mode, RxMER is measured on the de-spread signal.", - "datatype": "None" + "description": "<> provides an in-channel received Modulation Error Ratio (MER), measured in <>. <> is defined as an estimate, provided by the demodulator, of the ratio: (average constellation energy with equally likely symbols) / (average squared magnitude of error vector) <> is measured just prior to FEC (trellis/Reed-Solomon) decoding. <> includes the effects of the HFC channel as well as implementation effects of the modulator and demodulator. Error vector estimation may vary among demodulator implementations. In the case of S-CDMA mode, RxMER is measured on the de-spread signal." }, "RxMerSamples": { "type": "unsignedInt", @@ -17016,8 +39333,7 @@ "cwmp", "usp" ], - "description": "This attribute represents the operational CM transmit power for this SC-QAM upstream channel, in <>. In order for this attribute to provide consistent information under all circumstances, a 3.1 CM will report the average total power for the SC-QAM channel the same as was done for DOCSIS 3.0, regardless of whether it is operating with a 3.1 or a 3.0 CMTS. The value that is reported was referred to as Pr in the DOCSIS 3.0 PHY Spec.", - "datatype": "None" + "description": "This attribute represents the operational CM transmit power for this SC-QAM upstream channel, in <>. In order for this attribute to provide consistent information under all circumstances, a 3.1 CM will report the average total power for the SC-QAM channel the same as was done for DOCSIS 3.0, regardless of whether it is operating with a 3.1 or a 3.0 CMTS. The value that is reported was referred to as Pr in the DOCSIS 3.0 PHY Spec." }, "T3Timeouts": { "type": "unsignedInt", @@ -17896,8 +40212,7 @@ "cwmp", "usp" ], - "description": "This parameter provides the total RF power present in the segment with the center frequency equal to the <> and the span equal to the <>. The value represents the sum of the spectrum power in all of the associated bins. The value is computed by summing power (not dB) values and converting the final sum to <>.", - "datatype": "None" + "description": "This parameter provides the total RF power present in the segment with the center frequency equal to the <> and the span equal to the <>. The value represents the sum of the spectrum power in all of the associated bins. The value is computed by summing power (not dB) values and converting the final sum to <>." } } } @@ -25825,13 +48140,7 @@ "usp" ], "description": "The Node ID of the MoCA Node to transmit the EVM Probe when the parameter <> = <>.", - "datatype": "MocaNodeID", - "range": [ - { - "min": 0, - "max": 15 - } - ] + "datatype": "MocaNodeID" }, "Type": { "type": "string", @@ -42446,6 +64755,56 @@ } } } + }, + "Device.WiFi.DataElements.Network.PreferredBackhauls.{i}.": { + "type": "object", + "protocols": [ + "usp" + ], + "description": "This object specifies the preferred backhaul links as populated by <>.", + "uniqueKeys": [ + "bSTAMACAddress" + ], + "access": false, + "array": true, + "BackhaulMACAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "usp" + ], + "description": "The MAC address of the BSS, or APMLD, or similar Ethernet interface, on this preferred backhaul link.", + "datatype": "MACAddress", + "range": [ + { + "max": 17 + } + ], + "pattern": [ + "", + "([0-9A-Fa-f][0-9A-Fa-f]:){5}([0-9A-Fa-f][0-9A-Fa-f])" + ] + }, + "bSTAMACAddress": { + "type": "string", + "read": true, + "write": false, + "protocols": [ + "usp" + ], + "description": "The MAC address of the backhaul Station STA (bSTA), or bSTAMLD, or similar Ethernet interface, on this preferred backhaul link.", + "datatype": "MACAddress", + "range": [ + { + "max": 17 + } + ], + "pattern": [ + "", + "([0-9A-Fa-f][0-9A-Fa-f]:){5}([0-9A-Fa-f][0-9A-Fa-f])" + ] + } } }, "Device.WiFi.DataElements.AssociationEvent.": { @@ -55164,7 +77523,12 @@ "usp" ], "description": "The <> for the CPE to perform the download on. This parameter MUST be in the form of a valid HTTP <> or FTP <> URL. * When using FTP transport, FTP binary transfer MUST be used. * When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used. * When using HTTP transport the HTTP Authentication MUST NOT be used. Note: For time based tests (<> > 0) the Controller MAY add a hint to duration of the test to the URL. See <> for more details.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "DSCP": { "type": "unsignedInt", @@ -55532,7 +77896,12 @@ "usp" ], "description": "The <> for the CPE to Upload to. This parameter MUST be in the form of a valid HTTP <> or FTP <> URL. * When using FTP transport, FTP binary transfer MUST be used. * When using HTTP transport, persistent connections MUST be used and pipelining MUST NOT be used. * When using HTTP transport the HTTP Authentication MUST NOT be used.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "DSCP": { "type": "unsignedInt", @@ -88171,6 +110540,7 @@ "usp" ], "description": "Escape character to use when encoding CSV data.", + "default": "\"", "datatype": "string" }, "ReportFormat": { @@ -88624,7 +110994,12 @@ "usp" ], "description": "The <> that specifies the location of the DU to be installed. The URL MUST NOT include the userinfo component, as defined in <>. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. Other optional transports MAY also be supported.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "UUID": { "type": "string", @@ -88698,7 +111073,12 @@ "usp" ], "description": "The <> which can be used to fetch the signature for this DU. The <> may use the data scheme defined in <> in order to incorporate the signature into the command directly. Several signature formats are in common use; the device may deduce the format used from the Content-Type of the retrieved object and/or by examining its content. The URL MUST NOT include the userinfo component, as defined in <>. HTTPS transport MUST be supported. Other optional transports MAY be supported. The absence of this parameter indicates that the DU is unsigned. If this is contrary to the security policy of the device then the command will be rejected.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "RequiredRoles": { "type": "string", @@ -90303,7 +112683,12 @@ "usp" ], "description": "The <> that specifies the location of the DU to be installed. The URL MUST NOT include the userinfo component, as defined in <>. The HTTPS transport MUST be supported, and the HTTP transport MAY be supported. Other optional transports MAY also be supported. If the device receives an Update command with the same source URL as a previous Update or Install comamnd, the device MUST perform each Update as requested, and MUST NOT assume that the content of the file to be downloaded is the same each time.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "Username": { "type": "string", @@ -90343,7 +112728,12 @@ "usp" ], "description": "The <> which can be used to fetch the signature for this DU. The <> may use the data scheme defined in <> in order to incorporate the signature into the command directly. Several signature formats are in common use; the device may deduce the format used from the Content-Type of the retrieved object and/or by examining its content. The URL MUST NOT include the userinfo component, as defined in <>. HTTPS transport MUST be supported. Other optional transports MAY be supported. The absence of this parameter indicates that the DU is unsigned. If this is contrary to the security policy of the device then the command will be rejected.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "RequiredRoles": { "type": "string", @@ -107638,7 +130028,12 @@ "usp" ], "description": "The <> from or to which this transfer was performed, or <> if no such URL is available.", - "datatype": "URL" + "datatype": "URL", + "range": [ + { + "max": 2048 + } + ] }, "StartTime": { "type": "dateTime", @@ -110616,7 +133011,27 @@ "usp" ], "description": "Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat. | Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat.", - "datatype": "IoTDeviceType" + "datatype": "IoTDeviceType", + "enumerations": [ + "Alarm", + "AntiTheft", + "Bell", + "Clock", + "Door", + "Fan", + "GarageDoor", + "HVAC", + "Light", + "Lock", + "Meter", + "Motor", + "Oven", + "PowerStrip", + "Sensor", + "SensorStrip", + "Siren", + "Thermostat" + ] }, "Description": { "type": "string", @@ -110737,7 +133152,27 @@ "usp" ], "description": "Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat. | Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat.", - "datatype": "IoTDeviceType" + "datatype": "IoTDeviceType", + "enumerations": [ + "Alarm", + "AntiTheft", + "Bell", + "Clock", + "Door", + "Fan", + "GarageDoor", + "HVAC", + "Light", + "Lock", + "Meter", + "Motor", + "Oven", + "PowerStrip", + "Sensor", + "SensorStrip", + "Siren", + "Thermostat" + ] }, "Description": { "type": "string", @@ -110908,7 +133343,31 @@ "usp" ], "description": "Describes the type of IoT Level Controller or Sensor that the <> instance is representing. Enumeration of: Acceleration, Area, Battery, Brightness, Concentration, Conductivity, Distance, Energy, Flow, Humidity, Intensity, Luminance, Meter, Motion, Position, Power, Pressure, Radiation, Speed, Temperature, Volume, Weight. | Describes the type of IoT Level Controller or Sensor that the <> instance is representing. Enumeration of: Acceleration, Area, Battery, Brightness, Concentration, Conductivity, Distance, Energy, Flow, Humidity, Intensity, Luminance, Meter, Motion, Position, Power, Pressure, Radiation, Speed, Temperature, Volume, Weight.", - "datatype": "IoTLevelType" + "datatype": "IoTLevelType", + "enumerations": [ + "Acceleration", + "Area", + "Battery", + "Brightness", + "Concentration", + "Conductivity", + "Distance", + "Energy", + "Flow", + "Humidity", + "Intensity", + "Luminance", + "Meter", + "Motion", + "Position", + "Power", + "Pressure", + "Radiation", + "Speed", + "Temperature", + "Volume", + "Weight" + ] }, "Description": { "type": "string", @@ -110943,7 +133402,58 @@ "usp" ], "description": "Units in which <>, <>, <>, <> and <> are expressed. Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. | Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. .", - "datatype": "IoTUnitType" + "datatype": "IoTUnitType", + "enumerations": [ + "-", + "%", + "deg", + "degC", + "degF", + "K", + "km", + "m", + "cm", + "mm", + "h", + "min", + "s", + "ms", + "sq-km", + "sq-m", + "sq-cm", + "cu-m", + "l", + "cl", + "ml", + "kg", + "g", + "mg", + "Wh", + "kWh", + "W", + "A", + "Hz", + "V", + "N", + "Pa", + "C", + "F", + "ohm", + "S", + "Wb", + "T", + "H", + "lm", + "lx", + "mps", + "cd", + "mol", + "UV", + "RGB", + "ppm", + "Sv", + "J" + ] }, "MinValue": { "type": "decimal", @@ -111006,7 +133516,16 @@ "usp" ], "description": "Describes the type of IoT Enum Controller that the <> instance is representing. Enumeration of: AlarmMode, DoorMode, FanMode, LockMode, OperatingMode, TemperatureMode, ThermostatMode. | Describes the type of IoT Enum Controller that the <> instance is representing. Enumeration of: AlarmMode, DoorMode, FanMode, LockMode, OperatingMode, TemperatureMode, ThermostatMode.", - "datatype": "IoTEnumControlType" + "datatype": "IoTEnumControlType", + "enumerations": [ + "AlarmMode", + "DoorMode", + "FanMode", + "LockMode", + "OperatingMode", + "TemperatureMode", + "ThermostatMode" + ] }, "Description": { "type": "string", @@ -111181,7 +133700,31 @@ "usp" ], "description": "Describes the type of IoT Level Controller or Sensor that the <> instance is representing. Enumeration of: Acceleration, Area, Battery, Brightness, Concentration, Conductivity, Distance, Energy, Flow, Humidity, Intensity, Luminance, Meter, Motion, Position, Power, Pressure, Radiation, Speed, Temperature, Volume, Weight. | Describes the type of IoT Level Controller or Sensor that the <> instance is representing. Enumeration of: Acceleration, Area, Battery, Brightness, Concentration, Conductivity, Distance, Energy, Flow, Humidity, Intensity, Luminance, Meter, Motion, Position, Power, Pressure, Radiation, Speed, Temperature, Volume, Weight.", - "datatype": "IoTLevelType" + "datatype": "IoTLevelType", + "enumerations": [ + "Acceleration", + "Area", + "Battery", + "Brightness", + "Concentration", + "Conductivity", + "Distance", + "Energy", + "Flow", + "Humidity", + "Intensity", + "Luminance", + "Meter", + "Motion", + "Position", + "Power", + "Pressure", + "Radiation", + "Speed", + "Temperature", + "Volume", + "Weight" + ] }, "Description": { "type": "string", @@ -111226,7 +133769,58 @@ "usp" ], "description": "Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. | Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. Unit in which <> is expressed.", - "datatype": "IoTUnitType" + "datatype": "IoTUnitType", + "enumerations": [ + "-", + "%", + "deg", + "degC", + "degF", + "K", + "km", + "m", + "cm", + "mm", + "h", + "min", + "s", + "ms", + "sq-km", + "sq-m", + "sq-cm", + "cu-m", + "l", + "cl", + "ml", + "kg", + "g", + "mg", + "Wh", + "kWh", + "W", + "A", + "Hz", + "V", + "N", + "Pa", + "C", + "F", + "ohm", + "S", + "Wb", + "T", + "H", + "lm", + "lx", + "mps", + "cd", + "mol", + "UV", + "RGB", + "ppm", + "Sv", + "J" + ] }, "LowLevel": { "type": "boolean", @@ -111354,7 +133948,58 @@ "usp" ], "description": "Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. | Possible Unit types used for decimal values. Enumeration of: -, %, deg, degC, degF, K, km, m, cm, mm, h, min, s, ms, sq-km, sq-m, sq-cm, cu-m, l, cl, ml, kg, g, mg, Wh, kWh, W, A, Hz, V, N, Pa, C, F, ohm, S, Wb, T, H, lm, lx, mps, cd, mol, UV, RGB, ppm, Sv, J. Unit in which <> are expressed.", - "datatype": "IoTUnitType" + "datatype": "IoTUnitType", + "enumerations": [ + "-", + "%", + "deg", + "degC", + "degF", + "K", + "km", + "m", + "cm", + "mm", + "h", + "min", + "s", + "ms", + "sq-km", + "sq-m", + "sq-cm", + "cu-m", + "l", + "cl", + "ml", + "kg", + "g", + "mg", + "Wh", + "kWh", + "W", + "A", + "Hz", + "V", + "N", + "Pa", + "C", + "F", + "ohm", + "S", + "Wb", + "T", + "H", + "lm", + "lx", + "mps", + "cd", + "mol", + "UV", + "RGB", + "ppm", + "Sv", + "J" + ] } }, "Device.IoTCapability.{i}.EnumSensor.": { @@ -111373,7 +134018,16 @@ "usp" ], "description": "Describes the type of IoT Enum Sensor that the <> instance is representing. Enumeration of: AlarmState, DoorState, FanState, LockState, OperatingState, TemperatureState, ThermostatFanState. | Describes the type of IoT Enum Sensor that the <> instance is representing. Enumeration of: AlarmState, DoorState, FanState, LockState, OperatingState, TemperatureState, ThermostatFanState.", - "datatype": "IoTEnumSensorType" + "datatype": "IoTEnumSensorType", + "enumerations": [ + "AlarmState", + "DoorState", + "FanState", + "LockState", + "OperatingState", + "TemperatureState", + "ThermostatFanState" + ] }, "Description": { "type": "string", @@ -111463,7 +134117,27 @@ "usp" ], "description": "Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat. | Describes the type of Device that the <> instance is representing. Enumeration of: Alarm, AntiTheft, Bell, Clock, Door, Fan, GarageDoor, HVAC, Light, Lock, Meter, Motor, Oven, PowerStrip, Sensor, SensorStrip, Siren, Thermostat.", - "datatype": "IoTDeviceType" + "datatype": "IoTDeviceType", + "enumerations": [ + "Alarm", + "AntiTheft", + "Bell", + "Clock", + "Door", + "Fan", + "GarageDoor", + "HVAC", + "Light", + "Lock", + "Meter", + "Motor", + "Oven", + "PowerStrip", + "Sensor", + "SensorStrip", + "Siren", + "Thermostat" + ] }, "Description": { "type": "string", @@ -111482,4 +134156,4 @@ } } } -} +} \ No newline at end of file diff --git a/libbbfdm/dmtree/json/tr104.json b/libbbfdm/dmtree/json/tr104.json deleted file mode 100644 index 437957f4..00000000 --- a/libbbfdm/dmtree/json/tr104.json +++ /dev/null @@ -1,13670 +0,0 @@ -{ - "Device.Services.VoiceService.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The top-level object for CPE with voice capabilities.", - "uniqueKeys": [ - "Alias" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "VoIPProfileNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "CodecProfileNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "InterworkNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "TrunkNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "CallLogNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> The value MUST be less than or equal to <>.", - "datatype": "unsignedInt" - }, - "TerminalNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Capabilities.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The overall capabilities of the VoIP CPE.", - "access": false, - "array": false, - "MaxLineCount": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of lines.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxExtensionCount": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of extensions.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxCallLogCount": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum total number of <> objects supported. A value of -1 indicates no specific limit on the number of call logs.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxSessionsPerLine": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of voice sessions supported for any given <> object. A value greater than one indicates support for CPE-provided conference calling. A value of -1 indicates no specific limit on the number of voice sessions per line.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxSessionsPerExtension": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of voice sessions supported for any given <> object. A value greater than one indicates support for CPE-provided conference calling. A value of -1 indicates no specific limit on the number of voice sessions per extension.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxSessionCount": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum total number of voice sessions supported across all <> objects. (This might differ from <> if each line can support more than one session for CPE-provided conference calling. This value MAY be less than the product of <> and <>.) A value of -1 indicates no specific limit on the number of voice sessions.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "NetworkConnectionModes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported network connection mode. <> Most entries MAY be appended with a version indicator in the form /X.Y. For example: SIP/2.0 The list MAY include vendor-specific modes, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyMode", - "list": { - "datatype": "string", - "pattern": [ - "SIP(/\\d+\\.\\d+)?", - "MGCP(/\\d+\\.\\d+)?", - "MGCP-NCS(/\\d+\\.\\d+)?", - "H\\.248(/\\d+\\.\\d+)?", - "H\\.323(/\\d+\\.\\d+)?", - "DSS1", - "FXO", - "X_.+" - ] - } - }, - "UserConnectionModes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported user connection mode. <> Most entries MAY be appended with a version indicator in the form /X.Y. For example: SIP/2.0 The list MAY include vendor-specific modes, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyMode", - "list": { - "datatype": "string", - "pattern": [ - "SIP(/\\d+\\.\\d+)?", - "DSS1", - "FXS", - "DECT(/\\d+\\.\\d+)?", - "Button", - "Virtual", - "X_.+" - ] - } - }, - "ToneFileFormats": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported tone file format. The specified file formats are raw codec data files, using one of the codecs listed below. Enumeration of: G.711MuLaw, G.711ALaw, G.729, MP3, WAV, AMR. The list MAY include vendor-specific -specific extensions, which MUST use the format defined in <>. Example: G.711MuLaw, MP3, X_EXAMPLE-COM_MyFileFormat If the CPE does not support tone files, this parameter MUST be <>.", - "list": { - "datatype": "string", - "enumerations": [ - "G.711MuLaw", - "G.711ALaw", - "G.729", - "MP3", - "WAV", - "AMR" - ] - } - }, - "RingFileFormats": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported ring file format. Enumeration of: MIDI, SMAF, RTTTL, MP3, WAV, AMR. The list MAY include vendor-specific-specific extensions, which MUST use the format defined in <>. Example: MIDI, AMR, X_EXAMPLE-COM_MyFileFormat If the CPE does not support ring files, this parameter MUST be <>.", - "list": { - "datatype": "string", - "enumerations": [ - "MIDI", - "SMAF", - "RTTTL", - "MP3", - "WAV", - "AMR" - ] - } - }, - "FacilityActions": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The facility actions supported by this VoiceService. Enumeration of: AA_REGISTER, AA_ERASE, AA_INTERROGATE, CA_ACTIVATE, CCBS_ACTIVATE, CCBS_DEACTIVATE, CCBS_INTERROGATE, CCNR_ACTIVATE, CCNR_DEACTIVATE, CCNR_INTERROGATE, CFB_REGISTER, CFB_ACTIVATE, CFB_DEACTIVATE, CFB_ERASE, CFB_INTERROGATE, CFNR_REGISTER, CFNR_ACTIVATE, CFNR_DEACTIVATE, CFNR_ERASE, CFNR_INTERROGATE, CFNR_TIMER, CFT_ACTIVATE, CFT_DEACTIVATE, CFT_INTERROGATE, CFU_REGISTER, CFU_ACTIVATE, CFU_DEACTIVATE, CFU_ERASE, CFU_INTERROGATE, CLIR_ACTIVATE, CLIR_DEACTIVATE, CLIR_INTERROGATE, CP_INVOKE, CW_ACTIVATE, CW_DEACTIVATE, CW_INVOKE, DND_ACTIVATE, DND_DEACTIVATE, DND_INTERROGATE, EXT_INVOKE, LINE_INVOKE, MAILBOX_INVOKE, OCB_ACTIVATE, OCB_DEACTIVATE, OCB_INTERROGATE, PSO_ACTIVATE, PW_SET, SCF_ACTIVATE, SCF_DEACTIVATE, SCF_INTERROGATE, SCREJ_ACTIVATE, SCREJ_DEACTIVATE, SCREJ_INTERROGATE, SR_ACTIVATE, SR_DEACTIVATE, SR_INTERROGATE. The list MAY include vendor-specific Facility Actions, which MUST use the format defined in <>. Facility Actions are referenced in the VoiceService data model in the objects <.PrefixInfo..>> and <.ButtonMap.Button..>>.", - "list": { - "datatype": "string", - "enumerations": [ - "AA_REGISTER", - "AA_ERASE", - "AA_INTERROGATE", - "CA_ACTIVATE", - "CCBS_ACTIVATE", - "CCBS_DEACTIVATE", - "CCBS_INTERROGATE", - "CCNR_ACTIVATE", - "CCNR_DEACTIVATE", - "CCNR_INTERROGATE", - "CFB_REGISTER", - "CFB_ACTIVATE", - "CFB_DEACTIVATE", - "CFB_ERASE", - "CFB_INTERROGATE", - "CFNR_REGISTER", - "CFNR_ACTIVATE", - "CFNR_DEACTIVATE", - "CFNR_ERASE", - "CFNR_INTERROGATE", - "CFNR_TIMER", - "CFT_ACTIVATE", - "CFT_DEACTIVATE", - "CFT_INTERROGATE", - "CFU_REGISTER", - "CFU_ACTIVATE", - "CFU_DEACTIVATE", - "CFU_ERASE", - "CFU_INTERROGATE", - "CLIR_ACTIVATE", - "CLIR_DEACTIVATE", - "CLIR_INTERROGATE", - "CP_INVOKE", - "CW_ACTIVATE", - "CW_DEACTIVATE", - "CW_INVOKE", - "DND_ACTIVATE", - "DND_DEACTIVATE", - "DND_INTERROGATE", - "EXT_INVOKE", - "LINE_INVOKE", - "MAILBOX_INVOKE", - "OCB_ACTIVATE", - "OCB_DEACTIVATE", - "OCB_INTERROGATE", - "PSO_ACTIVATE", - "PW_SET", - "SCF_ACTIVATE", - "SCF_DEACTIVATE", - "SCF_INTERROGATE", - "SCREJ_ACTIVATE", - "SCREJ_DEACTIVATE", - "SCREJ_INTERROGATE", - "SR_ACTIVATE", - "SR_DEACTIVATE", - "SR_INTERROGATE" - ] - } - }, - "CodecNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Capabilities.SIP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP-specific capabilities (as defined in <>).", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.Capabilities.SIP.Client.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP client capabilities.", - "access": false, - "array": false, - "Extensions": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported SIP extension method among the methods listed in the IANA SIP parameters registry (see <>). SIP extension methods MUST be in the form of the method name in upper case. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : REFER : INFO : X_EXAMPLE-COM_MyExt", - "list": { - "datatype": "string" - } - }, - "URISchemes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported URI scheme beyond the URI schemes REQUIRED by the SIP specification (<>). Each URI scheme is given by the URI prefix, without the colon separator. Example: tel, fax", - "list": { - "datatype": "string" - } - }, - "EventTypes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported event package among the event packages listed in the IANA registry for SIP Event Type Namespace (see <>). The list MAY include vendor-specific event packages, which MUST use the format defined in <>. Examples: : call-completion : presence : X_EXAMPLE-COM_MyEvtPkg", - "list": { - "datatype": "string" - } - }, - "TLSAuthenticationProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported authentication protocol for TLS transport. Enumeration of: Null, MD5, SHA-1, SHA-2, AEAD. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "Null", - "MD5", - "SHA-1", - "SHA-2", - "AEAD" - ] - } - }, - "TLSAuthenticationKeySizes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item represents a supported TLS authentication key size.", - "list": { - "datatype": "unsignedInt" - } - }, - "TLSEncryptionProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported encryption protocol for TLS transport. Enumeration of: Null, RC4, RC2, DES, 3DES, AES, Camellia. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "Null", - "RC4", - "RC2", - "DES", - "3DES", - "AES", - "Camellia" - ] - } - }, - "TLSEncryptionKeySizes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported TLS encryption key size.", - "list": { - "datatype": "unsignedInt" - } - }, - "TLSKeyExchangeProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported key exchange protocol for TLS transport. Enumeration of: RSA, DSS, DHE-RSA, DHE-DSS, ECDHE-RSA, ECDHE-ECDSA. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "RSA", - "DSS", - "DHE-RSA", - "DHE-DSS", - "ECDHE-RSA", - "ECDHE-ECDSA" - ] - } - } - }, - "Device.Services.VoiceService.{i}.Capabilities.SIP.Registrar.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP registrar capabilities.", - "access": false, - "array": false, - "Extensions": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported SIP extension method among the methods listed in the IANA SIP parameters registry (see <>). SIP extension methods MUST be in the form of the method name in upper case. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : REFER : INFO : X_EXAMPLE-COM_MyExt", - "list": { - "datatype": "string" - } - }, - "URISchemes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported URI scheme beyond the URI schemes REQUIRED by the SIP specification. Each URI scheme is given by the URI prefix, without the colon separator. Example: tel, fax", - "list": { - "datatype": "string" - } - }, - "EventTypes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported event package among the event packages listed in the IANA registry for SIP Event Type Namespace (see <>). The list MAY include vendor-specific event packages, which MUST use the format defined in <>. Examples: : call-completion : presence : X_EXAMPLE-COM_MyEvtPkg", - "list": { - "datatype": "string" - } - }, - "TLSAuthenticationProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported authentication protocol for TLS transport. Enumeration of: Null, MD5, SHA-1, SHA-2, AEAD. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "Null", - "MD5", - "SHA-1", - "SHA-2", - "AEAD" - ] - } - }, - "TLSAuthenticationKeySizes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item represents a supported TLS authentication key size.", - "list": { - "datatype": "unsignedInt" - } - }, - "TLSEncryptionProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported encryption protocol for TLS transport. Enumeration of: Null, RC4, RC2, DES, 3DES, AES, Camellia. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "Null", - "RC4", - "RC2", - "DES", - "3DES", - "AES", - "Camellia" - ] - } - }, - "TLSEncryptionKeySizes": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported TLS encryption key size.", - "list": { - "datatype": "unsignedInt" - } - }, - "TLSKeyExchangeProtocols": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported key exchange protocol for TLS transport. Enumeration of: RSA, DSS, DHE-RSA, DHE-DSS, ECDHE-RSA, ECDHE-ECDSA. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "RSA", - "DSS", - "DHE-RSA", - "DHE-DSS", - "ECDHE-RSA", - "ECDHE-ECDSA" - ] - } - } - } - }, - "Device.Services.VoiceService.{i}.Capabilities.MGCP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "MGCP-specific capabilities (as defined in <>).", - "access": false, - "array": false, - "Extensions": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported optional MGCP package. MGCP packages are listed using the uppercase package abbreviation. The list MAY include vendor-specific extensions, which MUST use the format defined in <>. Examples: : BP : X_EXAMPLE-COM_MyExt", - "list": { - "datatype": "string" - } - } - }, - "Device.Services.VoiceService.{i}.Capabilities.H323.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "H.323-specific capabilities (as defined in <>).", - "access": false, - "array": false, - "FastStart": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Support for H.323 fast start. If <> indicates support for fast start.", - "datatype": "boolean" - }, - "H235AuthenticationMethods": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported authentication method. Enumeration of: dhExch, pwdSymEnc, pwdHash, certSign, ipsec, tls. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "list": { - "datatype": "string", - "enumerations": [ - "dhExch", - "pwdSymEnc", - "pwdHash", - "certSign", - "ipsec", - "tls" - ] - } - } - }, - "Device.Services.VoiceService.{i}.Capabilities.ISDN.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The overall ISDN capabilities of external ports of the CPE.", - "access": false, - "array": false, - "MSN": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support <> Number identification supplementary services: Multiple Subscriber Number", - "datatype": "boolean" - }, - "DDI": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support <> Number identification supplementary services: Direct-dialling-In", - "datatype": "boolean" - }, - "MCID": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support <> Number identification supplementary services: Malicious call Identification", - "datatype": "boolean" - }, - "MWI": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support Message Waiting Indication (MWI)", - "datatype": "boolean" - }, - "AoC": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support one or more of the followings AOC-services: <> Charging supplementary services: Advice of charge: charging information at call set-up time (AOC-S) <> Charging supplementary services: Advice of charge: charging information during the call (AOC-D) <> Charging supplementary services: Advice of charge: charging information at the end of the call (AOC-E)", - "datatype": "boolean" - }, - "ECT": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external ISDN ports support <> Call offering supplementary services: Explicit call transfer (ECT)", - "datatype": "boolean" - } - }, - "Device.Services.VoiceService.{i}.Capabilities.POTS.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The overall POTS capabilities of external ports of the CPE.", - "access": false, - "array": false, - "DialType": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The supported supported dial type.", - "datatype": "string", - "enumerations": [ - "Tone", - "Pulse", - "Tone and Pulse" - ] - }, - "ClipGeneration": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external POTS ports support Calling Line identification (CLIP).", - "datatype": "boolean" - }, - "ChargingPulse": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The external POTS ports support transmittal of a charging pulse according to TR1 TR 110.", - "datatype": "boolean" - } - }, - "Device.Services.VoiceService.{i}.Capabilities.Codec.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table to describe the set of supported codecs.", - "uniqueKeys": [ - "Alias", - "Codec", - "BitRate" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Identifier of the type of codec. Enumeration of: AMR, Clearmode, EVRC1, EVRCB1, G.711MuLaw, G.711ALaw, G.726, G.729, G.729.1, G.729a, G.729e, G.728, G.723.1, G.722, G.722.1, G.722.2, Generic Comfort Noise, GSM-FR, GSM-HR, GSM-EFR, iLBC, Speex. The parameter MAY instead be a vendor-specific codec, which MUST be in the format defined in <>. For example: X_EXAMPLE-COM_MyCodec", - "datatype": "string", - "enumerations": [ - "AMR", - "Clearmode", - "EVRC1", - "EVRCB1", - "G.711MuLaw", - "G.711ALaw", - "G.726", - "G.729", - "G.729.1", - "G.729a", - "G.729e", - "G.728", - "G.723.1", - "G.722", - "G.722.1", - "G.722.2", - "Generic Comfort Noise", - "GSM-FR", - "GSM-HR", - "GSM-EFR", - "iLBC", - "Speex" - ] - }, - "BitRate": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Bit rate, specified in <>. The value MUST be among the values appropriate for the specified codec.", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "PacketizationPeriod": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported packetization period, in milliseconds, or a continuous range of packetization periods. Ranges are indicated as a hyphen-separated pair of unsigned integers. Examples: : 20 indicates a single discrete value. : 10, 20, 30 indicates a set of discrete values. : 5-40 indicates a continuous inclusive range. : 5-10, 20, 30 indicates a continuous range in addition to a set of discrete values. A range MUST only be indicated if all values within the range are supported.", - "list": { - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - } - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <> indicates support for silence suppression for this codec.", - "datatype": "boolean" - } - }, - "Device.Services.VoiceService.{i}.Capabilities.QualityIndicator.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specific capabilities concerning quality indicators.", - "access": false, - "array": false, - "QIModelsSupported": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Comma-separated list of supported models for evaluation of VoIP Quality Indicator. <> indicates that CPE does not support evaluation of this indicator. The entry MAY include vendor-specific models, which MUST be in the format defined in <>. For example: \u201cP.564,G.107,X_EXAMPLE-COM_MyModel\u201d", - "datatype": "string" - }, - "MaxQIValues": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the maximum number of QI values which can be reported for a session. If this parameter is empty there is no specified maximum limit. If possible this limit SHOULD be large enough to handle at least 10 to 15 minutes of call time, which would typically mean 60 to 90 quality values for commonly used quality models.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 127 - } - ] - }, - "MaxWorstQIValues": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of worst QI values which the CPE is able to store and report. A value of 0 indicates no specific maximum number of worst QI values.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 127 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.ReservedPorts.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The list of IP ports on the CPE WAN and LAN interfaces that will not be allocated by the ACS and therefore are available to be allocated by the CPE. The CPE can dynamically allocate ports from this range for things like signaling listening ports or local RTP ports.", - "access": false, - "array": false, - "WANPortRange": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Range of ports reserved for use by the CPE on any WAN interface. <> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Example: : 12345-12350,23580", - "list": { - "datatype": "string" - } - }, - "LANPortRange": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Range of ports reserved for use by the CPE on any LAN interfaces. <> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Example: : 12345-12350,23580", - "list": { - "datatype": "string" - } - } - }, - "Device.Services.VoiceService.{i}.ISDN.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models ISDN physical interfaces (BRI and PRI) supporting <> based signalling.", - "access": false, - "array": false, - "BRINumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "PRINumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.ISDN.BRI.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "ISDN BRI physical interfaces table (a voice physical interface as described in <>).", - "uniqueKeys": [ - "Name", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this ISDN BRI interface.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this physical interface.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The textual name of the interface as assigned by the CPE.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ApplicationInterface": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the type of application that uses the interface.", - "datatype": "string", - "enumerations": [ - "VoIP", - "VoATM", - "Data" - ] - }, - "Protocol": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the protocol variant used for the interface. Enumeration of: EuroISDN, NI-1, NI-2, 5ESS, NTT, VN3, VN4, Q.SIG. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "datatype": "string", - "enumerations": [ - "EuroISDN", - "NI-1", - "NI-2", - "5ESS", - "NTT", - "VN3", - "VN4", - "Q.SIG" - ] - }, - "ProtocolEmulation": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Protocol emulation for the interface.", - "datatype": "string", - "enumerations": [ - "TE", - "NT" - ] - }, - "PermanentLayer2": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, avoid the disconnection of the ISDN layer 2 when the ISDN terminal or the ISDN network disconnects the layer 2 (in static TEI mode); it will be maintained established.", - "datatype": "boolean" - }, - "PermanentLayer1": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maintain the ISDN layer 1 up; it is useful for clocking and management.", - "datatype": "boolean" - }, - "LapdDisconnectionTimeout": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Avoid the disconnection of the ISDN layer 1 or 2 up when there is no call in progress in dynamic TEI mode.", - "datatype": "boolean" - }, - "TEINegotiation": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "TEI management mode. It MUST be set to <> for ISDN phones or connection to an ISDN network and <> for PBX.", - "datatype": "string", - "enumerations": [ - "Static", - "Dynamic" - ] - }, - "StaticTEI": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "TEI value in static mode.", - "datatype": "unsignedInt", - "range": [ - { - "max": 63 - } - ] - }, - "LifeLineHold": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the lifeline bypass on the BRI S0 voice module. If the interface is used by the VoIP gateway, the bypass is enabled if the CPE is not registered on registration server.", - "datatype": "boolean" - }, - "PowerSourceOne": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "To enable (disable) the power source one (PS1) on the BRI interfaces.", - "datatype": "boolean" - }, - "MaxNumBChannels": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of simultaneous B channels.", - "datatype": "unsignedInt", - "range": [ - { - "max": 2 - } - ] - }, - "OutboundOnlyBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 2 - } - ] - } - }, - "InboundOnlyBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 2 - } - ] - } - }, - "BidirectionalBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 2 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.ISDN.PRI.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "ISDN PRI physical interfaces table (a voice physical interface as described in <>).", - "uniqueKeys": [ - "Name", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this ISDN PRI interface.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this physical interface.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The textual name of the interface as assigned by the CPE.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ApplicationInterface": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the type of application that uses the interface.", - "datatype": "string", - "enumerations": [ - "VoIP", - "VoATM", - "Data" - ] - }, - "Protocol": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the protocol variant used for the interface. Enumeration of: EuroISDN, NI-1, NI-2, 4ESS, 5ESS, NTT, Q.SIG. The list MAY include vendor-specific protocols, which MUST use the format defined in <>.", - "datatype": "string", - "enumerations": [ - "EuroISDN", - "NI-1", - "NI-2", - "4ESS", - "5ESS", - "NTT", - "Q.SIG" - ] - }, - "ProtocolEmulation": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the protocol emulation for this interface.", - "datatype": "string", - "enumerations": [ - "TE", - "NT" - ] - }, - "PermanentLayer2": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, avoid the disconnection of the ISDN layer 2 when the ISDN terminal or the ISDN network disconnects the layer 2 (in static TEI mode); it will be maintained established.", - "datatype": "boolean" - }, - "Linecode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the physical line coding to be used.", - "datatype": "string", - "enumerations": [ - "ami", - "hdb3", - "b8zs" - ] - }, - "ESF": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the framing type.", - "datatype": "string", - "enumerations": [ - "None", - "DF", - "MF", - "EMF", - "SF", - "ESF", - "AutoDetect" - ] - }, - "PhysicalInterfaceType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enumeration of: T1, E1.", - "datatype": "string", - "enumerations": [ - "T1", - "E1" - ] - }, - "MaxNumBChannels": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of simultaneous B channels.", - "datatype": "unsignedInt", - "range": [ - { - "max": 30 - } - ] - }, - "OutboundOnlyBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 31 - } - ] - } - }, - "InboundOnlyBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 31 - } - ] - } - }, - "BidirectionalBChannels": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 31 - } - ] - } - }, - "ClockMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Determines the role of the CPE for the purpose of clock synchronisation on this interface.", - "datatype": "string", - "enumerations": [ - "Master", - "Slave" - ] - } - } - }, - "Device.Services.VoiceService.{i}.POTS.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models analogue lines. Both FXO and FXS are handled.", - "access": false, - "array": false, - "FXONumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "FXSNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Region": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The geographic region associated to POTS (MUST be an alpha-2 (two-character alphabetic) country code as specified by <>). This MAY be used by the CPE to customize localization settings. If <>, indicates that the region is unspecified and the CPE SHOULD use default localization settings.", - "datatype": "string", - "range": [ - { - "max": 2 - } - ] - }, - "Device.Services.VoiceService.{i}.POTS.FXO.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "FXO physical interfaces table (a voice physical interface as described in <>). Each entry in the table models an analogue physical interface as defined by <>", - "uniqueKeys": [ - "Name", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this FXO interface.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this physical interface.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The textual name of the interface as assigned by the CPE.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SecondStepDialing": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables the second step dialing mode. If <>, incoming dialed digits are processed through the voice routing table. If <>, the FXO port goes directly to the off-hook state and works as a FXS port for the dialing reception (a dial-tone is transmitted). The received digits are processed through the routing table until a match is found. If a match is found, the call is routed to the appropriate subscriber.", - "default": "false", - "datatype": "boolean" - }, - "TimeoutBeforeDialing": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the time in <> between off-hook and the transmission of the first digit for FXO interface.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 60 - } - ], - "unit": "seconds" - }, - "RingingTimeout": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the timeout in <> for incoming call on this FXO port: after receiving a ringing signal, the call is disconnected if no ringing signal is received anymore during this time.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 30 - } - ], - "unit": "seconds" - }, - "RingNumber": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the number of pulses for ringing signal detection on FXO port.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 40 - } - ] - }, - "OnHookMinDuration": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specify the minimum duration in <> of the on-hook state between two successive calls.", - "datatype": "unsignedInt", - "range": [ - { - "min": 20, - "max": 10000 - } - ], - "unit": "milliseconds" - }, - "SignalingMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Signaling mode used for line seizure by the CPE.", - "default": "LoopStart", - "datatype": "string", - "enumerations": [ - "LoopStart", - "GroundStart" - ] - }, - "DTMFDialoutInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time interval in <> between dialing DTMF digits to PSTN. See also <>", - "datatype": "unsignedInt", - "range": [ - { - "min": 20, - "max": 10000 - } - ], - "unit": "milliseconds" - }, - "CallerIdDetectionEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables the detection of CallerId for incoming calls. See also <>.", - "datatype": "boolean" - }, - "Active": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Determines if this physical interface is plugged.", - "datatype": "boolean" - }, - "Device.Services.VoiceService.{i}.POTS.FXO.{i}.DiagTests.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "FXO port tests.", - "access": false, - "array": false, - "DiagnosticsState": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", - "datatype": "DiagnosticsState", - "enumerations": [ - "None", - "Requested", - "Canceled", - "Complete", - "Error" - ] - }, - "TestSelector": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates which test to perform. Enumeration of: Battery, DialTone. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", - "datatype": "string", - "enumerations": [ - "Battery", - "DialTone" - ] - }, - "TestResult": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Result of the selected test. Enumeration of: Success, Failure. The parameter MAY instead indicate a vendor-specific result, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyResult", - "datatype": "string", - "enumerations": [ - "Success", - "Failure" - ] - } - } - }, - "Device.Services.VoiceService.{i}.POTS.FXS.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "FXS physical interfaces table (a voice physical interface as described in <>). Each entry in the table models an analogue physical interface as defined by <>", - "uniqueKeys": [ - "Name", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this FXS interface.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this physical interface.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The textual name of the interface as assigned by the CPE.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "FaxPassThrough": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the support for pass-through of fax data of this interface. Enumeration of: Disable, Auto, Force.", - "datatype": "string", - "enumerations": [ - "Disable", - "Auto", - "Force" - ] - }, - "ModemPassThrough": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the support for pass-through of modem data of this interface. Enumeration of: Disable, Auto, Force.", - "datatype": "string", - "enumerations": [ - "Disable", - "Auto", - "Force" - ] - }, - "DialType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Dial type used on the line.", - "datatype": "string", - "enumerations": [ - "Tone", - "Pulse" - ] - }, - "ClipGeneration": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether the Calling Line identification (CLIP) is enabled.", - "datatype": "boolean" - }, - "ChargingPulse": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether a charging pulse is transmitted on the line.", - "datatype": "boolean" - }, - "Active": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates whether a terminal is plugged on this physical interface.", - "datatype": "boolean" - }, - "TerminalType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the terminal type plugged on this interface to determine the correct signaling to be used to contact the terminal.", - "datatype": "string", - "enumerations": [ - "Audio", - "Fax", - "Modem", - "Any" - ] - }, - "Device.Services.VoiceService.{i}.POTS.FXS.{i}.VoiceProcessing.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Parameters related to voice processing (analogue/digital conversion) capabilities.", - "access": false, - "array": false, - "TransmitGain": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Gain in <> to apply to the transmitted voice signal prior to encoding. This gain is a modifier of the default transmit-gain, which is unspecified.", - "datatype": "int", - "unit": "0.1 dB" - }, - "ReceiveGain": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Gain in <> to apply to the received voice signal after decoding. This gain is a modifier of the default receive-gain, which is unspecified.", - "datatype": "int", - "unit": "0.1 dB" - }, - "EchoCancellationEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable echo cancellation for this line.", - "datatype": "boolean" - }, - "EchoCancellationInUse": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indication of whether or not echo cancellation is currently in use for this line.", - "datatype": "boolean" - }, - "EchoCancellationTail": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Tail length in <> of the echo canceller associated with this line (whether or not it is currently in use).", - "datatype": "unsignedInt", - "unit": "milliseconds" - } - }, - "Device.Services.VoiceService.{i}.POTS.FXS.{i}.DiagTests.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "FXS port tests.", - "access": false, - "array": false, - "DiagnosticsState": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", - "datatype": "DiagnosticsState", - "enumerations": [ - "None", - "Requested", - "Canceled", - "Complete", - "Error" - ] - }, - "TestSelector": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates which GR-909 test to perform.", - "datatype": "string", - "enumerations": [ - "Hazard Potential", - "Foreign Voltage", - "Resistive Faults", - "Off-hook", - "REN" - ] - }, - "TestResult": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Result of the selected test.", - "datatype": "string", - "enumerations": [ - "Success", - "Failure" - ] - } - } - }, - "Device.Services.VoiceService.{i}.POTS.Ringer.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object contains the ring sequences configured for analogue lines.", - "access": false, - "array": false, - "EventNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.POTS.Ringer.Event.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table of events for which a ring pattern is defined. The table is pre-populated with the complete list of events for which the CPE supports definition of ring patterns.", - "uniqueKeys": [ - "Alias", - "Function" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Function": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The event for which the ring pattern is to apply. Enumeration of: Default, CCBSCallBack, CCNRCallBack, InternalCall, RingSplash, Group. The parameter MAY instead indicate a vendor-specific event name, which MUST use the format defined in <>.", - "datatype": "string", - "enumerations": [ - "Default", - "CCBSCallBack", - "CCNRCallBack", - "InternalCall", - "RingSplash", - "Group" - ] - }, - "Cadence": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> The values represent an alternating pattern of times (in <>) when the ringer is ON or OFF. Example: 1000,5000 See also <>.", - "list": { - "datatype": "unsignedInt", - "item": { - "max": 10 - }, - "unit": "milliseconds" - } - } - } - } - }, - "Device.Services.VoiceService.{i}.DECT.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models DECT bases and portables.", - "access": false, - "array": false, - "BaseNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "PortableNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.DECT.Base.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "DECT base table (a voice physical interface as described in <>).", - "uniqueKeys": [ - "RFPI", - "Name", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this base.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this base.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The textual name of the interface as assigned by the CPE.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this interface. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Standard": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The highest DECT protocol version supported by the base.", - "datatype": "string", - "enumerations": [ - "GAP", - "CAT-iq 1.0", - "CAT-iq 2.0", - "CAT-iq 2.1", - "CAT-iq 3.0", - "CAT-iq 4.0" - ] - }, - "RFPI": { - "type": "hexBinary", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The Radio Fixed Part Identity which uniquely identifies the Base. The RFPI is a 40 bits number stored in a hexbinary string. The format of the number is class-dependant and is defined in <>.", - "datatype": "hexBinary", - "range": [ - { - "max": 5 - } - ] - }, - "MaxSupportedPP": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The maximum number of Portable Parts (PP) supported by the DECT base of the CPE.", - "datatype": "unsignedInt" - }, - "PIN": { - "type": "hexBinary", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The PIN is an hexbinary string of 32 bits, as defined in <>.", - "datatype": "hexBinary", - "range": [ - { - "max": 4 - } - ] - }, - "RepeaterSupportEnabled": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, the DECT system supports the REP feature, as defined in <>.", - "datatype": "boolean" - }, - "NEMOEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable NEMO (No Emission Mode as defined in <>) operation of the base. Note: NEMO operations can be successfully enabled only if all PPs registered to the CPE support the NEMO operations.", - "datatype": "boolean" - }, - "SubscriptionEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables the subscription mode of the DECT base. If <>, the subscription window is open, otherwise it is closed. When the subscription window is open, a DECT portable part can be subscribed / registered to the DECT base. When written as <>, it forces the device to open the subscription window. When the subscription window timeslot expires, the value MUST be changed back to <>. If the CPE user can open the subscription window with a specific command (i.e. via DECT base GUI or pushing a button), the parameter MUST report the correct status (<>, while the window is opened).", - "datatype": "boolean" - }, - "CipheringEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable ciphering for the calls on the DECT domain.", - "datatype": "boolean" - }, - "EncryptionType": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Algorithm used in the encryption process defined in <>.", - "datatype": "string", - "enumerations": [ - "DSC", - "DSC2", - "CCM" - ] - }, - "RFPowerControl": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter is used to control the sending RF power as per the required range within the customer premises. When set to Reduced, the CPE SHALL undertake measures to reduce the transmission RF power.", - "datatype": "string", - "enumerations": [ - "Normal", - "Reduced" - ] - }, - "FirmwareVersion": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Firmware version of the base as defined in <>", - "datatype": "string", - "range": [ - { - "max": 20 - } - ] - }, - "EepromVersion": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "EEPROM version of the base as defined in <>", - "datatype": "string", - "range": [ - { - "max": 20 - } - ] - }, - "HardwareVersion": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Hardware version of the base as defined in <>", - "datatype": "string", - "range": [ - { - "max": 20 - } - ] - }, - "Device.Services.VoiceService.{i}.DECT.Base.{i}.Stats.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object is associated with statistics collected from the DECT domain of the CPE. The collected statistics are common for all call scenarios. The CPE MUST reset the DECT bases Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the base becomes operationally down due to a previous administrative down (i.e. the bases <> parameter transitions to a down state after the base is disabled) or when the base becomes administratively up (i.e. the bases <> parameter transitions from <> to <>).", - "access": false, - "array": false, - "Handovers": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The count of all successful handovers.", - "datatype": "unsignedInt" - }, - "HandoverFailures": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The count of all failed handovers.", - "datatype": "unsignedInt" - }, - "ControlFieldErrors": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The count of all bad A-field packets.", - "datatype": "unsignedInt" - }, - "PayloadFieldErrors": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The count of all bad B-field packets.", - "datatype": "unsignedInt" - }, - "SyncFailures": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The count of all synchronization failures during all calls.", - "datatype": "unsignedInt" - } - } - }, - "Device.Services.VoiceService.{i}.DECT.Portable.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "DECT portable table.", - "uniqueKeys": [ - "IPEI", - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this DECT portable.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this DECT portable.", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CodecList": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the portable.", - "list": { - "datatype": "string" - } - }, - "RegistrationStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The current registration status of the DECT portable.", - "datatype": "string", - "enumerations": [ - "In reach", - "Not in reach" - ] - }, - "IPUI": { - "type": "hexBinary", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The International Portable User Identity which uniquely identifies the current user of the portable. The IPUI is composed of the Portable User Type (PUT), of 4 bits, followed by the Portable User Number (PUN) whose size and format depend on PUT (see <>). The hexbinary string is encoded exactly as it is defined in <>) : * Bits from position 0 to 3 represent the PUT (as defined in <>). * Bits from position 4 to <>-1 represent the PUN. * Unused bits after position <>-1 are set to 0. Examples : : - Type N (PUT + IPEI) : :: - PUT = 0000 (4 bits) = 0 (hexadecimal) :: - IPEI = 0000 0000 0000 1100 0000 0000 0000 1000 1001 (36 bits) = 00 0C 00 08 9 (hexadecimal) :: - IPUILength = 4 + 36 = 40 (bits) :: - IPUI = 00 00 C0 00 89 (40 bits; multiple of 8 so no bits are ignored) : - Type O (PUT + binary-coded number) : :: - PUT = 0001 (4 bits) = 1 (hexadecimal) :: - Number (decimal) = 4546812123 :: - Number (binary) = 1000 0111 1000 0001 0110 1100 0110 1101 1 (33 bits) :: - Number (hexadecimal) = 87 81 6C 6D 8 (33 bits; last three bits are ignored) :: - IPUILength = 4 + 33 = 37 (bits) :: - IPUI = 18 78 16 C6 D8 (37 bits; last 3 bits are ignored) : - Type Q (PUT + BCD number) : :: - PUT = 0011 (4 bits) = 3 (hexadecimal) :: - Number (decimal) = 4546812123 :: - Number (BCD) = 0100 0101 0100 0110 1000 0001 0010 0001 0010 0011 (40 bits) :: - IPUILength = 4 + 40 = 44 (bits) :: - IPUI = 34 54 68 12 12 30 (40 bits; last 4 bits are ignored)", - "datatype": "hexBinary", - "range": [ - { - "max": 13 - } - ] - }, - "IPUILength": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The length of <>, in <>.", - "datatype": "unsignedInt", - "unit": "bits" - }, - "IPEI": { - "type": "hexBinary", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The International Portable Equipment Identity which is globally unique and identifies the portable. The IPEI is composed of the Equipment Manufacturers Code (EMC), of 16 bits, followed by the Portable equipment Serial Number (PSN) of 20 bits (see <>). The hexbinary string is encoded as follows : * Bits from position 0 to 15 represent the EMC. * Bits from position 16 to 35 represent the PSN. * The last four bits are unused and are set to 0.", - "datatype": "hexBinary", - "range": [ - { - "max": 5 - } - ] - }, - "PARK": { - "type": "hexBinary", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The Portable Access Rights Key of this portable. The PARK is composed of the Access Rights Class (ARC) of 3 bits and the Access Rights Details (ARD) whose size and format depend on the ARC (see <>). The hexbinary string is encoded as follows : * Bits from position 0 to 2 represent the ARC (as defined in <>). * For class A : ** Bits from position 3 to 35 represent the ARD. ** The last four bits are unused and are set to 0. * For other classes : ** Bits from position 3 to 31 represent the ARD.", - "datatype": "hexBinary", - "range": [ - { - "max": 5 - } - ] - }, - "BaseAttachedTo": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Refers to the <> where this portable part is attached to.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "PortableType": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Protocols used for connection.", - "list": { - "datatype": "string", - "enumerations": [ - "GAP", - "CAT-iq 1.0", - "CAT-iq 2.0", - "CAT-iq 2.1", - "CAT-iq 3.0", - "CAT-iq 4.0" - ] - } - }, - "SubscriptionTime": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The date and time in which the DECT portable has been subscribed with the base. If NTP or equivalent is not available, this parameter, if present, SHOULD be set to the Unknown Time value.", - "datatype": "dateTime" - }, - "Control": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter MAY be used by the ACS to control the registration status of the portable.", - "datatype": "string", - "enumerations": [ - "Unregister", - "Disable" - ] - }, - "HardwareVersion": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the Hardware Version of a DECT portable. Corresponds to the portable HW Version identifier parameter, as defined in <>.", - "datatype": "string", - "range": [ - { - "max": 20 - } - ] - }, - "SoftwareVersion": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the Software Version used by a DECT portable. Maps with the portable SW Version identifier parameter, as defined in <>.", - "datatype": "string", - "range": [ - { - "max": 20 - } - ] - }, - "SoftwareUpgrade": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter indicates support for SUOTA (Software Update Over The Air).", - "datatype": "boolean" - }, - "LastUpdateDateTime": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the last successful SW update of the DECT portable. This is based on the reception of a FACILITY message (being part of the HS version indication procedure) from the portable containing another value of SW version than the current value in this table. This new SW version is then updated in this table.", - "datatype": "dateTime" - }, - "OperatorName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The name of the operator that will be displayed on the portable, if it supports this feature.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.SIP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object is dedicated to SIP as defined in <>. It models SIP networks, clients, proxies and registrars.", - "access": false, - "array": false, - "NetworkNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "ClientNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "ProxyNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "RegistrarNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.SIP.Client.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP client table (a Client as described in <>). Each SIP client maintains its identity-to-location (i.e., RegisterURI-to-ContactURI) binding for SIP signaling exchanged between the client and the network. For CPE use cases where <> is used to map network-facing to user-facing objects, the relationship between the SIP client object and its associated <> object(s) is determined by the <> parameter, as follows: : - In case of RFC3261-style explicit registration of SIP AoRs, only a single line shall be associated with each SIP client. : - In case of RFC6140 or IMS/TISPAN-style registration, multiple lines can be associated with each SIP client. The set of lines associated with a SIP client constitute an identity set. In this case, registering the single SIP client implicitly registers the identities of all associated lines. : - In the case where the client does not register with the network (<> is <>), multiple lines can be associated with each SIP client.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this client.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this client. Unless noted otherwise, the status values apply to both registering and non-registering clients.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Deregistering", - "Error_Misconfigured", - "Error_Network", - "Error_Registration", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which this instance was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "RegisterMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The registration procedures to apply. For <> values other than <>, the SIP <> conveys its RegisterURI-to-ContactURI binding to the network using the SIP registration procedure. For the <> value of <>, the SIP client RegisterURI-to-ContactURI binding is conveyed to the network via some out-of-band mechanism not defined by this data model. This parameter can only be modified if <> is <>.", - "datatype": "string", - "enumerations": [ - "RFC3261", - "STATIC", - "RFC6140", - "TISPAN" - ] - }, - "AuthUserName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Username used to authenticate the connection to the server. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "AuthPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Password used to authenticate the connection to the server. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "Network": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP network with which this SIP client is associated. <> This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across this client. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - }, - "RegisterURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The SIP URI that represents the identity of this SIP client. For <> values where the SIP client registers with the network, this SIP URI is placed in the From and To headers in the REGISTER request. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 389 - } - ] - }, - "E164Format": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "When <> and using a <>, the SIP URIs built from the directory numbers in <.DDIRange>> SHOULD use E.164 format, using the user=phone URI parameter, according to <>.", - "default": "true", - "datatype": "boolean" - }, - "T38Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the use of T.38.", - "datatype": "boolean" - }, - "SIPEventSubscribeNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "ContactNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.SIP.Client.{i}.Contact.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Active registrations for this SIP account.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this <>.", - "default": "false", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this <>.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which this <> was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "IPAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the IP address where the <> is listening for SIP requests from the service provider network. This IP address value is populated in the host portion of the <> parameter. This parameter can only be modified if <> is <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "Port": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the port where the <> is listening for SIP requests from the service provider network. This IP port value is populated in the port portion of the <> parameter. This parameter can only be modified if <> is <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "ContactURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The current Contact URI of the <>. If SIP registration procedures are being used, as determined by the <> parameter, then this parameter is populated in the Contact header field of the REGISTER request. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ExpireTime": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Time when this registration will expire. This parameter is valid only when SIP registration procedures are being used, as determined by the <> parameter. If this registration never expires, this parameter SHOULD be set to the Unknown Time value.", - "datatype": "dateTime" - }, - "PingInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The interval in <> between sending a periodic ping request toward the network (i.e. a SIP OPTIONS ping). The CPE performs the periodic ping request to verify connectivity with the network when SIP registration procedures are not used (i.e. when the SIP client <> is <>). A value of 0 indicates that the CPE should not perform the periodic ping request.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ], - "unit": "seconds" - }, - "UserAgent": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the User-Agent field reported in the SIP header of the REGISTER message.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.SIP.Client.{i}.EventSubscribe.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table of SIP events automatically populated by the CPE with each of the SIP event subscriptions in <.EventSubscribe..>>. This table allows specification of the authentication credentials needed for each event subscription.", - "uniqueKeys": [ - "Alias", - "Event" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Event": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP event name corresponding to the value given in <.EventSubscribe..>>.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "AuthUserName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Username used to authenticate the connection to the event notify server.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "AuthPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Password used to authenticate the connection to the event notify server.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.SIP.Network.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models a SIP network (a network as described in <>). SIP networks are used by SIP <> objects so that common parameters do not have to be provisioned multiple times.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this <>. Starts the DNS resolving when enabled.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this network.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Resolving", - "Error_DNS", - "Error_Other", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "ProxyServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of the SIP proxy server. If not <>, all SIP signaling traffic MUST be sent to the host indicated by this parameter and the port indicated by <> unless <> is not <> or a different route was discovered during normal SIP routing operations. Regardless of which host the traffic gets sent to (<> or <>), the value of this parameter (unless <>) MUST be used to derive the URI placed into the SIP Route header field of all requests originated by this end-point, unless a different proxy host was discovered dynamically during normal SIP routing operations.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ProxyServerPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting to the SIP proxy server.", - "default": "5060", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "ProxyServerTransport": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Transport protocol to be used in connecting to the SIP proxy server.", - "default": "UDP", - "datatype": "string", - "enumerations": [ - "UDP", - "TCP", - "TLS", - "SCTP" - ] - }, - "RegistrarServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of the SIP registrar server. If this parameter is <>, the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "RegistrarServerPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting to the SIP registrar server. If <> is empty the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", - "default": "5060", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "RegistrarServerTransport": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Transport protocol to be used in connecting to the registrar server. Enumeration of: UDP, TCP, TLS, SCTP. If <> is empty the CPE MUST obtain all of the registrar server configuration information, including host name or IP address, port, and transport protocol, from the values in <>, <>, and <>.", - "default": "UDP", - "datatype": "string", - "enumerations": [ - "UDP", - "TCP", - "TLS", - "SCTP" - ] - }, - "ServerDomain": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If non-empty this <> is used by the devices in a DNS SRV request to provide FQDNs <.>> for SIP Server connections. <> Clients ask for a specific service/protocol for a specific domain (the word domain is used here in the strict RFC 1034 sense), and get back the names of any available servers.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ChosenDomain": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Domain used by <> objects that reference this <> instance.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ChosenIPAddress": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "IP address used to reach the <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "ChosenPort": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Port used to reach the <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "UserAgentDomain": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "CPE domain string. If <>, the CPE SHOULD use its IP address as the domain.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "UserAgentPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Port used for incoming call control signaling.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "UserAgentTransport": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Transport protocol to be used for incoming call control signaling.", - "default": "UDP", - "datatype": "string", - "enumerations": [ - "UDP", - "TCP", - "TLS", - "SCTP" - ] - }, - "OutboundProxy": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The Fully Qualified Domain Name (FQDN) or IP Address of the outbound proxy. If the value is not <>, the SIP endpoint MUST send all SIP traffic (requests and responses) to the host indicated by this parameter and the port indicated by <>. This MUST be done regardless of the routes discovered using normal SIP operations, including use of Route headers initialized from Service-Route and Record-Route headers previously received. <> is NOT used to generate the URI placed into the Route header of any requests. When <> is assigned, the name is looked up (resolved) and the corresponding address is set in <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "OutboundProxyResolvedAddress": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The IP address of the outbound proxy. This parameter can be assigned statically (e.g. present in the factory default configuration or set by the ACS via <>) or assigned dynamically (via DHCP). When <> is assigned, the name is looked up (resolved) and the corresponding address is set in <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "OutboundProxyPrecedence": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates whether it is the static configuration or the DHCP configuration that is actually used for <>.", - "datatype": "string", - "enumerations": [ - "Static", - "DHCP" - ] - }, - "OutboundProxyPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting to the outbound proxy. This parameter MUST be ignored unless the value of <> is non-empty.", - "default": "5060", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "STUNEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", - "default": "false", - "datatype": "boolean" - }, - "STUNServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Domain name or IP address of the STUN server.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NonVoiceBandwidthReservedUpstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "NonVoiceBandwidthReservedDownstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "Organization": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Text string to be used in the Organization header.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "RegistrationPeriod": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Duration, in <>, after which the user agent needs to register again.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "seconds" - }, - "Realm": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Realm for authentication with the specified values of <.AuthUserName>> and <.AuthPassword>>.", - "datatype": "string" - }, - "TimerT1": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer T1, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerT2": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer T2, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerT4": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer T4, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerA": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer A, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerB": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer B, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerC": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer C, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerD": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer D, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerE": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer E, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerF": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer F, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerG": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer G, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerH": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer H, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerI": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer I, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerJ": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer J, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "TimerK": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Value of SIP timer K, in <>, as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "InviteExpires": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Invite request Expires header value, in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "seconds" - }, - "ReInviteExpires": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Re-invite request Expires header value, in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "seconds" - }, - "RegisterExpires": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Register request Expires header value, in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "seconds" - }, - "RegisterRetryInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Register retry interval, in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "seconds" - }, - "InboundAuth": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Applicable inbound authentication method, if any.", - "default": "None", - "datatype": "string", - "enumerations": [ - "None", - "Digest", - "SourceFilter" - ] - }, - "InboundAuthUsername": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If inbound authentication is used, the username credentials.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "InboundAuthPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If inbound authentication is used, the password credentials.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "UseCodecPriorityInSDPResponse": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "When <>, in the SDP included in an OK response to an Invite, the first listed codec MUST be the highest priority codec among those offered in the Invite, based on the priorities specified in <>. The list of codecs in the SDP MAY also include other lower priority codecs. When <>, there is no specific requirement for choosing the codecs listed in the SDP included in an OK response.", - "default": "false", - "datatype": "boolean" - }, - "DSCPMark": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Diffserv code point to be used for outgoing SIP signaling packets.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 63 - } - ] - }, - "VLANIDMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VLAN ID (as defined in <>) to be used for outgoing SIP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "EthernetPriorityMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Ethernet priority code (as defined in <>) to be used for outgoing SIP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "ConferenceCallDomainURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "URI of the network conference bridge for the multiway conference call service.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "TimerLoginRejected": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "In case of a 401 (Unauthorized) or a 407 (Proxy Authentication Required) response to a REGISTER request, the CPE shall send REGISTER using credentials. If the second response is a new 401 (Unauthorized) or a 407 (Proxy Authentication Required) with stale=false or no stale value, the CPE shall re-init registration cycle after expiration of this timer (in <>). If stale=true, the CPE shall send REGISTER using credentials.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "NoLoginRetry": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, no retry after a 401 (Unauthorized) or a 407 (Proxy Authentication Required) response to a REGISTER until power cycle or credentials have been changed.", - "datatype": "boolean" - }, - "TimerRegistrationFailed": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "In case of no response to a REGISTER request, the CPE shall retry according to retransmission algorithm defined in <>, then wait for expiration of this timer (in <>). In case of other response, the CPE shall wait for expiration of this timer before sending a new REGISTER request.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "TimerSubscriptionFailed": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "When starting a MWI subscription, on response of a SUBSCRIBE request : in case of no response or other response than 200 or 423, the CPE shall retry according to retransmission algorithm defined in <>, then wait for expiration of this timer (in <>) before sending a new SUBSCRIBE request.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "UnansweredRegistrationAttempts": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The number of registration timeouts when trying to register the server.", - "datatype": "unsignedInt" - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile to use with this <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CodecList": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", - "list": { - "datatype": "string" - } - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - }, - "FQDNServerNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "EventSubscribeNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "ResponseMapNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 999 - } - ] - }, - "Device.Services.VoiceService.{i}.SIP.Network.{i}.FQDNServer.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table of Fully Qualified Domain Names for this <> instance in order to connect to the SIP server as described in <>.", - "uniqueKeys": [ - "Alias", - "Domain" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this FQDN server.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the FQDN server was assigned.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "Domain": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The domain name of the target host. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Weight": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A server selection mechanism. The weight field specifies a relative weight for entries with the same priority. Larger weights SHOULD be given a proportionately higher probability of being selected. This parameter can only be modified if <> is <>.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "Priority": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The priority of this target host. A client MUST attempt to contact the target host with the lowest-numbered priority it can reach; target hosts with the same priority SHOULD be tried in an order defined by the weight field. This parameter can only be modified if <> is <>.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "Port": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The port on this target host of this service.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "IPAddresses": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> The order in which the addresses appear in the list MAY imply priority. This parameter MAY be modified by the ACS only if <> is <>.", - "list": { - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.SIP.Network.{i}.EventSubscribe.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table to specify the SIP events to which the CPE MUST subscribe.", - "uniqueKeys": [ - "Alias", - "Event" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Event": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP event name to appear in the EVENT header of the SIP SUBSCRIBE request.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Notifier": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of the event notify server.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NotifierPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting to the event notifier.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "NotifierTransport": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Transport protocol to be used in connecting to the event notifier.", - "default": "UDP", - "datatype": "string", - "enumerations": [ - "UDP", - "TCP", - "TLS", - "SCTP" - ] - }, - "ExpireTime": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Subscription refresh timer, in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.SIP.Network.{i}.ResponseMap.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table specifies the tone and message to be provided to the user for a particular SIP response received (normally 4xx and 5xx).", - "uniqueKeys": [ - "Alias", - "SIPResponseNumber" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "SIPResponseNumber": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The SIP response code number.", - "datatype": "unsignedInt", - "range": [ - { - "min": 101, - "max": 999 - } - ] - }, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "TextMessage": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The message to be provided on the screen or display of the VoIP device when the SIP response is received. If this parameter is not <>, display of this text preempts the value of <.ToneText>> associated with <>. If this parameter is <>, the value of <.ToneText>> associated with <>, if any, is displayed instead. This parameter is applicable only for VoIP devices capable of text display.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "Tone": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The tone to be played to the user when the SIP response is received. <> <> indicates no tone is to be played for this event.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.SIP.Proxy.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Global SIP parameters used by the CPE when acting as proxy for SIP user agents.", - "uniqueKeys": [ - "Alias", - "ProxyIPAddress", - "ProxyPort" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the proxy.", - "default": "false", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this proxy.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the IP address was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "ProxyIPAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The IP address the proxy listens on. This parameter can only be modified if <> is <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "ProxyPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The port the proxy listens on.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "ContactURI": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Built by the CPE using <> and <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile to use with this proxy. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Global SIP parameters used by the CPE when acting as registrar server for externally connected SIP user agents. This object also contains the global SIP parameters used by the CPE when it acts as static identity-to-location binding database for externally connected SIP user agents that dont register (i.e. static-mode SIP-PBX).", - "uniqueKeys": [ - "Alias", - "RegistrarPort", - "RegistrarIPAddress" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the registrar.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this registrar.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the IP address was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "RegistrarIPAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The IP address the registrar listens on for incoming SIP requests from an externally connected SIP user agent. This parameter can only be modified if <> is <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "RegistrarPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The port the registrar listens on.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "RegisterExpires": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The minimum register expire time in <>. This parameter is valid only for SIP user agents that support registration.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "PingInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The interval in <> between sending a periodic ping request (e.g., a SIP OPTIONS ping) to externally connected SIP user agents. The CPE performs the periodic ping request to verify connectivity with externally connected devices that do not support SIP registration procedures (i.e. a static-mode SIP-PBX). A value of 0 indicates that the CPE should not perform the periodic ping request.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ], - "unit": "seconds" - }, - "Organization": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Text string to be used in the Organization header.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Realm": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Realm for authentication with the specified values of <.AuthUserName>> and <.AuthPassword>>.", - "datatype": "string" - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile to use with this registrar. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ContactURI": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Built by the CPE using <> and <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "AccountNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.Account.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP account table.", - "uniqueKeys": [ - "URI", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this account, or places it into a quiescent state. Enumeration of: Enable, Quiescent, Disable. In the <> state, in-progress sessions remain intact, but no new sessions are allowed. If this parameter is set to <> in a CPE that does not support the <> state, it MUST treat it the same as the <> state (and indicate <> in <>).", - "default": "Disable", - "datatype": "string", - "enumerations": [ - "Enable", - "Quiescent", - "Disable" - ] - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this account. Unless noted otherwise, the <> values apply to both registering and non-registering external SIP user agents.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Deregistering", - "ErrorMisconfigured", - "ErrorNetwork", - "ErrorRegistration", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the <> was created. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "CallStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the call status for this account.", - "datatype": "string", - "enumerations": [ - "Idle", - "Dialing", - "Delivered", - "Connected", - "Alerting", - "Disconnected" - ] - }, - "AuthUserName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Username used to authenticate the connection to the registrar server. This parameter can only be modified if <> is Static.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "AuthPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Password used to authenticate the connection to the registrar server. This parameter can only be modified if <> is Static.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "RegistrationStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The current registration status of the externally connected SIP user agent. This parameter is valid only for SIP user agents that support registration.", - "datatype": "string", - "enumerations": [ - "Registered", - "Unregistered" - ] - }, - "URI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The URI (AoR) of the externally connected SIP user agent. For SIP user agents that register, this is the URI that is contained in the To header field of the incoming REGISTER request. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 389 - } - ] - }, - "Domain": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The domain name used when the SIP user agent has registered itself. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CodecList": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", - "list": { - "datatype": "string" - } - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Voice profile to use with this <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ContactNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.SIP.Registrar.{i}.Account.{i}.Contact.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Active registrations for this SIP account.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this entry.", - "default": "false", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this entry.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the <> was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "IPAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "IP Address of the externally connected SIP user agent. This is the IP address contained in the <> parameter. This parameter can only be modified if <> is <>.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "Port": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The port of the externally connected SIP user agent. This is the port contained in the <> parameter. This parameter can only be modified if <> is <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "ContactURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the SIP signaling address of the externally connected SIP user agent. If the SIP user agent registers, then <> is the Contact URI contained in the Contact header field of the REGISTER request received from the SIP user agent. If the SIP user agent does not register, then the <> is provisioned by the ACS. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ExpireTime": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Time when this registration will expire. This parameter is valid only for external SIP user agents that register. If this registration never expires, this parameter SHOULD be set to the Unknown Time value.", - "datatype": "dateTime" - }, - "UserAgent": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter defines the User-Agent header that will be used by the SIP messages send by this user agent. Implementers SHOULD make the User-Agent header field a configurable option.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - } - } - } - } - }, - "Device.Services.VoiceService.{i}.MGCP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object is dedicated to MGCP as defined in <>. It models MGCP clients and networks.", - "access": false, - "array": false, - "ClientNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "NetworkNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.MGCP.Client.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "MGCP client table (a client as described in <>). Each MGCP client maintains a registration for the MGCP identities of the associated line with the <>.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this client.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this client.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Deregistering", - "Error_Misconfigured", - "Error_Network", - "Error_Registration", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "RegisterMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Register mode.", - "default": "Wildcard", - "datatype": "string", - "enumerations": [ - "Wildcard", - "Individual" - ] - }, - "LocalPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Port listening for incoming call control signaling.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "Domain": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "CPE domain string. If <>, the CPE SHOULD use its IP address.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "User": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "User string used in accessing the call agent.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "Network": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "MGCP network with which this MGCP client is associated. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.MGCP.Network.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models a MGCP network (a network as described in <>).", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the <>. Starts the DNS resolving when enabled.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this <>.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Resolving", - "Error_DNS", - "Error_Other", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallAgent1": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of the main MGCP call agent.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CallAgentPort1": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting with the main MGCP call agent.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "CallAgent2": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of the backup MGCP call agent.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CallAgentPort2": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting with the backup MGCP call agent.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "RetranIntervalTimer": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Message retransfer interval, in <>.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ], - "unit": "seconds" - }, - "MaxRetranCount": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Max number of message retransfers.", - "default": "10", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "DSCPMark": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Diffserv code point to be used for outgoing MGCP signaling packets.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 63 - } - ] - }, - "VLANIDMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VLAN ID (as defined in <>) to be used for outgoing MGCP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "EthernetPriorityMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Ethernet priority code (as defined in <>) to be used for outgoing MGCP signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> are greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "AllowPiggybackEvents": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates whether or not piggyback events are allowed to the MGCP call agent.", - "datatype": "boolean" - }, - "SendRSIPImmediately": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates whether or not to send RSIP immediately on restart.", - "datatype": "boolean" - }, - "STUNEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", - "default": "false", - "datatype": "boolean" - }, - "STUNServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Domain name or IP address of the STUN server.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NonVoiceBandwidthReservedUpstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "NonVoiceBandwidthReservedDownstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile to use with this network. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CodecList": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", - "list": { - "datatype": "string" - } - } - } - }, - "Device.Services.VoiceService.{i}.H323.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object is dedicated to H.323 as defined in <>. It models H.323 clients and networks.", - "access": false, - "array": false, - "ClientNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "NetworkNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.H323.Client.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "H.323 client table (a client as described in <>). Each H.323 client maintains a registration for the H.323 identities of the associated line with the <>.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this client.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this client.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Deregistering", - "Error_Misconfigured", - "Error_Network", - "Error_Registration", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "H235Authentication": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables usage of H.235 security baseline security profile as defined in <>.", - "default": "false", - "datatype": "boolean" - }, - "AuthPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Password to be used when H.235 is enabled.", - "datatype": "string" - }, - "SendersID": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "In ITU-T based H.235 authentication, the sendersID is the ID of the gateway as received from the Gatekeeper. As long as the endpointID is not received from the Gatekeeper, the sendersID will be applied as configured here. The generalID is the GatekeeperID.", - "datatype": "string" - }, - "Network": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "H.323 network with which this H.323 client is associated. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "H323ID": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The H.323 ID assigned to the client.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.H323.Network.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models a H.323 network (a network as described in <>).", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this <>. Starts the DNS resolving when enabled.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this network.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Resolving", - "Error_DNS", - "Error_Other", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Gatekeeper": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Host name or IP address of H.323 Gatekeeper.", - "datatype": "string" - }, - "GatekeeperPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination port to be used in connecting to the H.323 Gatekeeper.", - "default": "1719", - "datatype": "unsignedInt" - }, - "GatekeeperID": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Gatekeeper ID.", - "datatype": "string" - }, - "TimeToLive": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the TimeToLive specification in the registration with the Gatekeeper in <>.", - "default": "86400", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "DSCPMark": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Diffserv code point to be used for outgoing H.323 signaling packets.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 63 - } - ] - }, - "VLANIDMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VLAN ID (as defined in <>) to be used for outgoing H.323 signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "EthernetPriorityMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Ethernet priority code (as defined in <>) to be used for outgoing H.323 signaling packets for this network. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "STUNEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable use of STUN to allow operation through NAT. Note: enabling STUN is to be interpreted as enabling the use of STUN for discovery, not use as a keep-alive mechanism.", - "default": "false", - "datatype": "boolean" - }, - "STUNServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Domain name or IP address of the STUN server.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NonVoiceBandwidthReservedUpstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of upstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "NonVoiceBandwidthReservedDownstream": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For bandwidth-based admission control, a session can proceed only if there is <> <> of downstream bandwidth left available for non-voice traffic. This parameter is appropriate only in implementations in which the actual bandwidth can be known, such as a VoIP device embedded in a DSL B-NT.", - "default": "0", - "datatype": "unsignedInt", - "unit": "bits per second" - }, - "MaxSessions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Limit on the number of simultaneous voice sessions across all <> referencing this <>. This MUST be less than or equal to <>. A value of zero indicates no explicit limit on the number of sessions.", - "default": "0", - "datatype": "unsignedInt" - }, - "VoIPProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile to use with this network. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CodecList": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> The CPE SHOULD use the first enabled item in the list among those supported by the remote endpoint and consistent with the available bandwidth.", - "list": { - "datatype": "string" - } - } - } - }, - "Device.Services.VoiceService.{i}.Trunk.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Trunk table. The <> holds all parameters a CPE needs to set up a trunk connection with an NGN, as defined in <>.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this trunk.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this trunk.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Unregistering", - "Error", - "Testing", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the <> was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "Name": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Name of the trunk.", - "datatype": "string", - "range": [ - { - "max": 16 - } - ] - }, - "DDIRange": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each range consists of a Start part consisting of 1 to n digits (string representation) followed by an OPTIONAL End part consisting of 1 to n digits prefixed by a - symbol. Examples: :0123456789 :0123456700-0123456720 Each time this value is changed, the table of Lines managed by the <> is automatically adapted and each value of the <> MUST be represented in corresponding <.DirectoryNumber>> parameter. If this trunk has a <> provider and <.E164Format>> is set to <>, full E.164 numbers with country code (but without + prefix) MUST be used. This parameter can only be modified if <> is <>.", - "list": { - "datatype": "string" - } - }, - "LineObjectCreation": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "When <>, a <.>> instance SHOULD be created automatically for each identity within the ranges specified by <>.", - "datatype": "boolean" - }, - "MaxChannels": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the maximum number of simultaneous communication channels handled by this trunk. A channel is used to convey an information signal, for example a digital bit stream, from one or several senders to one or several receivers.", - "datatype": "unsignedInt" - }, - "MaxOutboundChannelCount": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximal number of simultaneous communication channels in outbound direction supported across this trunk. The maximum number cannot exceed <> - <>. A value n>0 means, that there are no more than n channels allowed, which are used by outbound calls. A value of -1 means that there are no restrictions in this direction.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "MaxInboundChannelCount": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximal number of simultaneous communication channels in inbound direction supported across this trunk. The maximum number cannot exceed <> - <>. A value n>0 means, that there are no more than n channels allowed, which are used by inbound calls. A value of -1 means that there are no restrictions in this direction.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "CodecPriority": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> option controls which end of an inbound call leg will have priority over the negotiation of codecs.", - "datatype": "string", - "enumerations": [ - "Local", - "Remote" - ] - }, - "Provider": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP client or ISDN interface associated with the identities represented by this trunk. <> This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Call control and call routing parameters. This object is a control plane application for the VoiceService that provides numbers or names based routing, local PBX functionalities and advanced telephony features. It is mutually exclusive with the <> table which is used in case of switching capabilities.", - "access": false, - "array": false, - "MaxNumberOfLines": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of <.>> in <>. This value cannot be greater than <>.", - "datatype": "unsignedInt" - }, - "MaxNumberOfExtensions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum number of <.>> in <>. This value cannot be greater than <>.", - "datatype": "unsignedInt" - }, - "LineNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "ExtensionNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "MailboxNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "IncomingMapNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "OutgoingMapNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "NumberingPlanNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "GroupNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Voice line table. Support for adding and removing lines is conditional on whether the CPE supports more than one line in total as indicated by <>.", - "uniqueKeys": [ - "DirectoryNumber", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this line.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this line.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Testing", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the call status for this line.", - "datatype": "string", - "enumerations": [ - "Idle", - "Dialing", - "Delivered", - "Connected", - "Alerting", - "Disconnected" - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the <> instance was created.", - "datatype": "string", - "enumerations": [ - "Static", - "DDIRange" - ] - }, - "DirectoryNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Directory number associated with this line.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Provider": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Provider for the line. The value MUST be the path name of a row in one of the following tables: <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CallingFeatures": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Set of calling features to apply to this line. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for this <> instance. The CPE MUST reset the lines Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the line becomes operationally down due to a previous administrative down (i.e. the lines <> parameter transitions to a down state after the line is disabled) or when the line becomes administratively up (i.e. the lines <> parameter transitions from <> to <>).", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.IncomingCalls.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for incoming calls.", - "access": false, - "array": false, - "CallsReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of received calls to the line.", - "datatype": "unsignedInt" - }, - "CallsConnected": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that successfully completed call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsFailed": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that failed to successfully complete call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsDropped": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", - "datatype": "unsignedInt" - }, - "TotalCallTime": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Cumulative call duration in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.OutgoingCalls.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for outgoing calls.", - "access": false, - "array": false, - "CallsAttempted": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of outgoing calls attempted from the line.", - "datatype": "unsignedInt" - }, - "CallsConnected": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that successfully completed call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsFailed": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that failed to successfully complete call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsDropped": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", - "datatype": "unsignedInt" - }, - "TotalCallTime": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Cumulative call duration in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.RTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "RTP statistic parameters.", - "access": false, - "array": false, - "PacketsReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets received.", - "datatype": "unsignedInt" - }, - "PacketsSent": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets sent.", - "datatype": "unsignedInt" - }, - "PacketsLost": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been lost.", - "datatype": "unsignedInt" - }, - "BytesSent": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes sent.", - "datatype": "unsignedInt" - }, - "BytesReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes received.", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Line.{i}.Stats.DSP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "DSP statistic parameters.", - "access": false, - "array": false, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has overrun.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has underrun.", - "datatype": "unsignedInt" - } - } - } - }, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Extension table containing the local numbers and names. Support for adding and removing extensions is conditional on whether the CPE supports more than one line in total as indicated by <>.", - "uniqueKeys": [ - "ExtensionNumber", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this extension.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this extension.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Error", - "Testing", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the call status for this extension.", - "datatype": "string", - "enumerations": [ - "Idle", - "Dialing", - "Delivered", - "Connected", - "Alerting", - "Disconnected" - ] - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which the <> object was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "Name": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The name of this extension. This name will also be used for CallerIdName functionality and for displaying on screen of handset, etc...", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ExtensionNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The number assigned to this extension for internal calls.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Provider": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Provider for the extension. The value MUST be the path name of a row in one of the following tables: <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NumberingPlan": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Numbering plan to be used for outgoing calls. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CallingFeatures": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Set of calling features to apply to this extension. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CallWaitingStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Status of endpoint managed call waiting, if supported. Enumeration of: Disabled, Idle, SecondaryRinging, SecondaryConnecting, SecondaryConnected. This parameter SHOULD NOT be present if the CPE does not support endpoint managed call waiting.", - "datatype": "string", - "enumerations": [ - "Disabled", - "Idle", - "SecondaryRinging", - "SecondaryConnecting", - "SecondaryConnected" - ] - }, - "ConferenceCallingStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Status of endpoint managed conference calling, if supported. Enumeration of: Disabled, Idle, SecondaryCalling, SecondaryConnecting, SecondaryConnected, InConferenceCall. This parameter SHOULD NOT be present if the CPE does not support endpoint managed conference calling.", - "datatype": "string", - "enumerations": [ - "Disabled", - "Idle", - "SecondaryCalling", - "SecondaryConnecting", - "SecondaryConnected", - "InConferenceCall" - ] - }, - "ConferenceCallingSessionCount": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Number of active sessions on this extension. : 0 indicates no call is in progress. : 1 indicates a single call is in progress. : Higher values indicate a conference call is in progress. This parameter SHOULD NOT be present if the CPE does not support endpoint managed conference calling.", - "datatype": "unsignedInt" - }, - "VoiceMail": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Voice mail to use when the <> is not responding. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for this extension. The CPE MUST reset the extensions Stats parameters (unless otherwise stated in individual object or parameter descriptions) either when the extension becomes operationally down due to a previous administrative down (i.e. the extensions <> parameter transitions to a down state after the extension is disabled) or when the extension becomes administratively up (i.e. the extensions <> parameter transitions from <> to <>).", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.IncomingCalls.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for incoming calls.", - "access": false, - "array": false, - "CallsReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of received calls to the extension.", - "datatype": "unsignedInt" - }, - "CallsConnected": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that successfully completed call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsFailed": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that failed to successfully complete call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsDropped": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", - "datatype": "unsignedInt" - }, - "TotalCallTime": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Cumulative call duration in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.OutgoingCalls.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Statistics for outgoing calls.", - "access": false, - "array": false, - "CallsAttempted": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of outgoing calls attempted from the extension.", - "datatype": "unsignedInt" - }, - "CallsConnected": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that successfully completed call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsFailed": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of calls that failed to successfully complete call setup signaling.", - "datatype": "unsignedInt" - }, - "CallsDropped": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total calls that were successfully connected, but dropped unexpectedly while in progress without explicit user termination.", - "datatype": "unsignedInt" - }, - "TotalCallTime": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Cumulative call duration in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.RTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "RTP statistic parameters.", - "access": false, - "array": false, - "PacketsReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets received.", - "datatype": "unsignedInt" - }, - "PacketsSent": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets sent.", - "datatype": "unsignedInt" - }, - "PacketsLost": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been lost.", - "datatype": "unsignedInt" - }, - "BytesSent": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes sent.", - "datatype": "unsignedInt" - }, - "BytesReceived": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes received.", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Extension.{i}.Stats.DSP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "DSP statistic parameters.", - "access": false, - "array": false, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has overrun.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has underrun.", - "datatype": "unsignedInt" - } - } - } - }, - "Device.Services.VoiceService.{i}.CallControl.Group.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models an extension as a group of extensions.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Extensions": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> If this parameter is null the group is treated as a group that contains all extensions. <>", - "list": { - "datatype": "string" - } - }, - "RingType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the way of ringing for the extensions in this group. Enumeration of: Simultaneous, Hierarchical, Cyclic.", - "datatype": "string", - "enumerations": [ - "Simultaneous", - "Hierarchical", - "Cyclic" - ] - }, - "RingTimeout": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time (in <>) to wait for extension reply before trying the next extension. Only applicable if <> = <> or <>.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.Mailbox.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Voice mail configuration related to a particular extension.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "MaxMsg": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This limits the number of messages in a voicemail folder.", - "datatype": "unsignedInt" - }, - "MaxMessageTime": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the maximum amount of time in <> of an incoming message. Use this when there are many users and disk space is limited. A value of 0 means there will be no maximum time limit enforced.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "MinSize": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Minimal size in <> of the voicemail box.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "SMTPServerAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SMTP server FQDN or IP Address used for voicemail notifications.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SMTPServerPort": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SMTP server port for voicemail notifications.", - "default": "25", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "SMTPUser": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SMTP user name.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SMTPPassword": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SMTP password.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SMTPAuthenticationType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Type of authentication used to connect to the SMTP server.", - "default": "None", - "datatype": "string", - "enumerations": [ - "None", - "SSL", - "TLS", - "Auto" - ] - }, - "SMTPFrom": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Senders email address.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.IncomingMap.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> is a table that is used to control which extensions ring when an incoming call is received. The map approach separates the call routing aspects from the configuration of the lines and extensions. It support PBX concepts such as DDI (one extension per line) and groups (parallel dialing if extensions have same priority and hunting when extensions have different priority).", - "uniqueKeys": [ - "Line", - "Extension", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Line": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> used by the call. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Extension": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> that rings on incoming call. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Order": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the order in which extensions ring. First all extensions with the lowest order value will ring. When all these extensions have rejected the call or did not reply, the next order value will be attempted.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ] - }, - "Timeout": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time in <> the extension will ring before it is considered that there was no reply.", - "datatype": "unsignedInt", - "unit": "seconds" - } - }, - "Device.Services.VoiceService.{i}.CallControl.OutgoingMap.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> is a table that is used to control which line is used when an extension makes a call.", - "uniqueKeys": [ - "Extension", - "Line", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CLIPNoScreeningNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Public number to be presented outgoing calls, instead of the effective extension number.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Extension": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> which makes the outgoing call. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Line": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Identifies the <> to be used for outgoing calls. When applicable in the signaling protocol the DirectoryNumber will be used as source number for this call. Note: The Line to be used for an outgoing call can be overridden by the <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Order": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The order in which using the lines is attempted. This is used to implement a backup mechanism. If the first line is not available, using the next one will be attempted.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.NumberingPlan.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Information related the numbering plan. <> is applicable only if the device supports a dialing mechanism for which a number plan is needed (for example, some devices with an explicit Dial button do not need to be aware of the dialing plan) and if the device does not already support a numbering plan mechanism for this call control (e.g., in-band via MGCP).", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "MinimumNumberOfDigits": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the minimum number of digits to be collected before an outgoing request (e.g., a SIP INVITE) can be initiated. If End of Dialing (as defined in <>) occurs before the minimum number of digits has been reached then the number will be considered incomplete and no request will be initiated. In practice, searching <.PrefixInfo..>> commences only once <> digits has been received.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 32 - } - ] - }, - "MaximumNumberOfDigits": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "When this number of digits has been collected, an outgoing request (e.g., a SIP INVITE) MUST be initiated. Any additional dialed digits will be ignored. This parameter is only used in the case that no match in <.PrefixInfo..>> has been found.", - "default": "15", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 32 - } - ] - }, - "InterDigitTimerStd": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This timer is the maximum allowable time (expressed in <>) between the dialing of digits. This timer is restarted every time a digit is dialed. Expiration of this timer indicates End of Dialing.", - "default": "15000", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 50000 - } - ], - "unit": "milliseconds" - }, - "InterDigitTimerOpen": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This timer is the maximum allowable time (expressed in <>) between the dialing of digits once the minimum number of digits defined on a prefix based has been reached. This timer is only applicable to open numbering, where the exact number of digits for a prefix is not known.", - "default": "3000", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 50000 - } - ], - "unit": "milliseconds" - }, - "TerminationDigit": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Digit that can be used by the subscriber to indicate that dialing has completed.", - "default": "#", - "datatype": "string", - "range": [ - { - "max": 1 - } - ] - }, - "InvalidNumberTone": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The tone that tells the user when the number dialed is determined to be invalid. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "PrefixInfoMaxEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the maximum number of instances of <.PrefixInfo..>> that can be supported.", - "datatype": "unsignedInt" - }, - "PrefixInfoNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the number of instances of <.PrefixInfo..>>.", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.CallControl.NumberingPlan.{i}.PrefixInfo.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table contains information related to an individual prefix in the NumberingPlan. It is anticipated that once the minimum number of digits has been received, the VoIP device will search this prefix list every time a new digit is received. If no new entry is found, then the object that was previously found will be used instead. If supported, <.PrefixInfoMaxEntries>> and <.PrefixInfoNumberOfEntries>> MUST be present. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "PrefixRange": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is a string representation of a range of prefixes. Each prefix consists of a From part consisting of 1 to n digits (string representation) followed by an OPTIONAL To part consisting of exactly one digit prefixed by a - symbol. All characters in the From and To parts of the prefix range MUST be 0-9, * or #. A further constraint is that the To digit MUST always be numerically greater than the last digit of the From part. Examples: : 02 : 031-5 : 032 : 0325 : *#34 : #22", - "datatype": "string", - "range": [ - { - "max": 42 - } - ] - }, - "PrefixMinNumberOfDigits": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the minimum number of allowable digits for the prefix range. Once the minimum number of digits has been reached, <> will be used instead of <>. If the minimum number of digits has been reached and the inter-digit timer expires, an outgoing request is initiated.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 40 - } - ] - }, - "PrefixMaxNumberOfDigits": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the maximum number of allowable digits for the prefix range. Once the number of digits received reaches this value an outgoing request is initiated.", - "default": "1", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 40 - } - ] - }, - "NumberOfDigitsToRemove": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If this parameter has a non-zero value, the specified number of digits will be removed from the internal digit buffer (which contains the dialed digits) from the position specified by <>. Subsequently a search of <> for a matching prefix using the modified number is performed. Note that this parameter does not have any impact on the number sent in the outgoing request: it is used only for searching within the Numbering Plan. This parameter has no effect if it is set to 0. This parameter is provided to handle Carrier override and other codes used as prefix to standard numbers and to ensure that the correct End of Dialing can be specified without significant data duplication.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 40 - } - ] - }, - "PosOfDigitsToRemove": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter is used in conjunction with <>. It specifies the position within the internal digit buffer from which the digits are to be removed.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 40 - } - ] - }, - "DialTone": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The tone to be played by the VoIP device when the user has dialed exactly the same digits as defined in the prefix. The VoIP device will cease playing the tone once an additional digit has been dialed. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "FacilityAction": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is a string representing a Facility Action implemented by the VoIP device. The parameter MAY instead indicate a vendor-specific Facility Action, which MUST use the format defined in <>. When <> or the value is an unrecognized string (i.e. a Facility Action not supported by the CPE) normal outgoing requests are made.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "FacilityActionArgument": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Optional argument associated with <>. The interpretation of the argument is dependent on a specific value of <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models the calling features that can be apply on <> or <>.", - "access": false, - "array": false, - "SetNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models a set of calling features that can be applied in <> or <> objects.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallerIDEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the transmission of caller ID information on incoming calls (CLIP).", - "datatype": "boolean" - }, - "CallerIDNameEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the transmission of caller ID name information on incoming calls (CNIP).", - "datatype": "boolean" - }, - "CallWaitingEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables call waiting in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint managed call waiting.", - "datatype": "boolean" - }, - "CallForwardUnconditionalEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables unconditional call forwarding by the endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "boolean" - }, - "CallForwardUnconditionalNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Directory number to which all incoming calls to this line are forwarded when <> is <>. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "CallForwardOnBusyEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables call forwarding-on-busy by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "boolean" - }, - "CallForwardOnBusyNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Directory number to which all incoming calls to this line are forwarded when <> is <> and the line is busy. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "CallForwardOnBusyRingTimeout": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Delay in <> before considering there is no answer for call forwarding-on-busy. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "CallForwardOnNoAnswerEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables call forwarding-on-no-answer by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "boolean" - }, - "CallForwardOnNoAnswerNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Directory number to which all incoming calls to this line are forwarded when <> is <> and there is no local answer. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "CallForwardOnNoAnswerRingTimeout": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Delay in <> before considering there is no answer for call forwarding-on-no-answer. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call forwarding.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "CallTransferEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables call transfer by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based call transfer.", - "datatype": "boolean" - }, - "MWIEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables Message Waiting Indication by the Endpoint. This parameter SHOULD NOT be present if the CPE does not support MWI.", - "datatype": "boolean" - }, - "VMWIEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables Visual Message Waiting Indication.", - "datatype": "boolean" - }, - "LineMessagesWaiting": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the number of messages which are currently waiting on this line as known by the CPE. This parameter SHOULD NOT be present if the CPE does not support MWI.", - "datatype": "unsignedInt" - }, - "AnonymousCallRejectionEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Anonymous Call Block capability in the endpoint (ACR). This parameter SHOULD NOT be present if the CPE does not support endpoint based Anonymous Call Block capability.", - "datatype": "boolean" - }, - "AnonymousCallEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Anonymous Call capability in the endpoint (CLIR). This parameter SHOULD NOT be present if the CPE does not support endpoint based Anonymous Call capability.", - "datatype": "boolean" - }, - "DoNotDisturbEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Do Not Disturb capability in the Endpoint. When enabled, all calls are forwarded to voice mail. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Do Not Disturb capability.", - "datatype": "boolean" - }, - "RepeatDialEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Repeat Dial capability in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Repeat Dial capability.", - "datatype": "boolean" - }, - "VoiceMailEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Voice Mail capability in the Endpoint. This parameter SHOULD NOT be present if the CPE does not support Endpoint based Voice Mail capability.", - "datatype": "boolean" - }, - "CallPickUpEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable Call Interception capability in the Endpoint.", - "datatype": "boolean" - }, - "CCBSEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable automatic recall on busy (Completion of Calls to Busy Subscriber) capability in the Endpoint.", - "datatype": "boolean" - }, - "IIFCEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable successive forwarding (Inhibition of Incoming Forwarded Calls) from the Endpoint.", - "datatype": "boolean" - }, - "BlockForwardEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Allow or block any internal forward to the Endpoint.", - "datatype": "boolean" - }, - "SecretForwarderEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable secret identity of this Endpoint in case it initiates (on an external incoming call) a forward to another internal phone Endpoint. If enabled, only the remote caller party can be identified (if not anonymous), not this intermediate via phone extension.", - "datatype": "boolean" - }, - "FollowMeEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable FollowMe capability in the Endpoint.", - "datatype": "boolean" - }, - "CFTNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "SCFNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "SCREJNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "FollowMeNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.CFT.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines a Call Forwarding Timed (CFT) that permit the user to forward calls to particular destinations depending on the time of day. Note: a bad configuration (e.g. timeslots overlapping) could cause unexpected behavior.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether this schedule is currently enabled.", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Day": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Day where the schedule active.", - "datatype": "string", - "enumerations": [ - "Monday", - "Tuesday", - "Wednesday", - "Thursday", - "Friday", - "Saturday", - "Sunday", - "All" - ] - }, - "StartTime": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Start time of the schedule in the form : hh:mm.", - "datatype": "string", - "range": [ - { - "max": 5 - } - ] - }, - "EndTime": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "End time of the schedule in the form : hh:mm.", - "datatype": "string", - "range": [ - { - "max": 5 - } - ] - }, - "ForwardedToNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Number to forward the call to.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.SCF.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines a Selective Call Forwarding (SCF) that permit the user to forward calls to different destinations depending on the calling number.", - "uniqueKeys": [ - "CallingNumber", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this Selective Call Forward.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallingNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Calling number concerned by the forward. The CPE SHOULD perform an exact match with this string without any attempts at number normalization.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "ForwardedToNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Number to forward the call to.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.SCREJ.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines a Selective Call Rejection (SCREJ) that permit the user to selectively reject calls depending on the calling number.", - "uniqueKeys": [ - "CallingNumber", - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this Selective Call Rejection.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallingNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Calling number concerned by the reject. The CPE SHOULD perform an exact match with this string without any attempts at number normalization.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - } - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.FollowMe.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines the FollowMe destinations mapping definition, in the provided sequence order.", - "uniqueKeys": [ - "Alias", - "Number", - "Order" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this FollowMe sequence item.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Delay": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Delay in <> before next FollowMe sequence item applies.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "Number": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Directory number to which all incoming calls to this line are forwarded to after <>, when <> is <>. In this case, <> is not used.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Order": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "For a given <>, defines the order of this item in the FollowMe sequence.", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.CallControl.CallingFeatures.Set.{i}.Voice2Mail.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Voice to mail specific attributes. Applies only if <> is set to <>.", - "access": false, - "array": false, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable voice mail notification.", - "datatype": "boolean" - }, - "MaxMessageLength": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Defines the maximum amount of time in <> of an incoming message. Use this when there are many users and disk space is limited. A value of 0 means there will be no maximum time limit enforced.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "Attach": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates if the message is sent as an attachment in voice mail notification.", - "datatype": "boolean" - }, - "KeepLocal": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether the voice to mail message is kept on the CPE after sending the mail. Applicable only if <> is <>.", - "datatype": "boolean" - }, - "EMailAddress": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "E-mail for voice to mail notification messages.", - "datatype": "string" - } - } - } - } - }, - "Device.Services.VoiceService.{i}.Interwork.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table configures Inter-Working Function switching features. It is mutually exclusive with the <> object which is used in case of PBX or Endpoint capabilities.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable this <> instance.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this <> instance.", - "default": "Disabled", - "datatype": "string", - "enumerations": [ - "Up", - "Error", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "OperationalStatus": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the operational status of the <> connections when <> is <>. Enumeration of: InService, OutOfService, NetworkServersOffline.", - "default": "OutOfService", - "datatype": "string", - "enumerations": [ - "InService", - "OutOfService", - "NetworkServersOffline" - ] - }, - "OperationalStatusReason": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Human-readable string identifying the reason or explanation for the current <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "NetworkConnectionMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter indicates whether or not the CPE supports a registration procedure that conveys its signaling IP address:port to the network. This parameter also indicates whether the network-facing Client object and its parameters are statically provisioned by the ACS or dynamically created by the CPE. Enumeration of: Static, RegisterDynamic, RegisterLearn, RegisterStatic.", - "datatype": "string", - "enumerations": [ - "Static", - "RegisterDynamic", - "RegisterLearn", - "RegisterStatic" - ] - }, - "UserConnectionMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter indicates whether or not an externally connected user device supports a registration procedure to convey its signaling address to the CPE. This parameter also indicates whether the user-facing objects and parameters that contain the external user device signaling address are statically provisioned by the ACS or dynamically learned by the CPE. Enumeration of: Static, RegisterDynamic, RegisterLearn.", - "datatype": "string", - "enumerations": [ - "Static", - "RegisterDynamic", - "RegisterLearn" - ] - }, - "E164Mode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This attribute indicates whether or not the CPE performs E.164 routing of incoming requests received from the service provider network when the target Endpoint is a PBX.", - "datatype": "boolean" - }, - "NetworkAuthenticationChallengeMode": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter indicates how the CPE treats authentication challenges received from the service provider network. This parameter only has meaning when the CPE supports an externally connected user device (e.g., the CPE is acting as a gateway between the user device and the network). Enumeration of: PassThru, RespondLocal, Hop-by-Hop.", - "datatype": "string", - "enumerations": [ - "PassThru", - "RespondLocal", - "Hop-by-Hop" - ] - }, - "NetworkIPAddress": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The network IP Address of the CPE. The CPE MUST resolve this when the <.>> object is created. Note: In case of multiple network IP addresses, the choice is left to the CPE.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "InterworkingRuleSetURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "URI of the Interworking Rule Set for this <> instance.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "InterworkingRuleSetInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The duration in <> of the interval for which the CPE SHOULD send request to refresh the Interworking Rule Set. A value of 0 indicates that this feature is disabled.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "InterworkingRuleSetTime": { - "type": "dateTime", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "An absolute time reference in UTC to determine when the CPE will send a request to refresh the Interworking Rule Set. Each refresh request MUST occur at this reference time plus or minus an integer multiple of the <>. <> is used only to set the phase of refresh requests. The actual value of <> can be arbitrarily far into the past or future. For example, if <> is 86400 (a day) and if <> is set to UTC midnight on some day (in the past, present, or future) then the refresh requests will occur every day at UTC midnight. These MUST begin on the very next midnight, even if <> refers to a day in the future. The Unknown Time value defined in <> indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and needs only to adhere to the specified <>. If absolute time is not available to the CPE, its behavior MUST be the same as if the <> parameter was set to the Unknown Time value.", - "datatype": "dateTime" - }, - "FirewallRuleSetURI": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "URI of the Firewall Rule Set for this <> instance.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "FirewallRuleSetInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The duration in <> of the interval for which the CPE SHOULD send request to refresh the Firewall Rule Set. A value of 0 indicates that this feature is disabled.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "FirewallRuleSetTime": { - "type": "dateTime", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "An absolute time reference in UTC to determine when the CPE will send a request to refresh the Firewall Rule Set. Each refresh request MUST occur at this reference time plus or minus an integer multiple of the <>. <> is used only to set the phase of refresh requests. The actual value of <> can be arbitrarily far into the past or future. For example, if <> is 86400 (a day) and if <> is set to UTC midnight on some day (in the past, present, or future) then the refresh requests will occur every day at UTC midnight. These MUST begin on the very next midnight, even if <> refers to a day in the future. The Unknown Time value defined in <> indicates that no particular time reference is specified. That is, the CPE MAY locally choose the time reference, and needs only to adhere to the specified <>. If absolute time is not available to the CPE, its behavior MUST be the same as if the <> parameter was set to the Unknown Time value.", - "datatype": "dateTime" - }, - "InterworkName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Human-readable string identifying the name or explanation for this <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ProxyServer": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> associated with this <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Networks": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> List of available Networks for routing calls.", - "list": { - "datatype": "string" - } - }, - "E164Client": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter is MUST contain the <> for all <> objects referenced in the <> table when <> = <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "UserInterfaceNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "MapNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Interwork.{i}.UserInterface.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each table entry references a row in the <> table to identify the User IP address and listening port for the Device and the Network to route calls to.", - "uniqueKeys": [ - "Alias", - "Registrar" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable (<>) or disable (<>) <>.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Registrar": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> to use with this <>. The value of <> MUST be unique over all <.>>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Network": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If not null this provides the appropriate <> to route calls from this User server to. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.Interwork.{i}.Map.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "For interworking use cases such as SIP-ISDN PBX plug and ESBC : mapping instance between a Network interface and a User extension.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable (<>) or disable (<>) this connection mapping.", - "default": "false", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this connection mapping. Enumeration of: Active, InActive.", - "default": "InActive", - "datatype": "string", - "enumerations": [ - "Active", - "InActive" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "StatusDescription": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Human-readable string identifying the reason or explanation of the current mapping <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "LastTime": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The last time the Status was updated.", - "datatype": "dateTime" - }, - "Origin": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Mechanism via which this connection mapping was assigned. Enumeration of: AutoConfigured, Static.", - "default": "Static", - "datatype": "string", - "enumerations": [ - "AutoConfigured", - "Static" - ] - }, - "NetworkConnection": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "UserConnection": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>. This parameter can only be modified if <> is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "DigitMap": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Digit map controlling digit collection on a User interface. The string defines the criteria to be met as digits are collected before an outgoing request (e.g., a SIP INVITE) can be initiated. The syntax of this parameter is exactly the syntax used by MGCP as defined in <>. This parameter is applicable only if the User interface supports per digit dialing and the Network interface supports en-bloc dialing only.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "DigitMapEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables use of <>.", - "default": "true", - "datatype": "boolean" - }, - "Priority": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the priority for this combination of Network-to-User mapping, where 1 is the highest priority. Where the priority differs between entries in this table, the CPE SHOULD use the highest priority (lowest numbered) entry. Where the priorities are equal among multiple entries, the CPE MAY apply a local criterion for choosing among them.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This table contains a list of calls. An entry is similar to a CDR (Call Detail Record) as used in PBX or on mobile phones. An entry is created each time a call is terminated. If the number of <> exceeds <>, the CPE SHOULD remove the oldest <> object on basis of <> parameter.", - "uniqueKeys": [ - "Alias" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "CallingPartyNumber": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Number of the party originating the call.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "CalledPartyNumber": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Number of destination party of the call.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Source": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Party originating the call. <> <>, <.Account>> and <> objects SHOULD be referenced only when <> is in use.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Destination": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Destination party of the call. <> <>, <.Account>> and <> objects SHOULD be only referenced only when <> is in use.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "RemoteParty": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The phone number of the remote party after the dial plan has been processed.", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "UsedLine": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> used to process the call. <> When <> is in use, this parameter is <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "UsedExtensions": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> <> For an incoming call multiple <> objects can be involved till one user answers the call. When <> is in use, this parameter is <>.", - "list": { - "datatype": "string" - } - }, - "Direction": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Direction of the call.", - "datatype": "string", - "enumerations": [ - "Incoming", - "Outgoing" - ] - }, - "Start": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Start of the call.", - "datatype": "dateTime" - }, - "Duration": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Length of the call in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "CallTerminationCause": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The call termination cause. The parameter MAY instead indicate a vendor-specific cause, which MUST use the format defined in <>.", - "datatype": "string", - "enumerations": [ - "NoExtensionsMapped", - "NoExtensionsAvailable", - "AnonymousCallRejection", - "CallWaitingRejected", - "CallForwardingUnconditional", - "CallForwardingBusy", - "CallForwardingNoReply", - "LocalDisconnect", - "LocalForbidden", - "LocalTimeout", - "LocalMediaError.", - "LocalPriority.", - "LocalReject", - "LocalTransfer", - "LocalInternalError", - "RemoteDisconnect", - "RemoteBadRequest", - "RemoteForbidden", - "RemoteNotFound", - "RemoteReject", - "RemoteNotAllowed", - "RemoteNotAcceptable", - "RemoteTimeout", - "RemoteUnavailable", - "RemoteBusy", - "RemoteNotSupported", - "RemoteNetworkFailure" - ] - }, - "SessionNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the number of entries in <.Session..>>. Sessions are the equivalent of RTP streams in VoIP calls : a call can have more than one session in sequence when codec changes happen during a call. In multimedia calls, multiple sessions in parallel are possible.", - "datatype": "unsignedInt" - }, - "SignalingPerformanceNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.SignalingPerformance.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This table contains signaling performance statistics for each protocol involved in the call.", - "uniqueKeys": [ - "Protocol" - ], - "access": false, - "array": true, - "Protocol": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Protocol for which this signaling performance statistics are available.", - "datatype": "string", - "enumerations": [ - "H.323", - "SIP" - ] - }, - "CallSetupDelay": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time between the instant a system receives a call attempt and the instant of invitation of ringing at the call receiver end instrument in <>.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "OutgoingMediaEstablishDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time in <> between : :- the instant a system has received information that the called party is connected :- the instant the first media packet goes out the CPE The value could be negative if a media packet is sent before the connection establishment.", - "datatype": "int", - "unit": "milliseconds" - }, - "IncomingMediaEstablishDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time in <> between : :- the instant a system has received information that the called party is connected :- the instant the first media packet goes into the CPE The value could be negative if a media packet arrives before the connection establishment.", - "datatype": "int", - "unit": "milliseconds" - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Session information within one call.", - "uniqueKeys": [ - "SessionID" - ], - "access": false, - "array": true, - "StreamType": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The type of media stream used in this session.", - "datatype": "string", - "enumerations": [ - "Audio", - "Video", - "Fax", - "Modem" - ] - }, - "Start": { - "type": "dateTime", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The time that the session started, in UTC.", - "datatype": "dateTime" - }, - "Duration": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Length of the session in <>.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "SessionID": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Session Identifier. For the SIP protocol this corresponds to the SIP SDP session identifier.", - "datatype": "string", - "range": [ - { - "max": 16 - } - ] - }, - "SIPSessionID": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "SIP Session Identifier", - "datatype": "string", - "range": [ - { - "max": 32 - } - ] - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The source of the session information within one call.", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.RTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The RTP part of the source session information.", - "access": false, - "array": false, - "FarEndIPAddress": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The IP address of far end VoIP device.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "FarEndUDPPort": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The UDP port used for current session in the far end device.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "LocalUDPPort": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The local UDP port used for current session.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "MinJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The minimum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "MaxJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The maximum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "MeanJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The mean relative transit time in <> between each two packet series as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "PacketDelayVariation": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "1-Point Packet Delay Variation according to <> in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "BufferDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average delay in <> added by buffer processing. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "BurstCount": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The number of bursts (as defined in <>) that occur during this session (during one burst several packets MAY be lost). The bursts threshold is configured with the parameter <.RTP.Gmin>>.", - "datatype": "StatsCounter32" - }, - "PacketsReceived": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets received for this session.", - "datatype": "StatsCounter64" - }, - "PacketsSent": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets sent for this session.", - "datatype": "StatsCounter64" - }, - "PacketsLost": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been lost for this session (see <>).", - "datatype": "StatsCounter32" - }, - "PacketsDiscarded": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been discarded for this session (see <>).", - "datatype": "StatsCounter32" - }, - "BytesReceived": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes received for this session.", - "datatype": "StatsCounter64" - }, - "BytesSent": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes sent for this session.", - "datatype": "StatsCounter64" - }, - "ReceivePacketLossRate": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current receive packet loss rate in percent, calculated as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 100 - } - ] - }, - "FarEndPacketLossRate": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current far end receive packet lost rate in percent, calculated as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 100 - } - ] - }, - "ReceiveInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current receive interarrival jitter in timestamp units. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "FarEndInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current Interarrival jitter in timestamp units as reported from the far-end device via RTCP. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "AverageReceiveInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average receive interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "AverageFarEndInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average far-end interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "RoundTripDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current round trip delay in <> calculated as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "AverageRoundTripDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average round trip delay in <> since the beginning of the current session. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "SamplingFrequency": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Sample frequency in <> used by the codec for this session.", - "datatype": "unsignedInt", - "unit": "Hertz" - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The DSP part of the line session information.", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.ReceiveCodec.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The receive codec used in this session.", - "access": false, - "array": false, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The codec in use for the incoming voice stream. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not silence suppression is in use for the incoming voice stream.", - "datatype": "boolean" - }, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has overrun for this session.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has underrun for this session.", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.DSP.TransmitCodec.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The transmit codec used in this session.", - "access": false, - "array": false, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The codec in use for the outgoing voice stream. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not silence suppression is in use for the outgoing voice stream.", - "datatype": "boolean" - }, - "PacketizationPeriod": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current outgoing packetization period in <>.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the transmit jitter buffer has overrun for this session.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the transmit jitter buffer has underrun for this session.", - "datatype": "unsignedInt" - } - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Source.VoiceQuality.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP Statistics for current session instance.", - "access": false, - "array": false, - "VoIPQualityIndicator": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> The interval is specified by <.QICalculationInterval>> and the quality model used is specified by <.QIModelUsed>>. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. For long sessions the number of values might exceed the limit given by <>. In that case, the CPE MUST remove the oldest values to keep the number of reported values within the limit. The interpretation of the QI values are algorithm-specific, the only constraints being the range and the fact that lower values indicate worse quality than do higher values. For instance, if <> is reported as 78,57,88,79,34,56, and <.QICalculationInterval>> is 10 seconds, the quality during the first ten seconds was 78, the next ten seconds 57, and so on. The last reported value (here 56) might cover a shorter time period than <.QICalculationInterval>>, but the length can be deduced using <>.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - }, - "WorstVoIPQualityIndicatorsValues": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Only the N worst values are stored, where N is the limit stored in the <.NumberOfWorstQIValues>> attribute. The values are given in the same algorithm-specific representation as <>, and MUST be in quality-order with the lowest value first. Example: 34,56,57 are the 3 worst values calculated during the call.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - }, - "WorstVoIPQualityIndicatorTimestamps": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each value represents the timestamp index, given in units of <.QICalculationInterval>>, when the corresponding value in <> was calculated. The first index is number 1. Only the N worst values are stored, where N is the limit stored in <.NumberOfWorstQIValues>>. Example: if <.QICalculationInterval>> is equal to 10 (seconds), the value 6,2,5 designates the time intervals 50-60 s, 10-20 s, and 40-50 s when the 3 worst values were calculated.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - } - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The destination part of session information within one call.", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.RTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The RTP part of the destination session information.", - "access": false, - "array": false, - "FarEndIPAddress": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The IP address of far end VoIP device.", - "datatype": "IPAddress", - "range": [ - { - "max": 45 - } - ] - }, - "FarEndUDPPort": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The UDP port used for current session in the far end device.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "LocalUDPPort": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The local UDP port used for current session.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ] - }, - "MinJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The minimum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "MaxJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The maximum relative transit time in <> between two packets as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "MeanJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The mean relative transit time in <> between each two packet series as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "PacketDelayVariation": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "1-Point Packet Delay Variation according to <> in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "milliseconds" - }, - "BufferDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average delay in <> added by buffer processing. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "BurstCount": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The number of bursts (as defined in <>) that occur during this session (during one burst several packets MAY be lost). The bursts threshold is configured with the parameter <.RTP.Gmin>>.", - "datatype": "StatsCounter32" - }, - "PacketsReceived": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets received for this session.", - "datatype": "StatsCounter64" - }, - "PacketsSent": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets sent for this session.", - "datatype": "StatsCounter64" - }, - "PacketsLost": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been lost for this session (see <>).", - "datatype": "StatsCounter32" - }, - "PacketsDiscarded": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of RTP packets that have been discarded for this session (see <>).", - "datatype": "StatsCounter32" - }, - "BytesReceived": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes received for this session.", - "datatype": "StatsCounter64" - }, - "BytesSent": { - "type": "unsignedLong", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of bytes sent for this session.", - "datatype": "StatsCounter64" - }, - "ReceivePacketLossRate": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current receive packet loss rate in percent, calculated as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 100 - } - ] - }, - "FarEndPacketLossRate": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current far end receive packet lost rate in percent, calculated as defined in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 100 - } - ] - }, - "ReceiveInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current receive interarrival jitter in timestamp units. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "FarEndInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current Interarrival jitter in timestamp units as reported from the far-end device via RTCP. Calculated from J(i) as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "AverageReceiveInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average receive interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "AverageFarEndInterarrivalJitter": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average far-end interarrival jitter in timestamp units since the beginning of the current call. Calculated as the average of the interarrival jitter values reported by the far-end. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "RoundTripDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current round trip delay in <> calculated as defined in <>. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "AverageRoundTripDelay": { - "type": "int", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Average round trip delay in <> since the beginning of the current session. A value of -1 indicates no reliable value is available.", - "datatype": "int", - "range": [ - { - "min": -1 - } - ], - "unit": "microseconds" - }, - "SamplingFrequency": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Sample frequency in <> used by the codec for this session.", - "datatype": "unsignedInt", - "unit": "Hertz" - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The DSP part of the destination session information.", - "access": false, - "array": false, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.ReceiveCodec.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The receive codec used in this session.", - "access": false, - "array": false, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The codec in use for the incoming voice stream. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not silence suppression is in use for the incoming voice stream.", - "datatype": "boolean" - }, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has overrun for this session.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the receive jitter buffer has underrun for this session.", - "datatype": "unsignedInt" - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.DSP.TransmitCodec.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "The transmit codec used in this session.", - "access": false, - "array": false, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The codec in use for the outgoing voice stream. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not silence suppression is in use for the outgoing voice stream.", - "datatype": "boolean" - }, - "PacketizationPeriod": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Current outgoing packetization period in <>.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "Overruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the transmit jitter buffer has overrun for this session.", - "datatype": "unsignedInt" - }, - "Underruns": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Total number of times the transmit jitter buffer has underrun for this session.", - "datatype": "unsignedInt" - } - } - }, - "Device.Services.VoiceService.{i}.CallLog.{i}.Session.{i}.Destination.VoiceQuality.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP Statistics for current session instance.", - "access": false, - "array": false, - "VoIPQualityIndicator": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> The interval is specified by <.QICalculationInterval>> and the quality model used is specified by <.QIModelUsed>>. The statistics values in this list MUST be in time order, with the oldest one first and the most recent one last. For long sessions the number of values might exceed the limit given by <>. In that case, the CPE MUST remove the oldest values to keep the number of reported values within the limit. The interpretation of the QI values are algorithm-specific, the only constraints being the numeric range and the fact that lower values indicate worse quality than do higher values. For instance, if <> is reported as 78,57,88,79,34,56, and <.QICalculationInterval>> is 10 seconds, the quality during the first ten seconds was 78, the next ten seconds 57, and so on. The last reported value (here 56) might cover a shorter time period than <.QICalculationInterval>>, but the length can be deduced using <>.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - }, - "WorstVoIPQualityIndicatorsValues": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Only the N worst values are stored, where N is the limit stored in the <.NumberOfWorstQIValues>> attribute. The values are given in the same algorithm-specific representation as <>, and MUST be in quality-order with the lowest value first. Example: 34,56,57 are the 3 worst values calculated during the call.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - }, - "WorstVoIPQualityIndicatorTimestamps": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each value represents the timestamp index, given in units of <.QICalculationInterval>>, when the corresponding value in <> was calculated. The first index is number 1. Only the N worst values are stored, where N is the limit stored in <.NumberOfWorstQIValues>>. Example: if <.QICalculationInterval>> is equal to 10 (seconds), the value 6,2,5 designates the time intervals 50-60 s, 10-20 s, and 40-50 s when the 3 worst values were calculated.", - "list": { - "datatype": "unsignedInt", - "range": [ - { - "max": 65535 - } - ] - } - } - } - } - } - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Configuration profile that can be shared by VoIP components. A VoIP Profile contains media transport configuration parameters that are common to different VoIP protocols. VoIP Profiles could be used by <>, <>, <>, <> and <>.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this VoIP profile. If the value is set to <>, all components using the profile are disabled, whatever their status is.", - "default": "false", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Name": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Human-readable string to identify the profile instance.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "DTMFMethod": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Method by which DTMF digits MUST be passed. Enumeration of: InBand, RFC4733, SIPInfo. If <> is non-empty, then this parameter applies only when the current codec is not G.711.", - "default": "InBand", - "list": { - "datatype": "string", - "enumerations": [ - "InBand", - "RFC4733", - "SIPInfo" - ] - } - }, - "DTMFMethodG711": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Method by which DTMF digits MUST be passed if the the current codec is G.711. Enumeration of: InBand, RFC4733, SIPInfo, . If <> indicates that the value of <> is to apply whether or not the the the current codec is G.711.", - "datatype": "string", - "enumerations": [ - "InBand", - "RFC4733", - "SIPInfo", - "" - ] - }, - "QIModelUsed": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Quality model which the CPE shall use to calculate the parameters <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>>. The value MUST be a member of the list reported by the <> parameter.", - "datatype": "string", - "range": [ - { - "max": 128 - } - ] - }, - "QICalculationInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The interval between successive calculations of <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>> values (in <>). If <> is not set then only one final quality value covering the complete session is reported in <.Session..Source.VoiceQuality.VoIPQualityIndicator>> and <.Session..Destination.VoiceQuality.VoIPQualityIndicator>>.", - "datatype": "unsignedInt", - "unit": "seconds" - }, - "NumberOfWorstQIValues": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The maximum number of worst quality indicators to store for each call. The CPE MUST permit <> to be set to any value in the range from 0 to <>.", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile parameters related to the voice stream sent via RTP.", - "access": false, - "array": false, - "LocalPortMin": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Base of port range to be used for incoming RTP streams for this profile.", - "default": "1024", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 65535 - } - ] - }, - "LocalPortMax": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Top of port range to be used for incoming RTP streams for this profile.", - "default": "1024", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 65535 - } - ] - }, - "Gmin": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Minimum number of consecutive received packets after the end of an RTP Loss Event. A Loss Event is defined as as a sequence of lost or discarded packets, possibly including islands of received packets. Each island consists of up to (<> - 1) received packets (a sequence of <> received packets terminates the Loss Event, and so is not an island).", - "default": "16", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 255 - } - ] - }, - "DSCPMark": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Diffserv code point to be used for outgoing RTP and RTCP packets for this profile. It is RECOMMENDED that by default the DSCP for RTP traffic be set to the value to indicate EF traffic.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 63 - } - ] - }, - "VLANIDMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "VLAN ID (as defined in <>) to be used for outgoing RTP packets for this profile. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "EthernetPriorityMark": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Ethernet priority code (as defined in <>) to be used for outgoing RTP packets for this profile. A value of -1 indicates the default value is to be used. If either <> or <> is greater than zero, then the outgoing frames MUST be tagged. Otherwise, the outgoing frames MAY be tagged or untagged.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1 - } - ] - }, - "TelephoneEventPayloadType": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Payload type to be used for RTP telephone events. This parameter indicates the payload type to be used for DTMF events if transmission of DTMF information is in use according to <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 128 - } - ] - }, - "JitterBufferType": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The indicates if the jitte buffer is static or dynamic.", - "datatype": "string", - "enumerations": [ - "Static", - "Dynamic" - ] - }, - "JitterBufferMaxSize": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximal (or static) jitter buffer size in <>.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "JitterBufferMinSize": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Minimal jitter buffer size in <>, not used if static buffer is used.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "JitterBufferActualSize": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Actual jitter buffer size in <>, if static buffer ist used equal to <>.", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.RTCP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile parameters related to RTCP.", - "access": false, - "array": false, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable RTCP.", - "datatype": "boolean" - }, - "TxRepeatInterval": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Transmission repeat interval, in <>.", - "datatype": "unsignedInt", - "range": [ - { - "min": 1 - } - ], - "unit": "milliseconds" - }, - "LocalCName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Local Cname (canonical name).", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - } - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.SRTP.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile parameters for secure voice transmission via SRTP.", - "access": false, - "array": false, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the use of SRTP. If RTCP is enabled, a <> value of this parameter also implies the use of SRTCP.", - "datatype": "boolean" - }, - "KeyingMethods": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Enumeration of: Null, Static, SDP, IKE.", - "list": { - "datatype": "string", - "enumerations": [ - "Null", - "Static", - "SDP", - "IKE" - ] - } - }, - "EncryptionKeySizes": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "list": { - "datatype": "unsignedInt" - } - } - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.RTP.Redundancy.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "VoIP profile parameters for RTP payload redundancy as defined by <>.", - "access": false, - "array": false, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the use of RTP payload redundancy as defined by <>.", - "default": "false", - "datatype": "boolean" - }, - "PayloadType": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The Payload Type of RTP packet as defined in <>. Values SHOULD be within the range of dynamic Payload Types (96-127).", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 127 - } - ] - }, - "BlockPayloadType": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Block Payload Type of redundancy packet.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 127 - } - ] - }, - "FaxAndModemRedundancy": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the redundancy number for fax and modem pass-through data transmissions. A non-negative value indicates that <> is to be used for fax and modem pass-through data. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for fax and modem pass-through data. If <> is present, then <> applies only to fax transmissions, but not to modem transmissions.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1, - "max": 5 - } - ] - }, - "ModemRedundancy": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the redundancy number for modem pass-through data transmissions. A non-negative value indicates that <> is to be used for modem pass-through data. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for modem pass-through data.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1, - "max": 5 - } - ] - }, - "DTMFRedundancy": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the redundancy number for DTMF transmissions. A non-negative value indicates that <> is to be used for DTMF. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for DTMF.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1, - "max": 5 - } - ] - }, - "VoiceRedundancy": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the redundancy number for general voice transmissions. A non-negative value indicates that <> is to be used for voice. The value indicates the number of redundant copies to be transmitted (the total number transmitted is one plus this value). A value of -1 indicates <> is not to be used for voice.", - "default": "-1", - "datatype": "int", - "range": [ - { - "min": -1, - "max": 5 - } - ] - }, - "MaxSessionsUsingRedundancy": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The maximum number of sessions using <> payload redundancy simultaneously in this profile. A value of zero indicates no explicit limit on the number of sessions using redundancy.", - "default": "0", - "datatype": "unsignedInt" - } - } - }, - "Device.Services.VoiceService.{i}.VoIPProfile.{i}.FaxT38.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "T.38 Fax information for devices that support T.38 relay.", - "access": false, - "array": false, - "MaxBitRate": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Maximum data rate in <> for fax as defined in <>.", - "default": "14400", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 65535 - } - ], - "unit": "bits per second" - }, - "HighSpeedRedundancy": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the packet-level redundancy for high-speed data transmissions (i.e., T.4 image data).", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 3 - } - ] - }, - "LowSpeedRedundancy": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Specifies the packet-level redundancy for low-speed data transmissions (i.e., T.30 handshaking information).", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 5 - } - ] - }, - "TCFMethod": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The method with which data is handled over the network.", - "datatype": "string", - "enumerations": [ - "Local", - "Network" - ] - } - } - }, - "Device.Services.VoiceService.{i}.CodecProfile.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table of codec profiles. This table MUST be populated with the set of supported codecs matching <>. Additional entries can be added to use different configurations of codec or to use the same codec configuration in different CodecList parameters.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable the use of this combination of codec parameters.", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Codec": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "PacketizationPeriod": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<> Each item is a supported packetization period, in milliseconds, or continuous ranges of packetization periods as defined in <.PacketizationPeriod>>. The ACS MAY restrict the set of packetization periods by modifying the value of this parameter to a more restricted set of values than is listed in <.PacketizationPeriod>>. The CPE MUST ignore any values or portions of ranges outside of those specified in <.PacketizationPeriod>>.", - "list": { - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - } - }, - "SilenceSuppression": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates support for silence suppression for this codec. If silence suppression is supported, it can be disabled for this codec/bit-rate by setting this parameter to <>.", - "datatype": "boolean" - } - }, - "Device.Services.VoiceService.{i}.Tone.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines the contents of the tones and announcements generated locally by the VoIP device.", - "access": false, - "array": false, - "DescriptionNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "PatternNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "EventProfileNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "DefautEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the default tone event profile.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Device.Services.VoiceService.{i}.Tone.Description.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table defines the contents of an individual tone. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "ToneEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables the tone entry. If a disabled tone entry is referenced, the result is that no tone is played.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "ToneName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Name of the tone.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "TonePattern": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the <.>> object that begins this tone. If the tone is specified by a tone file instead of a tone pattern, this parameter MUST be set to <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ToneFile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The file name of a tone file locally present on the CPE. An ACS MUST use the Download method with FileType=4 Tone File as defined in <> to download a tone file. If the tone is specified by a tone pattern instead of a tone file, this parameter MUST be <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "ToneRepetitions": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The default number of times the data in <> is repeated. If the value is 0 (zero) then <> is played indefinitely.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 255 - } - ] - }, - "ToneText": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The text to be displayed by on the screen of the VoIP device when the tone is played and no specific error message has been provided. This parameter is applicable only for VoIP devices capable text display.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - } - }, - "Device.Services.VoiceService.{i}.Tone.Pattern.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in the table defines a single phase in an overall tone pattern. Each phase identifies the entry that corresponds to the next phase. Each entry in the table refers to the entry that corresponds to the next phase of the pattern. The table MAY be set up such that entries form loops, or MAY end after a finite sequence. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "ToneOn": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not a tone is on during this phase of the pattern. If the value is <>, the frequency and power parameters in this entry MUST be ignored.", - "default": "false", - "datatype": "boolean" - }, - "Frequency1": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "First tone frequency in <>. A value of zero indicates this tone component is not used.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 4095 - } - ], - "unit": "hertz" - }, - "Power1": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "First tone power level in units of 0.1 <>.", - "default": "0", - "datatype": "int", - "unit": "dBm0" - }, - "Frequency2": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Second tone frequency in <>. A value of zero indicates this tone component is not used.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 4095 - } - ], - "unit": "hertz" - }, - "Power2": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Second tone power level in units of 0.1 <>.", - "default": "0", - "datatype": "int", - "unit": "dBm0" - }, - "Frequency3": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Third tone frequency in <>. A value of zero indicates this tone component is not used.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 4095 - } - ], - "unit": "hertz" - }, - "Power3": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Third tone power level in units of 0.1 <>.", - "default": "0", - "datatype": "int", - "unit": "dBm0" - }, - "Frequency4": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Fourth tone frequency in <>. A value of zero indicates this tone component is not used.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 4095 - } - ], - "unit": "herts" - }, - "Power4": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Fourth tone power level in units of 0.1 <>.", - "default": "0", - "datatype": "int", - "unit": "dBm0" - }, - "ModulationFrequency": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Modulation frequency in <>. A value of zero indicates this tone component is not used.", - "default": "0", - "datatype": "unsignedInt", - "range": [ - { - "min": 0, - "max": 4095 - } - ], - "unit": "hertz" - }, - "ModulationPower": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Modulation power level in units of 0.1 <>.", - "default": "0", - "datatype": "int", - "unit": "dBm0" - }, - "Duration": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The duration of this phase of the tone pattern, in <>. A value of zero indicates an unlimited duration.", - "default": "0", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "NextPattern": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> for the next phase of the tone pattern, after the specified <> of this phase has completed. <> <> indicates that the tone pattern is to terminate after the current phase is completed.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.Tone.EventProfile.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Configuration profile for tone events.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "EventNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Tone.EventProfile.{i}.Event.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Table of events for which a tone is defined. The table is pre-populated with the list of events for which the CPE supports definition of tones.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Function": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The event for which the tone is to apply. Enumeration of: Busy, Confirmation, Dial, LineMessagesWaiting, OffHookWarning, RingBack, ReOrder, Stutterdial, CallWaiting1, CallWaiting2, CallWaiting3, CallWaiting4, AlertingSignal, SpecialDial, SpecialInfo, Release, Congestion, UserDefined1, UserDefined2, UserDefined3, UserDefined4. The parameter MAY instead indicate a vendor-specific event name, which MUST use the format defined in <>.", - "datatype": "string", - "enumerations": [ - "Busy", - "Confirmation", - "Dial", - "LineMessagesWaiting", - "OffHookWarning", - "RingBack", - "ReOrder", - "Stutterdial", - "CallWaiting1", - "CallWaiting2", - "CallWaiting3", - "CallWaiting4", - "AlertingSignal", - "SpecialDial", - "SpecialInfo", - "Release", - "Congestion", - "UserDefined1", - "UserDefined2", - "UserDefined3", - "UserDefined4" - ] - }, - "Tone": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The description for the tone to be associated with the given event. <> <> indicates no tone is to be played for this event.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - } - } - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models a telephony terminal, each object in the table represents an end-user interface. This object has to be used when the CPE is a voice endpoint itself.", - "uniqueKeys": [ - "Alias" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this terminal.", - "datatype": "boolean" - }, - "QuiescentMode": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If <>, when <> is set to <> in-progress sessions remain intact, but no new sessions are allowed. When all sessions are terminated, the <> is disabled.", - "datatype": "boolean" - }, - "Status": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the status of this terminal.", - "datatype": "string", - "enumerations": [ - "Up", - "Initializing", - "Registering", - "Unregistering", - "Error", - "Testing", - "Quiescent", - "Disabled" - ] - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "ToneEventProfile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Reference to the <> to use with this terminal. If this parameter is <>, the value of <> is used instead.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "AudioNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.Audio.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object models the audio outputs of a telephony terminal.(ex. Handset, handsfree, ...)", - "uniqueKeys": [ - "Alias" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Name": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The internal name of this audio.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.Audio.{i}.VoiceProcessing.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Parameters related to voice processing capabilities.", - "access": false, - "array": false, - "TransmitGain": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Gain in <> to apply to the transmitted voice signal prior to encoding. This gain is a modifier of the default transmit-gain, which is unspecified.", - "datatype": "int", - "unit": "0.1 dB" - }, - "ReceiveGain": { - "type": "int", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Gain in <> to apply to the received voice signal after decoding. This gain is a modifier of the default receive-gain, which is unspecified.", - "datatype": "int", - "unit": "0.1 dB" - }, - "EchoCancellationEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enable or disable echo cancellation for this line.", - "datatype": "boolean" - }, - "EchoCancellationInUse": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indication of whether or not echo cancellation is currently in use for this line.", - "datatype": "boolean" - }, - "EchoCancellationTail": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Tail length in <> of the echo canceller associated with this line (whether or not it is currently in use).", - "datatype": "unsignedInt", - "unit": "milliseconds" - } - } - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.ButtonMap.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object is provided to permit the purpose of the CPE buttons and function keys to be defined via the ACS. Support of this object is appropriate only for a device that has programmable buttons in its user interface.", - "access": false, - "array": false, - "ButtonNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.ButtonMap.Button.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table specifies the purpose of each programmable CPE button / function key and whether the user has permission to reprogram the button.", - "uniqueKeys": [ - "Alias" - ], - "access": false, - "array": true, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "ButtonName": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Name of the button.", - "datatype": "string", - "range": [ - { - "max": 16 - } - ] - }, - "FacilityAction": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The value MUST be a member of the list reported by <>. This is an OPTIONAL parameter that SHOULD NOT be specified for buttons not related to a particular Facility Action (e.g., invocation of Call Return) implemented by the VoIP device. The parameter MAY instead indicate a vendor-specific Facility Action, which MUST use the format defined in <>. An empty or unrecognized string (i.e. a Facility Action not supported by the CPE) means that there is no Facility Action to be taken. If this parameter is specified (not <>) then <> SHOULD be <>.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "FacilityActionArgument": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Optional argument associated with the specified <>. The interpretation of the argument is dependent on the specific FacilityAction.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "QuickDialNumber": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is a string representing a quick dial destination number. Only the characters 0-9, * and # can be used. If this parameter is specified (not <>) then <> SHOULD be <>.", - "datatype": "string", - "range": [ - { - "max": 40 - } - ] - }, - "ButtonMessage": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This string represents the message to be displayed on the screen when the button or function key is pressed.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "UserAccess": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This parameter indicates whether the user has permission to program the button or function key. If this parameter is set to <> then <>, <> and <> MUST all be <>.", - "datatype": "boolean" - } - } - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "This object defines the ring sequences that may be generated by the terminal.", - "access": false, - "array": false, - "DescriptionNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "PatternNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.Description.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in this table defines the contents of an individual ring specification. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "RingEnable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables the ring description entry. If a disabled ring description entry is referenced, the result is that no ring is played.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "RingName": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Name of the ring.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "RingPattern": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "This is the <.>> object that begins this ring. If the ring is specified by a ring file instead of a ring pattern, this parameter MUST be set to <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "RingFile": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The file name of a ring file file locally present on the CPE. An ACS MUST use the Download method with FileType=5 Ringer File as defined in <> to download a ring file. If the ring is specified by a ring pattern instead of a ring file, this parameter MUST be <>.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.Ringer.Pattern.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Each entry in the table defines a single phase in an overall ring pattern. Each phase identifies the entry that corresponds to the next phase. Each entry in the table refers to the entry that corresponds to the next phase of the pattern. The table MAY be set up such that entries form loops, or MAY end after a finite sequence. The defaults given for this object apply only to explicit creation of an instance of this object and not to automatic creation of instances of this object due to creation of a parent object.", - "uniqueKeys": [ - "Alias" - ], - "access": true, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "default": "false", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "RingerOn": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Whether or not a ringer is on during this phase of the pattern.", - "default": "false", - "datatype": "boolean" - }, - "Duration": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The duration of this phase of the ring pattern, in <>. A value of zero indicates an unlimited duration.", - "default": "0", - "datatype": "unsignedInt", - "unit": "milliseconds" - }, - "NextPattern": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The <> for the next phase of the ring pattern, after the specified <> of this phase has completed. <> <> indicates that the ring pattern is to terminate after the current phase is completed.", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - } - }, - "Device.Services.VoiceService.{i}.Terminal.{i}.DiagTests.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Terminal level tests.", - "access": false, - "array": false, - "DiagnosticsState": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead. | Indicates the availability of diagnostics data. Enumeration of: Enumeration of: None, Requested, Canceled, Complete, Error. If the ACS sets the value of this parameter to <>, the CPE MUST initiate the corresponding diagnostic test. When writing, the only allowed values are <> and <>. To ensure the use of the proper test parameters (the writable parameters in this object), the test parameters MUST be set, and any errors or inconsistencies in the test parameters MUST be detected, either prior to or at the same time as (in the same SetParameterValues) setting this parameter to <>. When requested, the CPE SHOULD wait until after completion of the communication session with the ACS before starting the diagnostic test. When the test is completed, the value of this parameter MUST be either <> (if the test completed successfully), or one of the Error values listed above. If the value of this parameter is anything other than <>, the values of the results parameters for this test are indeterminate. When the diagnostic initiated by the ACS is completed (successfully or not), but not if it is canceled for any reason, the CPE MUST establish a new connection to the ACS to allow the ACS to view the results, indicating the Event code 8 DIAGNOSTICS COMPLETE in the Inform message. After the diagnostic is complete, the value of all result parameters (all read-only parameters in this object) MUST be retained by the CPE until either this diagnostic is run again, or the CPE reboots. After a reboot, if the CPE has not retained the result parameters from the most recent test, it MUST set the value of this parameter to <>. Modifying any of the writable parameters in this object except for this one MUST result in the value of this parameter being set to <>. While the test is in progress, modifying any of the writable parameters in this object except for this one MUST result in the test being terminated and the value of this parameter being set to <>. While the test is in progress, setting this parameter to <> (and possibly modifying other writable parameters in this object) MUST result in the test being terminated and then restarted using the current values of the test parameters. While the test is in progress, setting this parameter to <> MUST result in the test being canceled and the value of this parameter being set to <>. If the CPE does not support the <> value, it MUST return a SPV error with Invalid Parameter value (9007) to the ACS instead.", - "datatype": "DiagnosticsState", - "enumerations": [ - "None", - "Requested", - "Canceled", - "Complete", - "Error" - ] - }, - "TestSelector": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates which test to perform. The parameter MAY instead indicate a vendor-specific test, which MUST use the format defined in <>. For example: X_EXAMPLE-COM_MyTest", - "datatype": "string", - "enumerations": [ - "RingingTest" - ] - }, - "PhoneRinging": { - "type": "boolean", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Indicates whether or not the phone associated with this port is ringing. This parameter is applicable only if <> is supported.", - "datatype": "boolean" - } - } - }, - "Device.Services.VoiceService.{i}.ClockSynchronization.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "Clock source configuration for Time-Division multiplexing subsystem.", - "access": false, - "array": false, - "ClockSourceNumberOfEntries": { - "type": "unsignedInt", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "<>", - "datatype": "unsignedInt" - }, - "CurrentSource": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "The currently selected external clock source. If the current clock source is not selected from the <> table, e.g. an internal holdover clock, this parameter is set to <>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - }, - "Description": { - "type": "string", - "read": true, - "write": false, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Human readable description of the current clock synchronization status.", - "datatype": "string", - "range": [ - { - "max": 64 - } - ] - }, - "AutoRevert": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "If set to <> the CPE automatically reverts back to a higher priority external clock source when it becomes available once again. If set to <>, an automatic change between external clock sources only occurs when the current source becomes unavailable.", - "datatype": "boolean" - }, - "Device.Services.VoiceService.{i}.ClockSynchronization.ClockSource.{i}.": { - "type": "object", - "protocols": [ - "cwmp", - "usp" - ], - "description": "List of eligible external clock sources. The number of entries in this table depends on the maximum number of external clock sources supported by the CPE.", - "uniqueKeys": [ - "Alias", - "Order", - "Interface" - ], - "access": false, - "array": true, - "Enable": { - "type": "boolean", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Enables or disables this entry.", - "datatype": "boolean" - }, - "Alias": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value. | A non-volatile handle used to reference this instance. Alias provides a mechanism for an ACS to label this instance for future reference. If the CPE supports the Alias-based Addressing feature as defined in <> and described in <>, the following mandatory constraints MUST be enforced: * Its value MUST NOT be empty. * Its value MUST start with a letter. * If its value is not assigned by the ACS, it MUST start with a cpe- prefix. * The CPE MUST NOT change the parameter value.", - "datatype": "Alias", - "range": [ - { - "max": 64 - } - ] - }, - "Order": { - "type": "unsignedInt", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "Position of the <> entry in the order of precedence. A value of 1 indicates the first entry considered (highest precedence).", - "datatype": "unsignedInt", - "range": [ - { - "min": 1, - "max": 100 - } - ] - }, - "Interface": { - "type": "string", - "read": true, - "write": true, - "protocols": [ - "cwmp", - "usp" - ], - "description": "A reference to a physical interface from which a clock signal can be derived. <.>> is eligible as a clock source when <.ClockMode>> is <.ClockMode>>. <.>> is eligible as a clock source when <.ProtocolEmulation>> is <.ProtocolEmulation>>. <>", - "datatype": "string", - "range": [ - { - "max": 256 - } - ] - } - } - } - } -} diff --git a/test/tools/tr-181-2-17-0-cwmp-full.xml b/test/tools/00-tr-181-2-17-0-cwmp-full.xml similarity index 100% rename from test/tools/tr-181-2-17-0-cwmp-full.xml rename to test/tools/00-tr-181-2-17-0-cwmp-full.xml diff --git a/test/tools/tr-181-2-17-0-usp-full.xml b/test/tools/01-tr-181-2-17-0-usp-full.xml similarity index 100% rename from test/tools/tr-181-2-17-0-usp-full.xml rename to test/tools/01-tr-181-2-17-0-usp-full.xml diff --git a/test/tools/tr-104-2-0-2-cwmp-full.xml b/test/tools/02-tr-104-2-0-2-cwmp-full.xml similarity index 100% rename from test/tools/tr-104-2-0-2-cwmp-full.xml rename to test/tools/02-tr-104-2-0-2-cwmp-full.xml diff --git a/test/tools/tr-104-2-0-2-usp-full.xml b/test/tools/03-tr-104-2-0-2-usp-full.xml similarity index 100% rename from test/tools/tr-104-2-0-2-usp-full.xml rename to test/tools/03-tr-104-2-0-2-usp-full.xml diff --git a/test/tools/tr-135-1-4-1-cwmp-full.xml b/test/tools/04-tr-135-1-4-1-cwmp-full.xml similarity index 100% rename from test/tools/tr-135-1-4-1-cwmp-full.xml rename to test/tools/04-tr-135-1-4-1-cwmp-full.xml diff --git a/test/tools/tr-135-1-4-1-usp-full.xml b/test/tools/05-tr-135-1-4-1-usp-full.xml similarity index 100% rename from test/tools/tr-135-1-4-1-usp-full.xml rename to test/tools/05-tr-135-1-4-1-usp-full.xml diff --git a/tools/README.md b/tools/README.md index 65b37003..cb35a546 100644 --- a/tools/README.md +++ b/tools/README.md @@ -60,12 +60,12 @@ This tools can be used as shown below ```bash $ ./tools/convert_dm_xml_to_json.py -Usage: ./tools/convert_dm_xml_to_json.py [Object path] -Examples: - - ./tools/convert_dm_xml_to_json.py test/tools/tr-181-2-*-cwmp-full.xml test/tools/tr-181-2-*-usp-full.xml Device. - ==> Generate the json file of the sub tree Device. in tr181.json - - ./tools/convert_dm_xml_to_json.py test/tools/tr-104-2-0-2-cwmp-full.xml test/tools/tr-104-2-0-2-usp-full.xml Device.Services.VoiceService. - ==> Generate the json file of the sub tree Device.Services.VoiceService. in tr104.json +Usage: python convert_dm_xml_to_json -d +Options: + -d, --directory : Directory containing XML files to convert to JSON +Example: + ./tools/convert_dm_xml_to_json.py -d test/tools/ + ==> Generate the JSON file containing of all XML files defined under test/tools/ directory in datamodel.json Example of xml data model file: https://www.broadband-forum.org/cwmp/tr-181-2-*-cwmp-full.xml ``` @@ -78,19 +78,12 @@ This tool can generate template "C" code from JSON datamodel definitions. ```bash $ ./tools/convert_dm_json_to_c.py -Usage: ./tools/convert_dm_json_to_c.py [Object path] -data model name: The data model(s) to be used, for ex: tr181 or tr181,tr104 +Usage: ./tools/convert_dm_json_to_c.py [Object path] Examples: - - ./tools/convert_dm_json_to_c.py tr181 - ==> Generate the C code of tr181 data model in datamodel/ folder - - ./tools/convert_dm_json_to_c.py tr104 - ==> Generate the C code of tr104 data model in datamodel/ folder - - ./tools/convert_dm_json_to_c.py tr181,tr104 - ==> Generate the C code of tr181 and tr104 data model in datamodel/ folder - - ./tools/convert_dm_json_to_c.py tr181 Device.DeviceInfo. + - ./tools/convert_dm_json_to_c.py + ==> Generate the C code of full data model in datamodel/ folder + - ./tools/convert_dm_json_to_c.py Device.DeviceInfo. ==> Generate the C code of Device.DeviceInfo object in datamodel/ folder - - ./tools/convert_dm_json_to_c.py tr104 Device.Services.VoiceService.{i}.Capabilities. - ==> Generate the C code of Device.Services.VoiceService.{i}.Capabilities. object in datamodel/ folder ``` @@ -101,7 +94,7 @@ This tool helps in validating the json schema, which is very helpful in the deve ```bash $ ./tools/validate_json_plugin.py test/files/etc/bbfdm/json/UserInterface.json $ ./tools/validate_json_plugin.py test/files/etc/bbfdm/json/X_IOPSYS_EU_TEST.json -$ ./tools/validate_json_plugin.py dmtree/json/tr181.json +$ ./tools/validate_json_plugin.py dmtree/json/datamodel.json ``` More examples available in [this path](https://dev.iopsys.eu/bbf/bbfdm/-/tree/devel/test/files/etc/bbfdm/plugins). @@ -161,7 +154,7 @@ The parameters/keys used in tools_input.json file are mostly self-explanatory bu > Note: -> To add more description about the vendor extended DM objects/parameters, it is required to add the definition of the required/related DM objects/parameters in a json file (The json structure should follow same format as given in [tr181.json](../libbbfdm/dmtree/json/tr181.json)), The same json file need to be defined in dm_json_files list. +> To add more description about the vendor extended DM objects/parameters, it is required to add the definition of the required/related DM objects/parameters in a json file (The json structure should follow same format as given in [datamodel.json](../libbbfdm/dmtree/json/datamodel.json)), The same json file need to be defined in dm_json_files list. The input json file should be defined as follow: @@ -179,8 +172,7 @@ The input json file should be defined as follow: "test" ], "dm_json_files": [ - "../libbbfdm/dmtree/json/tr181.json", - "../libbbfdm/dmtree/json/tr104.json" + "../libbbfdm/dmtree/json/datamodel.json" ] "vendor_prefix": "X_IOPSYS_EU_", "plugins": [ @@ -206,7 +198,7 @@ The input json file should be defined as follow: "proto": "git", "version": "tag/hash/branch", "dm_files": [ - "src/plugin/datamodel.json" + "src/plugin/testdm.json" ] }, { diff --git a/tools/bbf_common.py b/tools/bbf_common.py index 7cf595e4..71d49a71 100755 --- a/tools/bbf_common.py +++ b/tools/bbf_common.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane import sys import os @@ -13,10 +13,7 @@ import glob # Constants BBF_ERROR_CODE = 0 CURRENT_PATH = os.getcwd() -BBF_DMTREE_PATH = os.path.join(CURRENT_PATH, "libbbfdm", "dmtree") -BBF_DMTREE_PATH_TR181_JSON = os.path.join(BBF_DMTREE_PATH, "json", "tr181.json") -BBF_DMTREE_PATH_TR104_JSON = os.path.join(BBF_DMTREE_PATH, "json", "tr104.json") -ARRAY_JSON_FILES = {"tr181": BBF_DMTREE_PATH_TR181_JSON, "tr104": BBF_DMTREE_PATH_TR104_JSON} +DM_JSON_FILE = os.path.join(CURRENT_PATH, "libbbfdm", "dmtree", "json", "datamodel.json") LIST_SUPPORTED_USP_DM = [] LIST_SUPPORTED_CWMP_DM = [] diff --git a/tools/convert_dm_json_to_c.py b/tools/convert_dm_json_to_c.py index b2913bb3..4d3046fb 100755 --- a/tools/convert_dm_json_to_c.py +++ b/tools/convert_dm_json_to_c.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane from __future__ import print_function @@ -657,22 +657,14 @@ def printOBJline(dmobject, value): def print_dmc_usage(): - print("Usage: " + sys.argv[0] + " " + " [Object path]") - print("data model name: The data model(s) to be used, for ex: tr181 or tr181,tr104") + print("Usage: " + sys.argv[0] + " [Object path]") print("Examples:") - print(" - " + sys.argv[0] + " tr181") - print(" ==> Generate the C code of tr181 data model in datamodel/ folder") - print(" - " + sys.argv[0] + " tr104") - print(" ==> Generate the C code of tr104 data model in datamodel/ folder") - print(" - " + sys.argv[0] + " tr181,tr104") - print(" ==> Generate the C code of tr181 and tr104 data model in datamodel/ folder") - print(" - " + sys.argv[0] + " tr181" + " Device.DeviceInfo.") + print(" - " + sys.argv[0]) + print(" ==> Generate the C code of full data model in datamodel/ folder") + print(" - " + sys.argv[0] + " Device.DeviceInfo.") print(" ==> Generate the C code of Device.DeviceInfo object in datamodel/ folder") - print(" - " + sys.argv[0] + " tr104" + - " Device.Services.VoiceService.{i}.Capabilities.") - print( - " ==> Generate the C code of Device.Services.VoiceService.{i}.Capabilities. object in datamodel/ folder") - + print(" - " + sys.argv[0] + " Device.Services.VoiceService.{i}.DECT.Base.{i}.") + print(" ==> Generate the C code for a specific multi-instance object in datamodel/ folder") def object_parse_childs(dmobject, value, nextlevel): hasobj = bbf.obj_has_child(value) @@ -842,57 +834,44 @@ def removetmpfiles(): bbf.remove_file("./.events.c") -### main ### -if len(sys.argv) < 2: - print_dmc_usage() - exit(1) +def generatecfromspecificobj(passed_data, obj_to_find): + for _obj, _value in passed_data.items(): + if isinstance(_value, dict) and 'type' in _value and _value['type'] == "object": + if _obj != obj_to_find: + generatecfromspecificobj(_value, obj_to_find) + else: + return generatecfromobj(_obj, _value, DMC_DIR, 0) -if (sys.argv[1]).lower() == "-h" or (sys.argv[1]).lower() == "--help": + +### main ### +if len(sys.argv) > 1 and (sys.argv[1]).lower() in ["-h", "--help"]: print_dmc_usage() exit(1) bbf.remove_folder(DMC_DIR) -dm_name = sys.argv[1].split(",") -for index in range(sys.argv[1].count(',') + 1): - JSON_FILE = bbf.ARRAY_JSON_FILES.get(dm_name[index], None) +json_file = open(bbf.DM_JSON_FILE, "r", encoding='utf-8') +data = json.loads(json_file.read(), object_pairs_hook=OrderedDict) - if JSON_FILE is not None: - j_file = open(JSON_FILE, "r", encoding='utf-8') - data = json.loads(j_file.read(), object_pairs_hook=OrderedDict) +for dm_obj, dm_value in data.items(): - for dm_obj, dm_value in data.items(): - if dm_obj is None: - print("Wrong JSON Data model format!") - continue + if dm_obj is None or not isinstance(dm_value, dict): + print("Wrong JSON Data model format!") + exit(0) - # Generate the object file if it is defined by "sys.argv[2]" argument - if len(sys.argv) > 2: - if sys.argv[2] != dm_obj: - if isinstance(dm_value, dict): - for obj1, value1 in dm_value.items(): - if obj1 == sys.argv[2]: - if isinstance(value1, dict): - for obj2, value2 in value1.items(): - if obj2 == "type" and value2 == "object": - generatecfromobj( - obj1, value1, DMC_DIR, 0) - break - break - break + # Generate the object file if it is defined by "sys.argv[1]" argument + if len(sys.argv) > 1 and sys.argv[1] != dm_obj: + generatecfromspecificobj(dm_value, sys.argv[1]) + break - # Generate the root object tree file if amin does not exist - generatecfromobj(dm_obj, dm_value, DMC_DIR, 1) + # Generate the root object tree file + generatecfromobj(dm_obj, dm_value, DMC_DIR, 1) + + # Generate the sub object tree file + for obj1, value1 in dm_value.items(): + if isinstance(value1, dict) and 'type' in value1 and value1['type'] == "object": + generatecfromobj(obj1, value1, DMC_DIR, 0) - # Generate the sub object tree file if amin does not exist - if isinstance(dm_value, dict): - for obj1, value1 in dm_value.items(): - if isinstance(value1, dict): - for obj2, value2 in value1.items(): - if obj2 == "type" and value2 == "object": - generatecfromobj(obj1, value1, DMC_DIR, 0) - else: - print("!!!! %s : Data Model doesn't exist" % dm_name[index]) if os.path.isdir(DMC_DIR): print("Source code generated under \"%s\" folder" % DMC_DIR) diff --git a/tools/convert_dm_xml_to_json.py b/tools/convert_dm_xml_to_json.py index 945ec331..dcbc8e38 100755 --- a/tools/convert_dm_xml_to_json.py +++ b/tools/convert_dm_xml_to_json.py @@ -1,19 +1,17 @@ #!/usr/bin/python3 -# Copyright (C) 2020 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane import os import sys -import time -import re -import json import xml.etree.ElementTree as xml -from collections import OrderedDict -from shutil import copyfile -import bbf_common as bbf +import json +import re +LIST_DATA_MODEL = [] desc_dict = {} +XML_ROOT = None listTypes = ["string", "unsignedInt", @@ -49,24 +47,18 @@ listdataTypes = ["string", "IoTEnumControlType"] -def getname(objname): - global model_root_name - OBJSname = objname - if (objname.count('.') > 1 and (objname.count('.') != 2 or objname.count('{i}') != 1)): - OBJSname = objname.replace(dmroot1.get('name'), "", 1) - OBJSname = OBJSname.replace("{i}", "") - OBJSname = OBJSname.replace(".", "") - if objname.count('.') == 1: - model_root_name = OBJSname - OBJSname = "Root" + OBJSname - return OBJSname - if (objname.count('.') == 2 and objname.count('{i}') == 1): - model_root_name = OBJSname - OBJSname = "Services" + OBJSname - return OBJSname - return OBJSname - - +def getuniquekeys(dmobject): + uniquekeys = None + for c in dmobject: + if c.tag == "uniqueKey": + for s in c: + if s.tag == "parameter": + if uniquekeys is None: + uniquekeys = "\"%s\"" % s.get('ref') + else: + uniquekeys = uniquekeys + "," + "\"%s\"" % s.get('ref') + return uniquekeys + def getparamtype(dmparam): ptype = None for s in dmparam: @@ -109,6 +101,83 @@ def getParamDefault(dmparam): return default +def process_datatypes(datatype): + key = None + enum = None + des = None + if datatype.tag == "dataType": + key = datatype.get("name") + if not key: + return + + if key in desc_dict: + return + + for dt in datatype: + if dt.tag == "description": + des = dt.text + break + + if des is None: + desc_dict[key] = "" + return + elif '{{enum}}' in des: + for c in datatype: + if c.tag == "string": + for e in c: + if e.tag == "enumeration": + if enum is None: + enum = "Enumeration of: " + e.get("value") + else: + enum += ", " + e.get("value") + + if enum is not None: + enum += "." + des = re.sub('{{enum}}', enum, des) + + des = des.replace("{", "<").replace("}", ">").replace("'", "").replace("\"", "") + desc_dict[key] = des + + +def get_param_desc(dmparam, key): + text = None + enum = None + for s in dmparam: + if s.tag == "description": + text = s.text + + if not text: + return "" + + if '{{enum}}' in text: + for s in dmparam: + if s.tag != "syntax": + continue + + for c in s: + if c.tag != "string": + continue + + for e in c: + if e.tag == "enumeration": + if enum is None: + enum = "Enumeration of: " + e.get("value") + else: + enum += ", " + e.get("value") + + if enum is not None: + enum += "." + text = re.sub('{{enum}}', enum, text) + + if '{{datatype|expand}}' in text and key is not None: + detail = desc_dict.get(key) + if detail is not None: + text = re.sub('{{datatype|expand}}', detail, text) + + text = text.replace("{", "<").replace("}", ">").replace("'", "").replace("\"", "").replace("\n", "") + return ' '.join(text.split()) + + def getMinMaxEnumerationUnitPatternparam(paramtype, c): paramvalrange = None paramenum = None @@ -117,10 +186,10 @@ def getMinMaxEnumerationUnitPatternparam(paramtype, c): if paramtype == "string" or paramtype == "hexBinary" or paramtype == "base64": for cc in c: if cc.tag == "size": - if paramvalrange is None: + if paramvalrange is None and (cc.get("minLength") is not None or cc.get("maxLength") is not None): paramvalrange = "%s,%s" % ( cc.get("minLength"), cc.get("maxLength")) - else: + elif cc.get("minLength") is not None or cc.get("maxLength") is not None: paramvalrange = "%s;%s,%s" % ( paramvalrange, cc.get("minLength"), cc.get("maxLength")) if cc.tag == "enumeration": @@ -155,11 +224,10 @@ def getparamdatatyperef(datatyperef): paramenum = None paramunit = None parampattern = None - for d in xmlroot1: + for d in XML_ROOT: if d.tag == "dataType" and d.get("name") == datatyperef: if d.get("base") != "" and d.get("base") is not None and d.get("name") == "Alias": - paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef( - d.get("base")) + paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef(d.get("base")) else: for dd in d: if dd.tag in listTypes: @@ -212,772 +280,522 @@ def getparamoption(dmparam): listminItem = None listmaxItem = None listmaxsize = None - islist = 0 + islist = False + for s in dmparam: if s.tag == "syntax": for c in s: if c.tag == "list": - islist = 1 + islist = True listminItem, listmaxItem, listmaxsize = getparamlist(c) for c1 in s: datatype = c1.tag if c1.tag in listdataTypes else None if datatype is not None: - paramvalrange, paramenum, paramunit, parampattern = getMinMaxEnumerationUnitPatternparam( - datatype, c1) + paramvalrange, paramenum, paramunit, parampattern = getMinMaxEnumerationUnitPatternparam(datatype, c1) break if c1.tag == "dataType": datatype = c1.get("ref") - paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef( - c1.get("ref")) + paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef(c1.get("ref")) break - if islist == 0: + if islist is False: datatype = c.tag if c.tag in listdataTypes else None if datatype is not None: - paramvalrange, paramenum, paramunit, parampattern = getMinMaxEnumerationUnitPatternparam( - datatype, c) + paramvalrange, paramenum, paramunit, parampattern = getMinMaxEnumerationUnitPatternparam(datatype, c) break if c.tag == "dataType": datatype = c.get("ref") - paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef( - datatype) + paramvalrange, paramenum, paramunit, parampattern = getparamdatatyperef(datatype) break break return islist, datatype, paramvalrange, paramenum, paramunit, parampattern, listminItem, listmaxItem, listmaxsize -listmapping = [] +def get_range_array(val_range): + range_array = [] + valranges = val_range.split(";") + for eachvalrange in valranges: + range_obj = {} + valrange = eachvalrange.split(",") + if valrange[0] != "None" and valrange[1] != "None": + range_obj["min"] = int(valrange[0]) + range_obj["max"] = int(valrange[1]) + elif valrange[0] != "None" and valrange[1] == "None": + range_obj["min"] = int(valrange[0]) + elif valrange[0] == "None" and valrange[1] != "None": + range_obj["max"] = int(valrange[1]) -def generatelistfromfile(dmobject): - obj = dmobject.get('name').split(".") - if "tr-104" in sys.argv[1]: - pathfilename = "../libbbfdm/dmtree/tr104/" + obj[1].lower() + ".c" - pathiopsyswrtfilename = "../libbbfdm/dmtree/tr104/" + \ - obj[1].lower() + "-iopsyswrt.c" - else: - pathfilename = "../libbbfdm/dmtree/tr181/" + obj[1].lower() + ".c" - pathiopsyswrtfilename = "../libbbfdm/dmtree/tr181/" + \ - obj[1].lower() + "-iopsyswrt.c" + range_array.append(range_obj) - for x in range(0, 2): - pathfile = pathfilename if x == 0 else pathiopsyswrtfilename - exists = os.path.isfile(pathfile) - if exists: - filec = open(pathfile, "r", encoding='utf-8') - for linec in filec: - if "/*#" in linec: - listmapping.append(linec) + return range_array + + +def add_entry_to_list(e): + existing_entry_index = None + + # Check if the entry already exists in the list + for i, existing_entry in enumerate(LIST_DATA_MODEL): + if existing_entry['name'] == e['name']: + existing_entry_index = i + break + + if existing_entry_index is not None: + # Entry already exists, update 'protocol' field + existing_protocols = LIST_DATA_MODEL[existing_entry_index]['protocol'] + if isinstance(existing_protocols, list): + if e['protocol'] not in existing_protocols: + existing_protocols.append(e['protocol']) else: - pass - - -def objhaschild(parentname, level, check_obj): - hasobj = 0 - model = model2 if check_obj == 0 else model1 - for c in model: - objname = c.get('name') - if c.tag == "object" and parentname in objname and (objname.count('.') - objname.count('{i}')) == level: - hasobj = 1 - break - - return hasobj - - -def objhasparam(dmobject): - hasparam = 0 - for c in dmobject: - if c.tag == "parameter": - hasparam = 1 - break - - return hasparam - - -def getuniquekeys(dmobject): - uniquekeys = None - for c in dmobject: - if c.tag == "uniqueKey": - for s in c: - if s.tag == "parameter": - if uniquekeys is None: - uniquekeys = "\"%s\"" % s.get('ref') - else: - uniquekeys = uniquekeys + "," + "\"%s\"" % s.get('ref') - return uniquekeys - - -def printopenobject(obj): - fp = open('./.json_tmp', 'a', encoding='utf-8') - if "tr-104" in sys.argv[1] or "tr-135" in sys.argv[1]: - print("\"Device.Services.%s\" : {" % obj.get( - 'name').replace(" ", ""), file=fp) + LIST_DATA_MODEL[existing_entry_index]['protocol'] = [existing_protocols, e['protocol']] else: - print("\"%s\" : {" % obj.get('name').replace(" ", ""), file=fp) - fp.close() + proto_list = e['protocol'] + e['protocol'] = [proto_list] + if e['name'].endswith('.'): + # Insert the new entry at the end of the list + LIST_DATA_MODEL.append(e) + else: + last_dot_index = e['name'].rfind('.') + entry_obj = e['name'][:last_dot_index + 1] + insert_index = 0 + entry_obj_found = False + for i, existing_entry in enumerate(LIST_DATA_MODEL): + if entry_obj == existing_entry['name']: + entry_obj_found = True + continue + + if entry_obj_found is True and existing_entry['name'].endswith('.'): + insert_index = i + break + + if insert_index != 0: + # Insert the new entry at the appropriate index + LIST_DATA_MODEL.insert(insert_index, e) + else: + # Insert the new entry at the end of the list + LIST_DATA_MODEL.append(e) + + +def add_obj_to_list(main_obj, dmobject, proto): + array = dmobject.get('name').endswith('.{i}.') + access = dmobject.get('access') != "readOnly" + description = get_param_desc(dmobject, None) + obsolete = dmobject.get('status') in {"deprecated", "obsoleted", "deleted"} + uniqueKeys = getuniquekeys(dmobject) + + entry_obj = { + "name": main_obj + dmobject.get('name'), + "type": "object", + "array": array, + "access": access, + "protocol": proto, + "description": description, + "obsolete": obsolete, + } + + if uniqueKeys is not None: + entry_obj['uniqueKeys'] = re.findall(r'"(.*?)"', uniqueKeys) + + add_entry_to_list(entry_obj) -def printopenfile(): - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("{", file=fp) - fp.close() - - -def printclosefile(): - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("}", file=fp) - fp.close() - - -def printOBJMaPPING(mapping): - fp = open('./.json_tmp', 'a', encoding='utf-8') - config_type = mapping.split(":") - config = config_type[1].split("/") - print("\"mapping\": {", file=fp) - print("\"type\": \"%s\"," % config_type[0].lower(), file=fp) - print("\"%s\": {" % config_type[0].lower(), file=fp) - - # UCI - if config_type[0] == "UCI": - print("\"file\": \"%s\"," % config[0], file=fp) - print("\"section\": {", file=fp) - print("\"type\": \"%s\"" % config[1], file=fp) - print("},", file=fp) - print("\"dmmapfile\": \"%s\"" % config[2], file=fp) - - # UBUS - elif config_type[0] == "UBUS": - print("\"object\": \"%s\"," % config[0], file=fp) - print("\"method\": \"%s\"," % config[1], file=fp) - print("\"args\": {", file=fp) - if config[2] != "": - args = config[2].split(",") - print("\"%s\": \"%s\"" % (args[0], args[1]), file=fp) - print("}", file=fp) - print("\"key\": \"%s\"" % config[3], file=fp) - - print("}\n}", file=fp) - fp.close() - -def removelastline(): - file = open("./.json_tmp", encoding='utf-8') - lines = file.readlines() - lines = lines[:-1] - file.close() - w = open("./.json_tmp", 'w', encoding='utf-8') - w.writelines(lines) - w.close() - printclosefile() - - -def replace_data_in_file(data_in, data_out): - file_r = open("./.json_tmp", "rt", encoding='utf-8') - file_w = open("./.json_tmp_1", "wt", encoding='utf-8') - text = ''.join(file_r).replace(data_in, data_out) - file_w.write(text) - file_r.close() - file_w.close() - copyfile("./.json_tmp_1", "./.json_tmp") - bbf.remove_file("./.json_tmp_1") - - -def updatejsontmpfile(): - replace_data_in_file("}\n", "},\n") - replace_data_in_file("},\n},", "}\n},") - replace_data_in_file("}\n},\n},", "}\n}\n},") - replace_data_in_file("}\n},\n}\n},", "}\n}\n}\n},") - replace_data_in_file("}\n},\n}\n}\n},", "}\n}\n}\n}\n},") - replace_data_in_file("}\n}\n}\n},\n}\n},", "}\n}\n}\n}\n}\n},") - replace_data_in_file("}\n}\n}\n}\n}\n}\n},", "}\n}\n}\n}\n}\n}\n},") - replace_data_in_file("}\n}\n}\n},\n}\n}\n}\n},", "}\n}\n}\n}\n}\n}\n}\n},") - replace_data_in_file("},\n]", "}\n]") - - -def removetmpfiles(): - bbf.remove_file("./.json_tmp") - bbf.remove_file("./.json_tmp_1") - - -def printOBJ(dmobject, hasobj, hasparam, bbfdm_type): - uniquekeys = getuniquekeys(dmobject) - if (dmobject.get('name')).endswith(".{i}."): - fbrowse = "true" - else: - fbrowse = "false" - - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("\"type\" : \"object\",", file=fp) - - status = dmobject.get('status') - if status in {"deprecated", "obsoleted", "deleted"}: - print("\"obsolete\" : true,", file=fp) - - print("\"protocols\" : [%s]," % bbfdm_type, file=fp) - print("\"description\" : \"%s\"," % getParamDesc(dmobject, None), file=fp) - if uniquekeys is not None: - print("\"uniqueKeys\" : [%s]," % uniquekeys, file=fp) - if dmobject.get('access') == "readOnly": - print("\"access\" : false,", file=fp) - else: - print("\"access\" : true,", file=fp) - if hasparam or hasobj: - print("\"array\" : %s," % fbrowse, file=fp) - else: - print("\"array\" : %s" % fbrowse, file=fp) - fp.close() - - -def printPARAM(dmparam, dmobject, bbfdm_type): +def add_param_to_list(main_obj, dmobject, dmparam, proto): islist, datatype, paramvalrange, paramenum, paramunit, parampattern, listminItem, listmaxItem, listmaxsize = getparamoption(dmparam) - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("\"%s\" : {" % dmparam.get('name').replace(" ", ""), file=fp) - print("\"type\" : \"%s\"," % getparamtype(dmparam), file=fp) - print("\"read\" : true,", file=fp) - print("\"write\" : %s," % ("false" if dmparam.get( - 'access') == "readOnly" else "true"), file=fp) - - if dmparam.get('mandatory') == "true": - print("\"mandatory\" : true,", file=fp) - - status = dmobject.get('status') or dmparam.get('status') - if status in {"deprecated", "obsoleted", "deleted"}: - print("\"obsolete\" : true,", file=fp) - - print("\"protocols\" : [%s]," % bbfdm_type, file=fp) - print("\"description\" : \"%s\"," % getParamDesc(dmparam, datatype), file=fp) - + access = dmparam.get('access') != "readOnly" + description = get_param_desc(dmparam, datatype) + obsolete = dmobject.get('status') in {"deprecated", "obsoleted", "deleted"} + if obsolete is False: + obsolete = dmparam.get('status') in {"deprecated", "obsoleted", "deleted"} + ptype = getparamtype(dmparam) default = getParamDefault(dmparam) - if default is not None and len(default) != 0 and default != "\"": - print("\"default\" : \"%s\"," % default, file=fp) - # create list - if islist == 1: - print("\"list\" : {", file=fp) + entry_param = { + "name": main_obj + dmparam.get('name'), + "type": ptype, + "read": True, + "write": access, + "protocol": proto, + "description": description, + "obsolete": obsolete, + "list": islist + } - # add datatype - print(("\"datatype\" : \"%s\"," % datatype) if (listmaxsize is not None or listminItem is not None or listmaxItem is not None or paramvalrange is not None or paramunit is not - None or paramenum is not None or parampattern is not None) else ("\"datatype\" : \"%s\"" % datatype), file=fp) + if default is not None: + entry_param['default'] = default + + if datatype is not None: + entry_param['datatype'] = datatype - if islist == 1: - # add maximum size of list - if listmaxsize is not None: - print(("\"maxsize\" : %s," % listmaxsize) if (listminItem is not None or listmaxItem is not None or paramvalrange is not None - or paramunit is not None or paramenum is not None or parampattern is not None) else ("\"maxsize\" : %s" % listmaxsize), file=fp) - - # add minimun and maximum item values - if listminItem is not None and listmaxItem is not None: - print("\"item\" : {", file=fp) - print("\"min\" : %s," % listminItem, file=fp) - print("\"max\" : %s" % listmaxItem, file=fp) - print(("},") if (paramvalrange is not None or paramunit is not None - or paramenum is not None or parampattern is not None) else ("}"), file=fp) - elif listminItem is not None and listmaxItem is None: - print("\"item\" : {", file=fp) - print("\"min\" : %s" % listminItem, file=fp) - print(("},") if (paramvalrange is not None or paramunit is not None - or paramenum is not None or parampattern is not None) else ("}"), file=fp) - elif listminItem is None and listmaxItem is not None: - print("\"item\" : {", file=fp) - print("\"max\" : %s" % listmaxItem, file=fp) - print(("},") if (paramvalrange is not None or paramunit is not None - or paramenum is not None or parampattern is not None) else ("}"), file=fp) - - # add minimun and maximum values if paramvalrange is not None: - valranges = paramvalrange.split(";") - print("\"range\" : [", file=fp) - for eachvalrange in valranges: - valrange = eachvalrange.split(",") - if valrange[0] != "None" and valrange[1] != "None": - print("{", file=fp) - print("\"min\" : %s," % valrange[0], file=fp) - print("\"max\" : %s" % valrange[1], file=fp) - print(("},") if (eachvalrange == - valranges[len(valranges)-1]) else ("}"), file=fp) - elif valrange[0] != "None" and valrange[1] == "None": - print("{", file=fp) - print("\"min\" : %s" % valrange[0], file=fp) - print(("},") if (eachvalrange == - valranges[len(valranges)-1]) else ("}"), file=fp) - elif valrange[0] == "None" and valrange[1] != "None": - print("{", file=fp) - print("\"max\" : %s" % valrange[1], file=fp) - print(("},") if (eachvalrange == - valranges[len(valranges)-1]) else ("}"), file=fp) - print(("],") if (paramunit is not None or paramenum is not None or parampattern is not None) else ("]"), file=fp) + entry_param['range'] = get_range_array(paramvalrange) - # add unit if paramunit is not None: - print(("\"unit\" : \"%s\"," % paramunit) if (paramenum is not None or parampattern is not None) else ("\"unit\" : \"%s\"" % paramunit), file=fp) + entry_param['unit'] = paramunit - # add enumaration if paramenum is not None: - print(("\"enumerations\" : [%s]," % paramenum) if (parampattern is not None) else ("\"enumerations\" : [%s]" % paramenum), file=fp) + entry_param['enumerations'] = re.findall(r'"(.*?)"', paramenum) - # add pattern if parampattern is not None: - print(("\"pattern\" : [%s]" % parampattern.replace("\\", "\\\\")), file=fp) - - # close list - if islist == 1: - print("}", file=fp) - - print("}", file=fp) - fp.close() + entry_param['pattern'] = re.findall(r'"(.*?)"', parampattern) + + if listminItem is not None: + entry_param['min_item'] = int(listminItem) + + if listmaxItem is not None: + entry_param['max_item'] = int(listmaxItem) + + if listmaxsize is not None: + entry_param['max_size'] = int(listmaxsize) + + add_entry_to_list(entry_param) -def printCOMMAND(dmparam, dmobject, _bbfdm_type): - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("\"%s\" : {" % dmparam.get('name'), file=fp) - print("\"type\" : \"command\",", file=fp) - print("\"async\" : %s," % - ("true" if dmparam.get('async') is not None else "false"), file=fp) +def add_command_to_list(main_obj, dmparam, proto): + is_async = dmparam.get('async') is not None - inputfound = 0 - outputfound = 0 + entry_command = { + "name": main_obj + dmparam.get('name'), + "type": "command", + "async": is_async, + "protocol": proto + } + for c in dmparam: if c.tag == "input": - inputfound = 1 + entry_command['input'] = c elif c.tag == "output": - outputfound = 1 - - print(("\"protocols\" : [\"usp\"],") if (inputfound or outputfound) else ( - "\"protocols\" : [\"usp\"]"), file=fp) - - for c in dmparam: - if c.tag == "input": - print("\"input\" : {", file=fp) - for param in c: - if param.tag == "parameter": - fp.close() - printPARAM(param, dmobject, "\"usp\"") - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("}" if outputfound else "},", file=fp) - - if c.tag == "output": - print("\"output\" : {", file=fp) - for param in c: - if param.tag == "parameter": - fp.close() - printPARAM(param, dmobject, "\"usp\"") - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("}", file=fp) - - print("}", file=fp) - fp.close() + entry_command['output'] = c + + add_entry_to_list(entry_command) -def printEVENT(dmparam, dmobject, _bbfdm_type): - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("\"%s\" : {" % dmparam.get('name'), file=fp) - print("\"type\" : \"event\",", file=fp) +def add_event_to_list(main_obj, dmparam, proto): - has_param = 0 + entry_event = { + "name": main_obj + dmparam.get('name'), + "type": "event", + "protocol": proto + } + for c in dmparam: if c.tag == "parameter": - has_param = 1 + entry_event['output'] = dmparam + break + + add_entry_to_list(entry_event) - print(("\"protocols\" : [\"usp\"],") if (has_param) else ( - "\"protocols\" : [\"usp\"]"), file=fp) - - if has_param: - print("\"output\" : {", file=fp) - fp.close() - - for param in dmparam: +def get_argument(input_args, proto): + input_dict = {} + for param in input_args: if param.tag == "parameter": - printPARAM(param, dmobject, "\"usp\"") + param_in_dict = {} + + islist, datatype, paramvalrange, paramenum, paramunit, parampattern, listminItem, listmaxItem, listmaxsize = getparamoption(param) + description = get_param_desc(param, datatype) + default = getParamDefault(param) + + param_in_dict['type'] = getparamtype(param) + param_in_dict['read'] = True + param_in_dict['write'] = param.get('access') != "readOnly" + + if param.get('status') in {"deprecated", "obsoleted", "deleted"}: + param_in_dict['obsolete'] = True - if has_param: - fp = open('./.json_tmp', 'a', encoding='utf-8') - print("}", file=fp) + if param.get('mandatory') == "true": + param_in_dict['mandatory'] = True - print("}", file=fp) - fp.close() + param_in_dict['protocols'] = proto + + if description is not None: + param_in_dict['description'] = description + + if default is not None and len(default): + param_in_dict['default'] = default + + if islist is True: + list_dict = {} + item_dict = {} + + if datatype is not None: + list_dict['datatype'] = datatype + + if listmaxsize is not None: + list_dict['maxsize'] = int(listmaxsize) + + if listminItem is not None: + item_dict['min'] = int(listminItem) + + if listmaxItem is not None: + item_dict['max'] = int(listmaxItem) + + if listminItem is not None or listmaxItem is not None: + list_dict['item'] = item_dict + + if paramvalrange is not None: + list_dict['range'] = get_range_array(paramvalrange) + + if paramunit is not None: + list_dict['unit'] = paramunit + + if paramenum is not None: + list_dict['enumerations'] = re.findall(r'"(.*?)"', paramenum) + + if parampattern is not None: + list_dict['pattern'] = re.findall(r'"(.*?)"', parampattern) + + param_in_dict['list'] = list_dict + else: + if datatype is not None: + param_in_dict['datatype'] = datatype + + if paramvalrange is not None: + param_in_dict['range'] = get_range_array(paramvalrange) + + if paramunit is not None: + param_in_dict['unit'] = paramunit + + if paramenum is not None: + param_in_dict['enumerations'] = re.findall(r'"(.*?)"', paramenum) + + if parampattern is not None: + param_in_dict['pattern'] = re.findall(r'"(.*?)"', parampattern) + + input_dict[param.get('name')] = param_in_dict + + return input_dict -def printusage(): - print("Usage: " + - sys.argv[0] + " [Object path]") - print("Examples:") - print(" - " + sys.argv[0] + - " test/tools/tr-181-2-*-cwmp-full.xml test/tools/tr-181-2-*-usp-full.xml Device.") - print(" ==> Generate the json file of the sub tree Device. in tr181.json") - print(" - " + sys.argv[0] + - " test/tools/tr-104-2-0-2-cwmp-full.xml test/tools/tr-104-2-0-2-usp-full.xml Device.Services.VoiceService.") - print(" ==> Generate the json file of the sub tree Device.Services.VoiceService. in tr104.json") - print(" - " + sys.argv[0] + " test/tools/tr-106-1-2-0-full.xml Device.") - print(" ==> Generate the json file of the sub tree Device. in tr106.json") - print("") - print("Example of xml data model file: https://www.broadband-forum.org/cwmp/tr-181-2-*-cwmp-full.xml") - exit(1) +def add_to_dict(obj, e): + name = e['name'] + components = name.split('.') + current_dict = obj + full_path = "" + is_param = False + + for i, component in enumerate(components): + + if component == '' or component == '{i}': + continue + + if i == len(components) - 1: + full_path = component + is_param = True + else: + if i + 1 < len(components) and components[i + 1] != '{i}': + str_suffix = "." + else: + str_suffix = ".{i}." + + full_path += component + str_suffix + is_param = False + + current_dict = current_dict.setdefault(full_path, {}) + + if is_param is False: + obj_dict = {} + + obj_dict['type'] = e['type'] + + if 'obsolete' in e and e['obsolete'] is True: + obj_dict['obsolete'] = e['obsolete'] + + if 'protocol' in e: + obj_dict['protocols'] = e['protocol'] + + if 'description' in e: + obj_dict['description'] = e['description'] + + if 'uniqueKeys' in e: + obj_dict['uniqueKeys'] = e['uniqueKeys'] + + if 'access' in e: + obj_dict['access'] = e['access'] + + if 'array' in e: + obj_dict['array'] = e['array'] + + current_dict.update(obj_dict) + else: + param_dict = {} + + param_dict['type'] = e['type'] + + if 'async' in e: + param_dict['async'] = e['async'] + + if 'read' in e: + param_dict['read'] = e['read'] + + if 'write' in e: + param_dict['write'] = e['write'] + + if 'obsolete' in e and e['obsolete'] is True: + param_dict['obsolete'] = e['obsolete'] + + if 'protocol' in e: + param_dict['protocols'] = e['protocol'] + + if 'input' in e: + param_dict['input'] = get_argument(e['input'], e['protocol']) + + if 'output' in e: + param_dict['output'] = get_argument(e['output'], e['protocol']) + + if 'description' in e: + param_dict['description'] = e['description'] + + if 'default' in e and len(e['default']): + param_dict['default'] = e['default'] + + if 'list' in e and e['list'] is True: + list_dict = {} + item_dict = {} + + if 'datatype' in e: + list_dict['datatype'] = e['datatype'] + + if 'max_size' in e: + list_dict['maxsize'] = e['max_size'] + + if 'min_item' in e: + item_dict['min'] = e['min_item'] + + if 'max_item' in e: + item_dict['max'] = e['max_item'] + + if 'min_item' in e or 'max_item' in e: + list_dict['item'] = item_dict + + if 'range' in e: + list_dict['range'] = e['range'] + + if 'unit' in e: + list_dict['unit'] = e['unit'] + + if 'enumerations' in e: + list_dict['enumerations'] = e['enumerations'] + + if 'pattern' in e: + list_dict['pattern'] = e['pattern'] + + param_dict['list'] = list_dict + else: + if 'datatype' in e: + param_dict['datatype'] = e['datatype'] + + if 'range' in e: + param_dict['range'] = e['range'] + + if 'unit' in e: + param_dict['unit'] = e['unit'] + + if 'enumerations' in e: + param_dict['enumerations'] = e['enumerations'] + + if 'pattern' in e: + param_dict['pattern'] = e['pattern'] + + current_dict.update(param_dict) -def getobjectpointer(objname): - obj = None - for c in model1: - if c.tag == "object" and (c.get('name') == objname or c.get('name') == (objname + "{i}.")): - obj = c - break - return obj +def object_parse_childs(main_obj, dmobject, proto): + + add_obj_to_list(main_obj, dmobject, proto) - -def chech_each_obj_with_other_obj(m1, m2): - for c in m2: - if c.tag == "object": - found = 0 - for obj in m1: - if obj.tag == "object" and (obj.get('name') == c.get('name')): - found = 1 - break - if found == 0: - if c.get('name').count(".") - (c.get('name')).count("{i}.") != 2: - continue - dmlevel = (c.get('name')).count(".") - \ - (c.get('name')).count("{i}.") + 1 - printopenobject(c) - object_parse_childs(c, dmlevel, 0, 0) - printclosefile() - - -def check_if_obj_exist_in_other_xml_file(objname): - obj = None - found = 0 - for c in model2: - if c.tag == "object" and (c.get('name') == objname.get('name')): - obj = c - found = 1 - break - return obj, found - - -def chech_current_param_exist_in_other_obj(obj, c): - bbfdm_type = "" - for param in obj: - if param.tag == "parameter" and param.get('name') == c.get('name'): - bbfdm_type = "\"cwmp\", \"usp\"" - break - if bbfdm_type == "" and "cwmp" in sys.argv[1]: - bbfdm_type = "\"cwmp\"" - elif bbfdm_type == "" and "usp" in sys.argv[1]: - bbfdm_type = "\"usp\"" - return bbfdm_type - - -def chech_obj_with_other_obj(obj, dmobject): - for c in obj: - exist = 0 + for c in dmobject: if c.tag == "parameter": - for param in dmobject: - if param.tag == "parameter" and c.get('name') == param.get('name'): - exist = 1 - break - if exist == 0 and "cwmp" in sys.argv[1]: - printPARAM(c, obj, "\"usp\"") - elif exist == 0 and "usp" in sys.argv[1]: - printPARAM(c, obj, "\"cwmp\"") - if c.tag == "command": - printCOMMAND(c, obj, "\"usp\"") - if c.tag == "event": - printEVENT(c, obj, "\"usp\"") + add_param_to_list(main_obj + dmobject.get('name'), dmobject, c, proto) + elif c.tag == "command": + add_command_to_list(main_obj + dmobject.get('name'), c, proto) + elif c.tag == "event": + add_event_to_list(main_obj + dmobject.get('name'), c, proto) + elif c.tag == "object": + object_parse_childs(main_obj + dmobject.get('name'), c, proto) -def object_parse_childs(dmobject, level, generatelist, check_obj): - if generatelist == 0 and (dmobject.get('name')).count(".") == 2: - generatelistfromfile(dmobject) - if check_obj == 1 and ("tr-181" in sys.argv[1] or "tr-104" in sys.argv[1]): - obj, exist = check_if_obj_exist_in_other_xml_file(dmobject) +def parse_xml_model(model, proto): + is_service = model.get("isService") + main_obj = "Device.Services." if is_service == "true" else "" - hasobj = objhaschild(dmobject.get('name'), level, check_obj) - hasparam = objhasparam(dmobject) - - if check_obj == 1 and "tr-181" in sys.argv[1] and exist == 0: - printOBJ(dmobject, hasobj, hasparam, "\"cwmp\"") - elif check_obj == 0 and "tr-181" in sys.argv[1]: - printOBJ(dmobject, hasobj, hasparam, "\"usp\"") - else: - printOBJ(dmobject, hasobj, hasparam, "\"cwmp\", \"usp\"") - - if hasparam: - for c in dmobject: - if c.tag == "parameter": - if check_obj == 1 and "tr-181" in sys.argv[1] and exist == 1: - bbfdm_type = chech_current_param_exist_in_other_obj(obj, c) - elif check_obj == 1 and "tr-181" in sys.argv[1] and exist == 0: - bbfdm_type = "\"cwmp\"" - elif check_obj == 0: - bbfdm_type = "\"usp\"" - else: - bbfdm_type = "\"cwmp\", \"usp\"" - printPARAM(c, dmobject, bbfdm_type) - if c.tag == "command": - printCOMMAND(c, dmobject, "\"usp\"") - if c.tag == "event": - printEVENT(c, dmobject, "\"usp\"") - - if check_obj == 1 and "tr-181" in sys.argv[1] and exist == 1: - chech_obj_with_other_obj(obj, dmobject) - - if hasobj and check_obj: - for c in model1: - objname = c.get('name') - if c.tag == "object" and dmobject.get('name') in objname and (objname.count('.') - objname.count('{i}')) == level: - printopenobject(c) - object_parse_childs(c, level+1, 0, 1) - printclosefile() - - if hasobj and check_obj == 0: - for c in model2: - objname = c.get('name') - if c.tag == "object" and dmobject.get('name') in objname and (objname.count('.') - objname.count('{i}')) == level: - printopenobject(c) - object_parse_childs(c, level+1, 0, 0) - printclosefile() - - return + for child in model: + if child.tag == "object": + object_parse_childs(main_obj, child, proto) -def generatejsonfromobj(pobj, pdir): - generatelist = 0 - bbf.create_folder(pdir) - removetmpfiles() - dmlevel = (pobj.get('name')).count(".") - \ - (pobj.get('name')).count("{i}.") + 1 - if (pobj.get('name')).count(".") == 1: - generatelist = 0 - else: - generatelistfromfile(pobj) - generatelist = 1 - printopenfile() - printopenobject(pobj) - object_parse_childs(pobj, dmlevel, generatelist, 1) - if "tr-181" in sys.argv[1] and Root.count(".") == 1: - chech_each_obj_with_other_obj(model1, model2) +def print_usage(): + print("Usage: python convert_dm_xml_to_json -d ") + print("Options:") + print(" -d, --directory : Directory containing XML files in pre-defined order to convert to JSON") + print("Example:") + print(" ./tools/convert_dm_xml_to_json.py -d test/tools/") - if "tr-181" in sys.argv[1] and pobj.get("name").count(".") == 1: - dmfp = open(pdir + "/tr181.json", "a", encoding='utf-8') - elif "tr-104" in sys.argv[1] and pobj.get("name").count(".") == 2: - dmfp = open(pdir + "/tr104.json", "a", encoding='utf-8') - elif "tr-135" in sys.argv[1] and pobj.get("name").count(".") == 2: - dmfp = open(pdir + "/tr135.json", "a", encoding='utf-8') - elif "tr-106" in sys.argv[1] and pobj.get("name").count(".") == 1: - dmfp = open(pdir + "/tr106.json", "a", encoding='utf-8') - else: - dmfp = open(pdir + "/" + (getname(pobj.get('name')) - ).lower() + ".json", "a", encoding='utf-8') - printclosefile() - printclosefile() - updatejsontmpfile() - removelastline() - - f = open("./.json_tmp", "r", encoding='utf-8') - obj = json.load(f, object_pairs_hook=OrderedDict) - dump = json.dumps(obj, indent=4) - tabs = re.sub('\n +', lambda match: '\n' + '\t' * - int(len(match.group().strip('\n')) / 4), dump) +def convert_xml_to_json(file_path): + #print("Converting XML to JSON:", file_path) + global XML_ROOT try: - print("%s" % tabs, file=dmfp) - dmfp.close() - except IOError: - pass + tree = xml.parse(file_path) + XML_ROOT = tree.getroot() + spec = XML_ROOT.get("spec") + if spec.endswith("cwmp"): + proto = "cwmp" + elif spec.endswith("usp"): + proto = "usp" + else: + proto = "both" - removetmpfiles() - return dmfp.name + for child in XML_ROOT: + if child.tag == "dataType": + process_datatypes(child) + if child.tag == "model": + model = child -def processDatatypes(datatype): - key = None - enum = None - des = None - if datatype.tag == "dataType": - key = datatype.get("name") - if key is None or len(key) == 0: + if model.tag != "model": + print("Wrong {} XML Data model format!".format(file_path)) return - if key in desc_dict.keys(): - return - - for dt in datatype: - if dt.tag == "description": - des = dt.text - break - - if des is None: - desc_dict[key] = "" - return - elif des.find('{{enum}}') != -1: - for c in datatype: - if c.tag == "string": - for e in c: - if e.tag == "enumeration": - if enum is None: - enum = "Enumeration of: " + e.get("value") - else: - enum = enum + ", " + e.get("value") - - if enum is not None: - enum = enum + "." - des = re.sub('{{enum}}', enum, des) - - des = des.replace("{", "<") - des = des.replace("}", ">") - des = des.replace("\'", "") - des = des.replace("\"", "") - desc_dict[key] = des + parse_xml_model(model, proto) + except xml.ParseError as e: + print("Error parsing XML file {}: {}".format(file_path, e)) -def getParamDesc(dmparam, key): - text = None - detail = None - enum = None - for s in dmparam: - if s.tag == "description": - text = s.text +if __name__ == "__main__": + # Check if the script is run with proper arguments + if len(sys.argv) != 3 or sys.argv[1] not in ("-d", "--directory"): + print_usage() + sys.exit(1) - if text is None or len(text) == 0: - return "" + # Check if the directory exists + directory = sys.argv[2] + if not os.path.isdir(directory): + print("Directory '{}' not found or not specified correctly.".format(directory)) + print_usage() + sys.exit(1) - if text.find('{{enum}}') != -1: - for s in dmparam: - if s.tag != "syntax": - continue + # Get a list of all files ending with ".xml" in the directory + xml_files = [file for file in os.listdir(directory) if file.endswith('.xml')] - for c in s: - if c.tag != "string": - continue + # Sort the list of filenames based on their prefixes + sorted_files = sorted(xml_files, key=lambda x: int(x.split('-')[0])) - for e in c: - if e.tag == "enumeration": - if enum is None: - enum = "Enumeration of: " + e.get("value") - else: - enum = enum + ", " + e.get("value") + # Process each XML file in the directory + for filename in sorted_files: + f_path = os.path.join(directory, filename) + convert_xml_to_json(f_path) - if enum is not None: - enum = enum + "." - text = re.sub('{{enum}}', enum, text) + json_object = {} + for entry_list in LIST_DATA_MODEL: + add_to_dict(json_object, entry_list) - if text.find('{{datatype|expand}}') != -1 and key is not None: - try: - detail = desc_dict[key] - except KeyError: - detail = None + # Convert JSON object to JSON string with indentation + json_str = json.dumps(json_object, indent="\t") - if detail is not None: - text = re.sub('{{datatype|expand}}', detail, text) - - text = text.replace("{", "<") - text = text.replace("}", ">") - text = text.replace("\'", "") - text = text.replace("\"", "") - text = text.replace("\n", "") - text = text.replace("\\d", "\\\\d") - text = text.replace("\\.", "\\\\.") - desc = ' '.join(text.split()) - return desc - - -### main ### -if len(sys.argv) < 4: - printusage() - -if (sys.argv[1]).lower() == "-h" or (sys.argv[1]).lower() == "--help": - printusage() - -is_service_model = 0 -model_root_name = "Root" - -tree1 = xml.parse(sys.argv[1]) -xmlroot1 = tree1.getroot() -model1 = xmlroot1 - -for child in model1: - if child.tag == "dataType": - processDatatypes(child) - - if child.tag == "model": - model1 = child - -if model1.tag != "model": - print("Wrong %s XML Data model format!" % sys.argv[1]) - exit(1) - -dmroot1 = None -for dr in model1: - if dr.tag == "object" and dr.get("name").count(".") == 1: - dmroot1 = dr - break - -# If it is service data model -if dmroot1 is None: - is_service_model = 1 - for dr in model1: - if dr.tag == "object" and dr.get("name").count(".") == 2: - dmroot1 = dr - break - -if dmroot1 is None: - print("Wrong %s XML Data model format!" % sys.argv[1]) - exit(1) - -if "tr-181" in sys.argv[1] or "tr-104" in sys.argv[1]: - tree2 = xml.parse(sys.argv[2]) - xmlroot2 = tree2.getroot() - model2 = xmlroot2 - - for child in model2: - if child.tag == "dataType": - processDatatypes(child) - - if child.tag == "model": - model2 = child - - if model2.tag != "model": - print("Wrong %s XML Data model format!" % sys.argv[2]) - exit(1) - - dmroot2 = None - for dr in model2: - if dr.tag == "object" and dr.get("name").count(".") == 1: - dmroot2 = dr - break - - # If it is service data model - if dmroot2 is None: - for dr in model2: - if dr.tag == "object" and dr.get("name").count(".") == 2: - dmroot2 = dr - break - - if dmroot2 is None: - print("Wrong %s XML Data model format!" % sys.argv[2]) - exit(1) - -Root = sys.argv[3] - -if "tr-181" in sys.argv[1]: - gendir = "tr181_" + time.strftime("%Y-%m-%d_%H-%M-%S") -elif "tr-104" in sys.argv[1]: - gendir = "tr104_" + time.strftime("%Y-%m-%d_%H-%M-%S") - Root = (sys.argv[3])[len("Device.Services."):] -elif "tr-135" in sys.argv[1]: - gendir = "tr135_" + time.strftime("%Y-%m-%d_%H-%M-%S") - Root = (sys.argv[3])[len("Device.Services."):] -elif "tr-106" in sys.argv[1]: - gendir = "tr106_" + time.strftime("%Y-%m-%d_%H-%M-%S") -else: - gendir = "source_" + time.strftime("%Y-%m-%d_%H-%M-%S") - -objstart = getobjectpointer(Root) - -if objstart is None: - print("Wrong Object Name! %s" % Root) - exit(1) - -filename = generatejsonfromobj(objstart, gendir) - -print(filename) + # Write JSON string to a file named datamodel.json + with open("datamodel.json", "w", encoding="utf-8") as json_file: + json_file.write(json_str) + + print("datamodel.json") diff --git a/tools/generate_dm.py b/tools/generate_dm.py index 0725b6b3..06c0615a 100755 --- a/tools/generate_dm.py +++ b/tools/generate_dm.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane import sys import json @@ -114,7 +114,7 @@ else: if _format == "xls": output_file_name = output_dir + '/' + output_file_prefix + '.xls' - bbf_excel.generate_excel(['tr181', 'tr104'], output_file_name) + bbf_excel.generate_excel(output_file_name) print("Datamodel generation completed, aritifacts shall be available in out directory or as per input json configuration") diff --git a/tools/generate_dm_excel.py b/tools/generate_dm_excel.py index 556d737a..0edbbee9 100755 --- a/tools/generate_dm_excel.py +++ b/tools/generate_dm_excel.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane from collections import OrderedDict @@ -66,39 +66,27 @@ def parse_vendor_object(list_read, list_write): add_data_to_list_dm(list_write, param, "Yes", "No") -def load_json_data(dm_name): - JSON_FILE = bbf.ARRAY_JSON_FILES.get(dm_name, None) - if JSON_FILE is None: - print(f"!!!! {dm_name} : Data Model doesn't exist") - return None - - with open(JSON_FILE, "r", encoding='utf-8') as file: - return json.load(file, object_pairs_hook=OrderedDict) - -def parse_object(dm_name_list, list_read, list_write, proto): - for dm in dm_name_list: - data = load_json_data(dm) +def parse_object(list_read, list_write, proto): + with open(bbf.DM_JSON_FILE, "r", encoding='utf-8') as file: + data = json.load(file, object_pairs_hook=OrderedDict) if data is not None: for obj, value in data.items(): if obj is None: - print(f'!!!! {dm} : Wrong JSON Data model format!') + print(f'!!!! {bbf.DM_JSON_FILE} : Wrong JSON Data model format!') else: parse_standard_object(list_read, list_write, obj, value, proto) parse_vendor_object(list_read, list_write) -def parse_object_tree(dm_name_list): - if isinstance(dm_name_list, list) is False: - return None - +def parse_object_tree(): # Usage for USP Data Model LIST_SUPPORTED_USP_DM = bbf.LIST_SUPPORTED_USP_DM - parse_object(dm_name_list, LIST_SUPPORTED_USP_DM, LIST_USP_DM, "usp") + parse_object(LIST_SUPPORTED_USP_DM, LIST_USP_DM, "usp") # Usage for CWMP Data Model LIST_SUPPORTED_CWMP_DM = bbf.LIST_SUPPORTED_CWMP_DM[:] - parse_object(dm_name_list, LIST_SUPPORTED_CWMP_DM, LIST_CWMP_DM, "cwmp") + parse_object(LIST_SUPPORTED_CWMP_DM, LIST_CWMP_DM, "cwmp") def generate_excel_sheet(sheet, title, data, style_mapping): style_title = style_mapping["title"] @@ -182,10 +170,10 @@ def generate_excel_file(output_file): wb.save(output_file) -def generate_excel(dm_name_list, output_file="datamodel.xml"): +def generate_excel(output_file="datamodel.xml"): print("Generating BBF Data Models in Excel format...") - parse_object_tree(dm_name_list) + parse_object_tree() generate_excel_file(output_file) if os.path.isfile(output_file): @@ -201,14 +189,6 @@ if __name__ == '__main__': epilog='Part of BBF-tools, refer Readme for more examples' ) - parser.add_argument( - '-d', '--datamodel', - action = 'append', - metavar='tr181', - choices= ['tr181', 'tr104'], - required= True, - ) - parser.add_argument( '-r', '--remote-dm', action='append', @@ -253,6 +233,6 @@ if __name__ == '__main__': plugins.append(r) bbf.generate_supported_dm(args.vendor_prefix, args.vendor_list, plugins) - generate_excel(args.datamodel, args.output) + generate_excel(args.output) print(f'Datamodel generation completed, aritifacts available in {args.output}') sys.exit(bbf.BBF_ERROR_CODE) diff --git a/tools/generate_dm_xml.py b/tools/generate_dm_xml.py index b01acf4a..642b791b 100755 --- a/tools/generate_dm_xml.py +++ b/tools/generate_dm_xml.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane import os import sys diff --git a/tools/tools_input.json b/tools/tools_input.json index 77752bc1..b89e9138 100644 --- a/tools/tools_input.json +++ b/tools/tools_input.json @@ -9,8 +9,7 @@ "iopsys" ], "dm_json_files": [ - "libbbfdm/dmtree/json/tr181.json", - "libbbfdm/dmtree/json/tr104.json", + "libbbfdm/dmtree/json/datamodel.json", "libbbfdm/dmtree/vendor/iopsys/vendor.json" ], "vendor_prefix": "X_IOPSYS_EU_", diff --git a/tools/validate_json_plugin.py b/tools/validate_json_plugin.py index 632405d2..a879a40c 100755 --- a/tools/validate_json_plugin.py +++ b/tools/validate_json_plugin.py @@ -1,7 +1,7 @@ #!/usr/bin/python3 -# Copyright (C) 2021 iopsys Software Solutions AB -# Author: Amin Ben Ramdhane +# Copyright (C) 2024 iopsys Software Solutions AB +# Author: Amin Ben Romdhane import sys import json @@ -276,7 +276,7 @@ command_schema = { def print_validate_json_usage(): print("Usage: " + sys.argv[0] + " ") print("Examples:") - print(" - " + sys.argv[0] + " tr181.json") + print(" - " + sys.argv[0] + " datamodel.json") print(" ==> Validate the json file") print("") exit(1)