Перейти к содержанию
    

Здравствуйте.

Каким образом можно осуществить USSD запрос? Используемая ранее команда не работает.

Проверили на разных SIM-картах разных операторов, результат одинаковый, в SIM800C на этих же карточках все работает...

[15:37:00] Recv: AT+CUSD=1,"*100#"
[15:37:00] Recv: 
[15:37:00] Recv: +CME ERROR: Operation not supported

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не пробовали перевести модуль в режим 2G?
Наши инженеры как раз сейчас работают над USSD запросами на этом модуле, да, пока есть трудности, но мы уже почти закончили работу над этим.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 минут назад, Hub сказал:

Не пробовали перевести модуль в режим 2G?

Какой командой это можно сделать?..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Команда: AT+CNMP=13 (режим GSM-only).

Попробуйте и поделитесь результатом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вчера, без принудительного переключения тоже был в GSM, результат тот же, что и сегодня с использованием AT+CNMP=13

AT+CPSI?
+CPSI: GSM,Online,...

AT+CUSD=1,"*100#"
+CME ERROR: Operation not supported

Как это можно будет победить?..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

С dcs=15 есть реакция, но строка ответа пуста... И что странно, в ответе модема dcs указан как 17.

С другими значениями dcs всегда ошибка.

AT+CUSD=1,"*100#",0
+CME ERROR: Operation not supported

AT+CUSD=1,"*100#",17
+CME ERROR: Operation not supported

AT+CUSD=1,"*100#",15
OK
+CUSD: 2,"", 17

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Отчитываюсь, наличие кавычек *100# и ввод AT+CSCS="GSM" или AT+CSCS="IRA" или AT+CSCS="UCS2" никак не влияет на результат.

Попробовал МТС (до этого был А1), МТС отдает нормальный ответ на запрос с dcs=15 (хотя в конце ответа указывает dcs=0), надо еще попробовать Life, сейчас нет карточки под рукой.

AT+CUSD=1,*100#,15
OK
+CUSD: 2,"Balans=9.08r MB=49.1 REKLAMA: Pylesosy, chajniki, kolonki - umnyj dom v MTS. Zvonite 210", 0

Получается что-то с кодировкой, если запрос проходит только с dcs=15 и один оператор отдает пустую строку с dcs=17, а второй нормальный ответ с dcs=0.

Может есть еще какие команды поэкспериментировать?...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

at+cscs="UCS2"
at+cusd=1,"002A0031003000300023"
 

Проблемы с кодировками полностью исчезают если работать в PDU и UCS2, в том числе и с SMS.

Один раз разобраться и забыть текстовые как страшный сон.

Поищите по форуму - CUSD, эта тема всплывала на всех поколениях модулей.

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После многочисленных проверок на всех наших операторах, подытожу: модем отказывается отдавать USSD ответы при любом значении AT+CSCS (в том числе UCS2), если ответы на кириллице...

И, судя по всему, ничего с этим не сделать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А у ваших операторов вот таких команд случайно нет?

Водафон - Украина

image.thumb.png.6f7c34dec538eb4f42ce94ff1fbb6d76.png

 

Вот сфоткал ответ оператора с моего телефона.

image.thumb.png.38cea05e28c39cf8720840d56d2a3149.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, есть у оператора А1 комбинация *115*0# для перевода в транслит, придется ее использовать у нас.

Однако не понятно, что делать с другими странами, у которых SIM900R/SIM800C отдавали USSD ответы в UCS2 (как я понимаю, в основном из-за символов отображения валюты), A7682E получается будет отдавать пустую строку...

----------

Кстати говоря, из 50 попыток, два раза модем выдал наподобие этого:
+CUSD: 2,"?#?A?B?0?=?>?2?;?5?=", 17 ("?" - это неотображаемый символ EOT в таблице ASCII, т.е. 0x04)

Если перевести в hex посимвольно: 0423 0441 0442 0430 043D 043E 0432 043B 0435 043D
Затем перевести из UCS2, получается слово "Установлен", но это неполный ответ, там оператор с хорошим объемом слов отвечает

Программисты софта под модем явно напортачили с обработкой USSD кодировок...

P.S. возможно баг заключается в том, исходя из описанного выше ответа модема, что они пытаются выплюнуть в терминал HEX, а надо перевести в ASCII

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все зависит от оператора. Не все операторы принимают нужные кодировки часто просто игнорируя запрос на исполнение конкретной кодировки. Т.е. иногда клиент в конце USSD запроса ставит 15, а сеть возвращает кодировку 17. Вне зависимости от этого, модуль A7672 сейчас возвращает ответ из сети без внутренней интерпретации через таблицу ASCII или как бы то ни было еще.

Главное на что нужно обратить внимание – чтобы CNMP был 2 или 13, т.к. не все операторы способны отработать USSD запрос в LTE. Мы уже несколько раз проверили и подтвердили, что модуль, например, в Москве автоматически проваливается в 2G и возвращается обратно после отработки USSD запроса и получения ответа из сети.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...