Почему некоторые команды USSD работают противоречиво?

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

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

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

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

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

0 ответов

Другие вопросы по тегам