USSD запрос баланса

Обсуждение ПО и его настройки
oleg.pitsenko
Сообщения: 1
Зарегистрирован: 25 авг 2019, 08:00

Что то я разобраться никак не могу на команду запроса баланса:
/interface lte at-chat lte1 input="AT+CUSD=1,\"*121#\",15"
Выдает в логе:
07:53:10 gsm,info USSD: B
07:53:10 gsm,info ibL)Ga Hi3PMA5y!8OueA4fJ\r+F\r. f=#7.Z0lN8Ku$A2rJiCPMOD2j!Af!$s6AZ4O=kVLO<,!dq$uN#BO@!OLO<f!DKP/TDdU$CYFOS9ODIceo'oZOGieY4yJ$!v\rHS3O!AcE(

Как мне это расшифровать?


Dark_Ph0eNix
Сообщения: 1
Зарегистрирован: 08 дек 2021, 06:06

Написал на Python скрип для дешифровки USSD ответа из Mikrotik как читая латиница так и кириллица.
Модем LTE: R11e-LTE

Код: Выделить всё

print('**************')
print('Для получения ответа на USSD запрос в Mikritk необходимо выполнить следующие комманды в консоле:')
print('1. "/system logging add topics=lte,!raw"')
print('2. "/interface lte at-chat lte1 input="AT+CUSD=1,\\\"{USSD}\\\",15""')
print('\t {USSD} - заменить на нужный USSD запрос')
print('\t "/interface lte at-chat lte1 input="AT+CUSD=1,\\\\"*111#\\\\",15""')
print('3. "/log print"')
print('\t найти строку где есть "+CUSD:"')
print('\t скопировать текст указанный в двойных кавычках и вставить в текущее программу')
print('\t "+CUSD: 0,"EBB79B1E0685E9ECF4BADE9E03", 0 "')
print('**************')
print()


hex_ussd = input('Введите текст из лога консоли Mikrotik на запрос USSD\n')

if (hex_ussd[0:1] == '0'):
	message = bytes.fromhex(hex_ussd).decode('utf-16be')
else:
	message = bytes.fromhex(hex_ussd).decode('utf8')

print()
print('Дешифрованный текст:')
print(message)


HorekRediskovich
Сообщения: 1
Зарегистрирован: 14 апр 2021, 18:16

Пишу команду как сказано в документации:

Код: Выделить всё

/interface lte at-chat lte1 input="AT+CUSD=1,\"*101#\",15"
В ответ получаю:
[admin@MikroTik] > /interface lte at-chat lte1 input="AT+CUSD=1,\"*101#\",15"
output: OK

[admin@MikroTik] >
Иду в логи и там вижу следующее:
2025-08-10 12:31:24 lte,async lte1: sent AT+CUSD=1,"*101#",15
2025-08-10 12:31:24 lte,async lte1: rcvd OK
2025-08-10 12:31:25 lte,debug lte1 mbim: >>> N #0 - connect: register state
2025-08-10 12:31:25 lte,packet lte1 mbim: status data:
2025-08-10 12:31:25 lte,packet lte1 mbim: 00000000 03000000 01000000 08000000
2025-08-10 12:31:25 lte,packet lte1 mbim: 01000000 30000000 0a000000 3c000000
2025-08-10 12:31:25 lte,packet lte1 mbim: 10000000 4c000000 00000000 00000000
2025-08-10 12:31:25 lte,packet lte1 mbim: 32003500 35003000 31000000 56004f00
2025-08-10 12:31:25 lte,packet lte1 mbim: 44004100 46004f00 4e004500
2025-08-10 12:31:25 lte,debug lte1 mbim: register state: home, gsm operator: 25501, VODAFONE, avail data c
lasses: 0x8
2025-08-10 12:31:25 lte,debug lte1 mbim: >>> N #0 - connect: packet service
2025-08-10 12:31:25 lte,packet lte1 mbim: status data:
2025-08-10 12:31:25 lte,packet lte1 mbim: 00000000 02000000 08000000 00002003
2025-08-10 12:31:25 lte,packet lte1 mbim: 00000000 00006009 00000000
2025-08-10 12:31:25 lte,debug lte1 mbim: packet service: attached data class: HSDPA
2025-08-10 12:31:25 lte,debug lte1 mbim: >>> N #0 - conn_ext: lte attach status
2025-08-10 12:31:25 lte,packet lte1 mbim: status data:
2025-08-10 12:31:25 lte,packet lte1 mbim: 01000000 01000000 28000000 36000000
2025-08-10 12:31:25 lte,packet lte1 mbim: 60000000 00000000 60000000 00000000
2025-08-10 12:31:25 lte,packet lte1 mbim: 00000000 00000000 69006e00 74006500
2025-08-10 12:31:25 lte,packet lte1 mbim: 72006e00 65007400 2e004d00 4e004300
2025-08-10 12:31:25 lte,packet lte1 mbim: 30003000 31002e00 4d004300 43003200
2025-08-10 12:31:25 lte,packet lte1 mbim: 35003500 2e004700 50005200 53000000

[admin@MikroTik] >
И нет ничего похожего на пример приведенный в документации:
/log print
11:51:20 lte,async lte1: sent AT+CUSD=1,"*245#",15
11:51:20 lte,async lte1: rcvd OK
11:51:23 lte,async,event +CUSD: 0,"EBB79B1E0685E9ECF4BADE9E03", 0
11:51:23 gsm,info USSD: konta atlikums
Модем FG621-EA.
Подскажите пожалуйста может я что-то не так делаю?


Ответить