|
|
  |
помогите разабраться с проверкой беланса симки |
|
|
|
Oct 14 2008, 18:12
|

старший лаборант
     
Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097

|
Цитата(edo @ Oct 14 2008, 15:36)  согласен - разобраться можно. но только вот зачем - если есть варианты не проверять баланс на самом устройстве. Один из - использование операторского голосового меню. Звоните на устройство, оно соединяет в режиме конференции с оператором, ну и далее ручками по пунктикам меню... нудно, но верняк. При наличии DTMF-декодера в устройстве номер операторской службы тоже можно ручками набрать. Но таких вариантов может и не быть (вот у нашего Киевстара нет). В принципе, возможно так: с некоего диспетчерского модема на устройство отсылается SMS с просьбой запросить состояние счёта (или же мобильное устройство делает запрос по расписанию или каким-то событиям) - потом "тело" ответного USSD тупо, "как есть", отсылается SMS-кой обратно на диспетчерский модем, а там уже производятся разборки... по крайней мере в случае неожиданностей не нужно апдейтить встроенное ПО мобильных устройств, только диспетчерское. Но тут тоже подводный камушек - в устройстве запросто может не хватить средств на отправку SMS! Отчасти спасает дистанционное пополнение баланса (перевод), опять же, если оператор поддерживает. (Попутно... некоторые операторы ещё объём GPRS-трафика по USSD рассказывают... и тоже форматы самые разнообразные...)
--------------------
Китайская комплектация - европейское качество! ;)
|
|
|
|
|
Oct 15 2008, 03:55
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704

|
Цитата(edo @ Oct 14 2008, 18:36)  согласен - разобраться можно. но только вот зачем - если есть варианты не проверять баланс на самом устройстве.
как говорится "умный человек с достоинством выпутается из ситуации, в которую мудрый не попадёт" проверять баланс не в самом устройстве не всегда удобно. кто-то может забыть это сделать и т.д... так что чем меньше человеческого фактора тем лучше. не так ли? :-) поэтому лучше бы чтобы системка могла функционировать на автомате. и оптять же приятно когда тебе вежливо сообщают и у тебя не болит голова что там и как. :-) уважаемые! мы слегка отклонились от темы. так знает кто-то точно или нет что за параметры 0 и 15 в ответе на USSD-запрос? : +CUSD: 0,"Vash balans 112,16 rub. ",15 OK?
|
|
|
|
|
Oct 15 2008, 04:55
|

старший лаборант
     
Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097

|
Цитата(олег_уфа_81 @ Oct 15 2008, 06:55)  уважаемые! мы слегка отклонились от темы. так знает кто-то точно или нет что за параметры 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
--------------------
Китайская комплектация - европейское качество! ;)
|
|
|
|
|
Oct 15 2008, 08:56
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704

|
огромное спасибо. :-) не совсем понял эту строку: Для транслита 15, кириллица - 68 вроде (см. пример ниже). То есть расшифровать автоматически можно, используя этот параметр. (Есть нюанс, SIM300 он не касается, но касается PIML-ов и некоторых других. Не могут определить конец сообщения, в итоге длина его достигает почти 600 байт  ) т.е. SIM300 может сам расшифровывать кирилические сообщения? или я не правильно понял? если может, то каким образом? ткните носом в документацию плз. :-)
|
|
|
|
|
Oct 16 2008, 09:26
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704

|
спасибо огромное :-)
хочу ещё один момент уточнить: в документации симкома (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-ответ проверки счета в латинице? не судите строго, если туплю. :-)
|
|
|
|
|
Oct 22 2008, 08:10
|
Участник

Группа: Участник
Сообщений: 35
Регистрация: 28-12-07
Пользователь №: 33 704

|
здравствуйте, уважаемые. :-)
кажись разобрался я в своей проблеме. канеш паниаю, что матерым программистам моё открытие покажется мелковатым, но на форуме же не только гуру... есть люди у которых столько же вопросов сколько и у меня. так что делюсь. :-)
прогнал запросы которые у меня не шли в програме в гипертерпинале... и выяснилось, что при получении USSD проверки баланса в кирилице длинна, строки, возвращаемой модемом может достигать приблизительно 300 знаков, а возможно и больше... так что у меня бсе сводилось к банальному переполнению промежуточного буффера, в который я выдергваю данные из кольцевого, в который велятся данные с последовательного порта. такая вот загагулина.
с транслитом все работает замечательно и без проблем. а вот с кирилицей надо будет ещё поработать.
такая вот загогулина. всем спасибо, кто помогал. :-)
|
|
|
|
|
Oct 28 2008, 21:34
|
Группа: Новичок
Сообщений: 6
Регистрация: 15-01-07
Пользователь №: 24 434

|
Код AT+CSCS="UCS2" OK AT+CUSD=0,"002A0031003000320023" +CUSD: 0,"04110430043B0430043D044100200030002E0030003300200434043E043B043B002E00 200414043E002000330031002E00310032002E0030003800200413043E0432043E0440044F044904 3504350020043F04380441044C043C043E002D003100350020043A043E043F04350435043A002E04 18043D0444043E0020003000360030003400330034"
OK Кодировку команды CUSD третьим параметром пробовал указывать, не помогло. Правда не СимКом, а сониерикссон т610
|
|
|
|
|
Jun 2 2009, 10:58
|
Участник

Группа: Свой
Сообщений: 64
Регистрация: 2-08-08
Из: Киев
Пользователь №: 39 380

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

старший лаборант
     
Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097

|
Насколько помню, снова 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-кой известили, что ли...
--------------------
Китайская комплектация - европейское качество! ;)
|
|
|
|
|
Jun 2 2009, 14:33
|
Участник

Группа: Свой
Сообщений: 64
Регистрация: 2-08-08
Из: Киев
Пользователь №: 39 380

|
о, спасибо большое! оказывается, все время бродил вокруг да около
--------------------
Электроника- наука о контактах: или он есть там,где не должен быть, или его нет там где он нужен
|
|
|
|
|
Jun 2 2009, 15:00
|

старший лаборант
     
Группа: Свой
Сообщений: 2 702
Регистрация: 30-09-05
Из: ЮЗЖД
Пользователь №: 9 097

|
Однако не без "ложки дёгтя". USSD-меню может тасоваться оператором произвольным образом, и не факт, что нужный пункт не будет в любой момент перемещён или переименован.  С лайфовским меню, кроме того, некорректно работают некоторые терминалы (на чипсете MTK в основном - вплоть до рестарта). SIM Toolkit, по наблюдениям, более стабильная вещь, зависит в основном от партии карточек, хотя в принципе приложение в современную SIM-карту можно загрузить и по эфиру. (Мутновато, правда, с ним работать).
--------------------
Китайская комплектация - европейское качество! ;)
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|