Napisałem w pierwszym zdaniu że tak.
A co do drugiego: sneak preview: wymyśliłem sobie że zrobi się jsona z opisem parametrów, na chwilę bieżącą wygląda on np. tak dla EG12:
{
"settings": [
{
"id": 1,
"description": "Roaming",
"status": "AT+QCFG=\"roamservice\"",
"parser": "^+QCFG:\\s*\"roamservice\",\\s*\\(.*\\)$",
"actions": [
{"id": 1, "name": "Automatic", "commands": ["AT+QCFG=\"roamservice\",255"], "value": "255"},
{"id": 2, "name": "Enabled", "commands": ["AT+QCFG=\"roamservice\",2"], "value": "2"},
{"id": 3, "name": "Disabled", "commands": ["AT+QCFG=\"roamservice\",1"], "value": "1"}
]
},{
"id": 2,
"description": "Network search mode",
"status": "AT+QCFG=\"nwscanmode\"",
"parser": "^+QCFG:\\s*\"nwscanmode\",\\s*\\(.*\\)$",
"actions": [
{"id": 1, "name": "Automatic", "commands": ["AT+QCFG=\"nwscanmode\",0"], "value": "0"},
{"id": 2, "name": "LTE only", "commands": ["AT+QCFG=\"nwscanmode\",3"], "value": "3"},
{"id": 3, "name": "3G only", "commands": ["AT+QCFG=\"nwscanmode\",2"], "value": "2"}
]
},{
"id": 3,
"description": "Sequence of searching network",
"status": "AT+QCFG=\"nwscanseq\"",
"parser": "^+QCFG:\\s*\"nwscanseq\",\\s*\\(.*\\)$",
"restart": true,
"actions": [
{"id": 1, "name": "Automatic", "commands": ["AT+QCFG=\"nwscanseq\",00", "AT+CFUN=1,1"], "value": "00"},
{"id": 2, "name": "LTE, WCDMA, GSM, CDMA, TD-SCDMA", "commands": ["AT+QCFG=\"nwscanseq\",0403010502", "AT+CFUN=1,1"], "value": "0403010502"},
{"id": 3, "name": "WCDMA, GSM", "commands": ["AT+QCFG=\"nwscanseq\",0301", "AT+CFUN=1,1"], "value": "0301"},
{"id": 4, "name": "LTE, WCDMA", "commands": ["AT+QCFG=\"nwscanseq\",0403", "AT+CFUN=1,1"], "value": "0403"}
]
}
]
}
A gui to automatycznie wyrenderuje i zrobi z tego opcje do wyboru na podstawie zawartości tego jsona. Fizycznie wygląda to tak:
Nie jest na stałe zakodowane w htmlu tylko robi się samo na podstawie w/w jsona.