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

помогите разабраться с проверкой беланса симки

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

Один из - использование операторского голосового меню. Звоните на устройство, оно соединяет в режиме конференции с оператором, ну и далее ручками по пунктикам меню... нудно, но верняк. При наличии DTMF-декодера в устройстве номер операторской службы тоже можно ручками набрать.

Но таких вариантов может и не быть (вот у нашего Киевстара нет). В принципе, возможно так: с некоего диспетчерского модема на устройство отсылается SMS с просьбой запросить состояние счёта (или же мобильное устройство делает запрос по расписанию или каким-то событиям) - потом "тело" ответного USSD тупо, "как есть", отсылается SMS-кой обратно на диспетчерский модем, а там уже производятся разборки... по крайней мере в случае неожиданностей не нужно апдейтить встроенное ПО мобильных устройств, только диспетчерское. Но тут тоже подводный камушек - в устройстве запросто может не хватить средств на отправку SMS! Отчасти спасает дистанционное пополнение баланса (перевод), опять же, если оператор поддерживает.

 

(Попутно... некоторые операторы ещё объём GPRS-трафика по USSD рассказывают... и тоже форматы самые разнообразные...)

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


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

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

 

как говорится "умный человек с достоинством выпутается из ситуации, в которую мудрый не попадёт"

 

 

проверять баланс не в самом устройстве не всегда удобно. кто-то может забыть это сделать и т.д... так что чем меньше человеческого фактора тем лучше. не так ли? :-) поэтому лучше бы чтобы системка могла функционировать на автомате. и оптять же приятно когда тебе вежливо сообщают и у тебя не болит голова что там и как. :-)

 

уважаемые! мы слегка отклонились от темы. так знает кто-то точно или нет что за параметры 0 и 15 в ответе на USSD-запрос? :

 

+CUSD: 0,"Vash balans 112,16 rub. ",15 OK?

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


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

уважаемые! мы слегка отклонились от темы. так знает кто-то точно или нет что за параметры 0 и 15 в ответе на USSD-запрос? :

 

+CUSD: 0,"Vash balans 112,16 rub. ",15 OK?

Заглянув в компэловский талмуд, сообщаю: ;)

Первый параметр (который у Вас 0):

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

1: от пользователя требуются дальнейшие действия (инициированный сетью запрос USSD или требуется информация после операции, инициированной мобильным устройством)

2: USSD отключены сетью

4: операция не поддерживается

Дальше "тело" ответного сообщения.

И последний параметр - кодировка:

<dcs>: получаемая схема кодирования данных (GSM TS 03.38).

 

Для транслита 15, кириллица - 68 вроде (см. пример ниже). То есть расшифровать автоматически можно, используя этот параметр.

(Есть нюанс, SIM300 он не касается, но касается PIML-ов и некоторых других. Не могут определить конец сообщения, в итоге длина его достигает почти 600 байт :( )

 

Вот примеры.

Life:

+CUSD: 2,"Dlya otrymannya bonusa 50hrn zalyshylos vykorystaty 49hrn do 31.07. Balans 5.11hrn, bonus 0.00hrn. Vyhidni poslugy do 15.10.07 .",15

 

МТС-Украина:

 

+CUSD: 0,"3238205541482C2064656A7374766974656C656E20646F2032302E30362E323030382C20746

17269666E796A2070",68 - ерунда какая-то здесь отображается, да вроде понятно ;)

 

Билайн-Украина:

+CUSD: 2,"Suma na rahunku: 3.32 grn, na ulublenyy nomer 0.0 sec, SMS: 10.0, diysni do 2007-08-10 00:00:00, SMS v mereji: 0.0. Rahunok diysnyy do 2008-01-06 13:19:43.",15

 

Киевстар-припейд:

+CUSD: 2,"Na rahunku: 29.34 grn. Bonusy: 0.00 grn; 0 hvyl-UKR; akcia "12x12": 0.00 grn; 0.0 SMS.",15

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


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

огромное спасибо. :-)

 

не совсем понял эту строку:

 

Для транслита 15, кириллица - 68 вроде (см. пример ниже). То есть расшифровать автоматически можно, используя этот параметр.

(Есть нюанс, SIM300 он не касается, но касается PIML-ов и некоторых других. Не могут определить конец сообщения, в итоге длина его достигает почти 600 байт :( )

 

т.е. SIM300 может сам расшифровывать кирилические сообщения? или я не правильно понял? если может, то каким образом? ткните носом в документацию плз. :-)

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


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

т.е. SIM300 может сам расшифровывать кирилические сообщения? или я не правильно понял? если может, то каким образом? ткните носом в документацию плз. :-)
Нет, не сам, конечно... но можно расшифровать, вооружившись вот этим документом: GSM TS 03.38.

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


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

спасибо огромное :-)

 

хочу ещё один момент уточнить: в документации симкома (SIM300D_ATC_V1.06) есть такое:

 

