Почему некоторые команды USSD работают противоречиво? - PullRequest
0 голосов
/ 24 октября 2018

У меня есть несколько телефонных SIM-карт от разных поставщиков услуг, и я пытаюсь заставить USSD-коды работать надежно.

Для одной такой карты я знаю две USSD (MMI)?) коды, которые работают, когда я помещаю SIM-карту в телефон: *#61# и *101#.

Однако, когда я помещаю SIM-карту в модуль SIM800L и разговариваю с ней через экран / замазкуsession или arduino, работает только *101#.

После входа на SIM-карту и установки формата сообщения «text» это работает:

AT+CUSD=1,"*101#"
OK

+CUSD: 0, "U maakt gebruik van het Standaard plan. Uw Lycamobile beltegoed is  0.00 waardeer op via Lycamobile.nl", 1

, но это не работаетна любой SIM-карте у меня есть:

AT+CUSD=1,"*#61#"
OK

+CUSD: 2

Для этой SIM-карты на моем телефоне я получаю два предложения типа «Переадресация вызовов» «Голос: +31684000130 через 25 секунд».Другие SIM-карты отвечают различными сообщениями, содержащие до 10 строк текста.

Что касается других SIM-карт, код *101# недоступен.

Прежде чем использовать USSD-кодыдля отправки необратимых команд, таких как обновление предоплаченного баланса, я хочу выяснить, почему он несовместим с самого начала.

(все настройки, для тех, кто заинтересован:)

AT&V output (trimmed):
ACTIVE PROFILE
S0: 0
S3: 13
S4: 10
S5: 8
S6: 2
S7: 60
S8: 2
S10: 15
+CRLP: 61,61,48,6
V: 1
E: 1
Q: 0
X: 4
&C: 1
&D: 1
+CLTS: 0
+CREG: 0
+CGREG: 0
+CMEE: 0
+CIURC: 1
+CFGRI: 2
+CMTE: 0
+CANT: 0,0,10
+STKPCIS: 0
+CMGF: 1
+CNMI: 2,1,0,0,0
+CSCS: "IRA"
+VTD: 1
+CALS: 1
+CHF: 0
+CAAS: 1
+CBUZZERRING: 0
+DDET: 0
+MORING: 0
+SVR: 16
+CCPD: 1
+CSNS: 0
+CSGS: 1
+CNETLIGHT: 1
+SLEDS: 64,64,64,800,3000,300
+CSDT: 0
+CSMINS: 0
+EXUNSOL: 0
+FSHEX: 0
+FSEXT: 0
+IPR: 9600
+IFC: 0,0
+CSCLK: 0
...