Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: SIM900 баланс
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > Сотовая связь и ее приложения
Страницы: 1, 2
GeGeL
В аттаче:
MKdemiurg
дык я ж говорю именно в ответе. А то write command

AT+CUSD=1,"*111#"..
А в ответ +CUSD: 0 , ....

PS Ещё порылся в инете по этой команде. Местами у людей запрос не пашет без 3 параметра. А вот что это за параметр непонятно...
V125
Уже поднималась темка Здесь
MKdemiurg
Ага понятно... НЕпонятно вот что...


Первый параметр:
Цитата
0: от пользователя не требуется никаких действий (инициированные се-тью уведомления USSD или больше не требуется информация после операции, инициированной мобильным устройством)
1: от пользователя требуются дальнейшие действия (инициированный сетью запрос USSD или требуется информация после операции, инициированной мобильным устройством)
2: USSD отключены сетью
4: операция не поддерживается


Почему тогда в той же теме и я встречал приходит ответ :

Цитата
+CUSD: 2,"Na rahunku: 29.34 grn......

Т.е. ориентироваться на значение 1го параметра всётаки нельзя...
otv116
Подыму-ка я тему. Может кто поможет..
MKdemiurg прав на счет первого параметра.
У себя я отправляю запрос AT+CUSD=1,"*100#" и жду ответа. Так вот, на 2-х операторах (Velcom и МТС) приходит +CUSD: 0,""Balans....".
А вот на еще одном операторе (Life:)) приходит +CUSD: 1,""Balans....".
Засада в том, что я ждал +CUSD: 0 (и повторял запрос,если было не 0) на что получал +CUSD: 0,"USSD sessia zavershena",64. В итоге девайс вместо строки баланса отсылал эту информацию. В принципе, ничего страшного, если узнать при каком значении этого параметра будет правильная строка ответа.
Я пробовал "#100#". Первые два оператора отвечают по прежнему, а третий +CUSD:2. ATD*100# имеет тот же эффект, что и AT+CUSD=1,"*100#".
Запросы AT+CUSD=? и AT+CUSD? дают одинаковые результаты у всех троих.
Кто-нибудь подскажет, как понять, с каким первым параметром будет присылать сообщение оператор?
zebrox
игнорю первый параметр
RadikX
Тоже принимаю за значение баланса первое встреченное число. Работает везде по России вроде без проблем, жалоб по крайней мере не поступало. Все операторы посылают сначала какую-нибудь лабуду со значением баланса, а потом рекламу. Но вот Tele2 иногда ровно в полночь меняет местами блок рекламы и блок с балансом, потом опять нормально.

Про необходимость проверки значения добавлю, что это точно надо. У нас , например, при понижении определенного порога начинает пользователю напоминать о необходимости пополнить счет, а при понижении до заланного критического порога переходить в режим деньгосбережения и слать только критические сообщения.
otv116
Насколько я понял, узнать придет CUSD: 1 или 0 невозможно заранее. Я как то не обратил внимание, что на этом Life на информацию о балансе телефон ждет ответа пользователя (Да/Нет), что как раз попадает под описание значений этого байта.
Буду как вы и советуете ждать строки с цифрами.
Вот только как бы не попасть на что-нибудь новое, типа "USSD sessia zavershena, happy 2013!" sm.gif
Romashki
Я на 0 или 1 вообще не обращаю внимания, ищу ' " ', затем цифры и после цифр должно быть или ' . ' или ' , ' или пробел.
otv116
Спасибо ответившим.
KARLSON
Цитата(RadikX @ Jan 9 2013, 09:44) *
Тоже принимаю за значение баланса первое встреченное число.


А если так: Баланс минус 85р. ?
RadikX
Цитата(KARLSON @ Jan 14 2013, 08:09) *
А если так: Баланс минус 85р. ?