AT+CUSD=[<n>[,<str>[,<dcs>]], где

 

<n> a numeric parameter which indicates control of the unstructured supplementary service data

0 disable the result code presentation in the TA

1 enable the result code presentation in the TA

2 cancel session (not applicable to read command response)

<str> string type USSD-string

<dcs> Cell Broadcast Data Coding Scheme in integer format (default 0)

 

в этом этом же самом файле, правда в описании другой команды для <dcs> есть следующие параметры:

 

<dcs > integer: data coding scheme used for <text>.

The schemes used are as per GSM 03.38 for SMS.

0 7bit GSM default alphabet (packed)

4 8bit data

8 UCS2 alphabet

 

являются ли эти параметры одинаковыми для всех команд, где надо указывать схему кодированния данных?

 

правильным ли будет такой запрос? :

 

AT+CUSD=1,"*100#",4

 

чтобы получить USSD-ответ проверки счета в латинице? не судите строго, если туплю. :-)

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


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

Я думаю это относится к кодировке отпраляемого запроса, а не ответа. Может не прав. Сейчас тоже с этим разбираюсь.

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


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

здравствуйте, уважаемые. :-)

 

кажись разобрался я в своей проблеме. канеш паниаю, что матерым программистам моё открытие покажется мелковатым, но на форуме же не только гуру... есть люди у которых столько же вопросов сколько и у меня. так что делюсь. :-)

 

прогнал запросы которые у меня не шли в програме в гипертерпинале... и выяснилось, что при получении USSD проверки баланса в кирилице длинна, строки, возвращаемой модемом может достигать приблизительно 300 знаков, а возможно и больше... так что у меня бсе сводилось к банальному переполнению промежуточного буффера, в который я выдергваю данные из кольцевого, в который велятся данные с последовательного порта. такая вот загагулина.

 

с транслитом все работает замечательно и без проблем. а вот с кирилицей надо будет ещё поработать.

 

такая вот загогулина. всем спасибо, кто помогал. :-)

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


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

 
AT+CSCS="UCS2"
OK
AT+CUSD=0,"002A0031003000320023"
+CUSD: 0,"04110430043B0430043D044100200030002E0030003300200434043E043B043B002E00
200414043E002000330031002E00310032002E0030003800200413043E0432043E0440044F044904
3504350020043F04380441044C043C043E002D003100350020043A043E043F04350435043A002E04
18043D0444043E0020003000360030003400330034"

OK

Кодировку команды CUSD третьим параметром пробовал указывать, не помогло. Правда не СимКом, а сониерикссон т610 :)

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


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

на днях разбирался с проверкой счета через ussd, все замечательно получается, по ходу возник интересный врпрос:если в лайфе послать запрос *123#,приходит в ответ меню с приглашением выбрать пункт. на мобилке все просто- жмем соответствующую цифру и входим в следующий уровень меню. а как это правильно сделать с терминалки?

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


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

на мобилке все просто- жмем соответствующую цифру и входим в следующий уровень меню. а как это правильно сделать с терминалки?
Подозреваю, что выдать AT-команду формирования DTMF-сигнала, соответствующего клавише с цифрой.

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


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

Насколько помню, снова AT+CUSD, например, 2-й пункт: AT+CUSD=1,"2".

Память не подвела: :)

at+cusd=1,"*123#"at+cusd=1,"*123#"

 

+CUSD: 1,"1.Kontent bez mezh

2.Novi Igry

3.Shoker!

4.Otrymaite Pryzy

5.Internet

6.life:) Sotnya&Tysiacha

7.Perekaz balansu

8.MeloRing

9.Kartynky i melodii

10.lifebox bils",15

PLEASE SELECT

 

OK

at+cusd=1,"7"at+cusd=1,"7"

 

+CUSD: 1,"1.Akciya

2.Opys

3.Yak zapytaty perekaz balansu

4.Perekazaty balans

5.Vartist'

0.Nazad",15

PLEASE SELECT

 

OK

at+cusd=1,"5"at+cusd=1,"5"

 

+CUSD: 1,"SMS-zapyt z prohanniam pro perekaz balansu ne oplachuiet'sia. Vartist' odnogo uspishnogo perekazu balansu stanovyt' 0,70 hrn (z PDV, bez PF).

0. Nazad",15

PLEASE SELECT

 

OK

at+cusd=1,"0"at+cusd=1,"0"

 

+CUSD: 1,"1.Akciya

2.Opys

3.Yak zapytaty perekaz balansu

4.Perekazaty balans

5.Vartist'

0.Nazad",15

PLEASE SELECT

 

OK

На повторы команд в одной строке внимания не обращайте - это Easyport так эхо отображает.

(off) Попутно выяснил, что повысилась стоимость перевода. Хотя бы SMS-кой известили, что ли...

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


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

Однако не без "ложки дёгтя". USSD-меню может тасоваться оператором произвольным образом, и не факт, что нужный пункт не будет в любой момент перемещён или переименован. :( С лайфовским меню, кроме того, некорректно работают некоторые терминалы (на чипсете MTK в основном - вплоть до рестарта).

SIM Toolkit, по наблюдениям, более стабильная вещь, зависит в основном от партии карточек, хотя в принципе приложение в современную SIM-карту можно загрузить и по эфиру. (Мутновато, правда, с ним работать).

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


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

Вопрос для тех кто с Украины. Есть симки Лайфа, Киевстара и Джинс. Как сделать что бы хоть один из этих операторов запрос о балансе возвращал кириллицей??? Пишу прогу о проверке баланса, нужно рассмотреть вариант с кириллицей.

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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