{ "json_plugin_version": 2, "Device.{BBF_VENDOR_PREFIX}NetMode.": { "type": "object", "protocols": [ "cwmp", "usp" ], "description": "Datamodel vendor extension to support easy switching between wan types, a reboot is required in some cases after switching the mode", "access": false, "array": false, "dependency": "file:/etc/config/netmode", "Enable": { "type": "boolean", "read": true, "write": true, "description": "Enable/Disable WAN switching using netmode", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "name": "global" }, "option": { "name": "enabled" } } } ] }, "Mode": { "type": "string", "read": true, "write": true, "description": "Current configured netmode value", "protocols": [ "cwmp", "usp" ], "flags": [ "Reference" ], "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "name": "global" }, "option": { "name": "mode" } }, "linker_obj": "Device.{BBF_VENDOR_PREFIX}NetMode.SupportedModes.*.Name" } ] }, "SupportedModesNumberOfEntries": { "type": "unsignedInt", "read": true, "write": false, "description": "SupportedModes Number of entries in the current config", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "type": "supported_modes" }, "option": { "name": "@Count" } } } ] }, "Device.{BBF_VENDOR_PREFIX}NetMode.SupportedModes.{i}.": { "type": "object", "protocols": [ "cwmp", "usp" ], "access": false, "array": true, "description": "Object to list supported wan modes", "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "type": "supported_modes" }, "dmmapfile": "dmmap_netmode" } } ], "Name": { "type": "string", "read": true, "write": false, "description": "Name of the wan mode, it has to be unique and in sync with /etc/netmodes/", "protocols": [ "cwmp", "usp" ], "flags": [ "Linker", "Unique" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "name" } ] }, "Description": { "type": "string", "read": true, "write": false, "description": "Human readable description for this mode", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "description" } ] }, "SupportedArgumentsNumberOfEntries": { "type": "unsignedInt", "read": true, "write": false, "description": "SupportedModes Number of entries in the current config", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "type": "supported_args" }, "option": { "name": "@Count" } } } ] }, "Device.{BBF_VENDOR_PREFIX}NetMode.SupportedModes.{i}.SupportedArguments.{i}.": { "type": "object", "protocols": [ "cwmp", "usp" ], "access": false, "array": true, "description": "Extra arguments for this Mode", "mapping": [ { "type": "uci", "uci": { "file": "netmode", "section": { "type": "supported_args" }, "dmmapfile": "dmmap_netmode" } } ], "Name": { "type": "string", "read": true, "write": false, "description": "Name of the argument", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "name" } ] }, "Type": { "type": "string", "read": true, "write": true, "description": "Datatype for this argument", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "type" } ] }, "Description": { "type": "string", "read": true, "write": false, "description": "Human readable description for this Argument", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "description" } ] }, "Required": { "type": "boolean", "read": true, "write": false, "description": "If Required is true, then Name and Value is mandatory for mode to apply", "protocols": [ "cwmp", "usp" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "required" } ] }, "Value": { "type": "string", "read": true, "write": true, "description": "Value for this SupportedArguments Name, get on this parameter result into empty output", "protocols": [ "cwmp", "usp" ], "flags": [ "Secure" ], "mapping": [ { "type": "uci_sec", "data": "@Parent", "key": "value" } ] } } } } }