У вас такое было? Идеального парсера быть не может. Даже если его сделать, учитывая все вариации, то, по закону подлости, назавтра операторы еще как-нибудь извернутся( например напишут MiНUС).
RadikX
Главной проблемой я все же считаю именно то, что операторы (в разных областях разные) иногда ( один-два раза в сутки) посылают в ответе на USSD запрос сначала блок рекламы, а только потом блок с балансом. Рашается повторным перезапросом через некоторое время, если разница с предыдущим значением стала вдруг слишком большой.
KARLSON
Цитата(RadikX @ Jan 14 2013, 09:51) *
У вас такое было?

Не знаю)) Я посылаю пользователю весь текст.
Integral
Сижу в терминале проверяю баланс, киестар, раз через раз от модуля приходит не полный ответ, SIM900R

Код
AT+CUSD=1,"*111#"
OK
+CUSD: 1,"Na rahunku: 17.14 grn. Info pro bonusy na *112# i *119#.**Zamovliajte tut! Natysnit' VIDPOVISTY ta nomer:1.INTERNET BEZ MEZH2.Kyivstar Klub3.IGRY ta 9.Vnyz",64

AT+CUSD=1,"*111#"
OK
+CUSD: 1,"**Zamovliajte tut! Natysnit' VIDPOVISTY ta nomer:1.INTERNET BEZ MEZH2.Kyivstar Klub3.IGRY ta APPS po 0 grn",64


Код
ATD*111#
OK
+CUSD: 1,"Na rahunku: 17.54 grn. Info pro bonusy na *112# i *119#.**Zamovliajte tut! Natysnit' VIDPOVISTY ta nomer:1.INTERNET BEZ MEZH2.Kyivstar Klub3.IGRY ta 9.Vnyz",64

ATD*111#
OK
+CUSD: 1,"**Zamovliajte tut! Natysnit' VIDPOVISTY ta nomer:1.INTERNET BEZ MEZH2.Kyivstar Klub3.IGRY ta APPS po 0 grn",64


Поставил симку в телефон, клацал проверку баланса, всегда все полностью приходило, на модуль SIM900R каждый второй запрос приходит не полностью, че делать? Задолбала мегодлинная реклама, да, ее можно отключить, но я очень сомневаюсь что пользователь будет ее отключать
Harbinger
Если и отключит, то не факт, что её тут же не включат обратно, прецеденты уже описывались.
Выход разве что в специальных контрактных M2M пакетах, с общим балансом на группу абонентов, который диспетчер сможет контролировать и пополнять удалённо.
mantech
Цитата(Harbinger @ Mar 10 2013, 16:25) *
Если и отключит, то не факт, что её тут же не включат обратно, прецеденты уже описывались.
Выход разве что в специальных контрактных M2M пакетах, с общим балансом на группу абонентов, который диспетчер сможет контролировать и пополнять удалённо.


Ну а если такой вариант - берем все то, что "выплюнул" модем и отправляем его в виде смски клиенту... Он уж разберется, ч то к чему...
Integral
Так модем не хочет плевать весь текст целиком, выше я пример показывал, в запросе баланса раз через раз приходит токо реклама без баланса, в телефоне баланс всегда приходит вместе с рекламой, телефон самсунг GT-E1080i, там вроде в телефоне точно такой же ЦПУ как и в модуле СИМ900, G4850, так кто встречал в терминале не полный приход баланса?
zebrox
Возможно опертаор разбивает ответ на несколько сообщений и передает их в пду формате.
Телефон нормально обрабатывает пду ответы, склеивает их вместе и отображает.
А сим, т.к. он настроен на текстовый режим, не может отображать склеенные сообщения, и делит их на два.
Не уверен что юссд можно принимать в пду формате.
KARLSON
мтс у нас теперь делает так: Your balance will be sent you by SMS. Теперь и смс-ки обрабатывать?
ilya-m
Цитата(KARLSON @ Apr 18 2013, 23:00) *
мтс у нас теперь делает так: Your balance will be sent you by SMS. Теперь и смс-ки обрабатывать?


Так у МТС это уже не один год наблюдается.

Да, приходится и СМС обрабатывать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.