SMS Balance | [widg] виджет для отображения баланса



Реп: (328)
SMS Balance
версия: 10.3.21 beta

Последнее обновление программы в шапке: 21.03.2010

Прикрепленное изображениеПрикрепленное изображение

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

Дизайн для виджета разработан пользователем andy1394

Принцип работы:
Запрос происходит при помощи sms-сообщения на сервисный номер оператора. С помощью специального шаблона в ответном sms оператора ищется сумма и отображается на виджете. Сервис запроса баланса по sms есть только у МТС и Мегафон, поэтому только с этими 2-мя операторами можно полноценно использовать виджет. Для TELE2 и Билайн реализована ТОЛЬКО отправка ussd-запроса.

Почему не использовать ussd-запросы (вида *100#)?
Потому что в Android API на данный момент нет полноценной поддержки ussd-запросов.

Что делать если ответ оператора не распознается?
- во-первых, попробуйте выбрать соответствующий вариант с упрощенным шаблоном ("MTS (simple pattern)" или "Megafon (simple pattern)"), который 100% найдет первое вхождение цифр с разделителем (например: "9.99" или "-99,9").
- если надпись «update...» все-равно сменяется «not found» - значит сумма не найдена, в этом случае необходимо ввести свой шаблон поиска (см. опцию «RegExp pattern»).
- если надпись «update...» сменяется «error» - это говорит о неправильно настроенном шаблоне, найденное значение невозможно преобразовать в число, скорее всего в результат попало что-то кроме цифр.
- если «update...» остается после поступления ответной sms - значит номер ответной sms не распознан как сервисный номер оператора (для некоторых операторов номер ответа отличается от номера на который посылаем запрос), в таком случае надо сообщить об этом мне.
- если происходит ошибка "Force close" - ищем в корне sd-карты файл SMSBalance.trace и присылаем его мне.

Настройки:
«Базовые»:
- «Your mobile operator» - Ваш оператор, тут итак я думаю, все ясно.
- «Currency» - добавлять обозначение валюты к балансу, например у меня установлено «р.»
- «Show difference» - отображать последнее изменение баланса. Отрицательное изменение подсвечивается красным, положительное – зеленым.

«Продвинутые»:
- «Notification timeout (msec)» - служебная опция, изменять не рекомендуется.
- «External firewall» - (не изменять в Android 2.1) если выключена, то используются встроенные средства для подавления оповещения об ответном sms оператора. Встроенное подавление оповещений не очень совершенно на данный момент, оповещение все же появляется на 1-2 сек, к тому же может конфликтовать с другими программами реализующими подобный функционал (например Handcent SMS). Поэтому я рекомендую использовать в качестве внешнего aFirewall. Включаете эту опцию, устанавливаете aFirewall, заносите сервисный номер Вашего оператора в черный список и готово! Виджет работает, при этом лишние оповещения при обновлении не появляются.
«RegExp pattern» - использовать свой шаблон для поиска суммы в ответном sms оператора (если шаблон не указан, то используется шаблон по-умолчанию). Шаблон задается с помощью языка «регулярных выражений» (описание в Википедии).
В качестве шаблона по-умолчанию используется (вводить не надо):
(?<=(баланс)(:)?)(-)?[0-9]+(\.|,)[0-9]{1,2}

Этот шаблон распознает такие ответы как:
Баланс:9.99руб
Баланс: -9,9 руб
Ваш баланс 99.99

и им подобные.
Если Ваш оператор все же присылает ответ в каком-то своем особенном формате, эта опция дает возможность ввести свой собственный шаблон, ограниченный только синтаксисом регулярных выражений (описание синтаксиса легко найти в Интернете).
Начинать свои эсперементы я бы советовал с самого «не чувствительного» шаблона, который наверняка распознает любую сумму (но возможны ложные срабатывания, если в sms есть др. суммы, кроме баланса):
(-)?[0-9]+(\\.|,)[0-9]{1,2}

Перед проверкой текста ответа оператора из него удаляются пробелы, поэтому использовать их в шаблоне не надо. Если Вы хотите использовать в своем шаблоне символы кириллицы, то нужно указывать их в виде UTF-кода, например "я" - это "\u044F". Для получения таких кодов рекомендую воспользоваться утилитой: Прикрепленный файлTextToUTF.exe ( 336 КБ )

«Save received SMS» - записывает ответную sms с сервисного номера в файл "/sdcard/ReceivedSMS.txt". Если ответ оператора по каким-то причинам не распознается, сообщите мне, приложив этот файл.

Скачать:
Актуальная версия: 10.3.21 beta
прошлые версии


Сообщение отредактировал coder1cv8 - 01.04.10, 16:55
Причина редактирования: новая версия



Реп: (57)
Вещь отличная ! Интерес есть ( Оператор Мегафон -Москва). Сразу пожелание - нельзя ли сделать, что б запрос отправлялся после любого исходящего звонка?



Реп: (3)
coder1cv8 @ 15.2.10, 23:42 *
Android пока не поддерживает программную работу с ussd-запросами

А если отправить *100# (мегафон) то приходит баланс. Это не ussd-запрос? У меня работает.



Реп: (328)
Che_2006, думаю можно )

Alex19650608 @ 16.2.10, 6:58 *
А если отправить *100# (мегафон) то приходит баланс. Это не ussd-запрос? У меня работает.

Alex19650608, ключевое слово здесь программно, то есть да, можно отправить ussd-запрос и на него придет ответ, но никак получить текст этого ответа из другого приложения и куда-нибудь его записать невозможно, он просто отобразится вот этим вот диалогом с кнопкой Окей.



Реп: (696)
coder1cv8 @ 16.2.10, 1:42 *
помечаю его как прочитанное и удаляю, он упорно не хочет обновляться и показывает 1 новое сообщение.

У меня такого нет, смс появляется только в строке уведомлений (в верхнем баре), хотелось бы настраиваемый цвет шрифта, черный как-то не очень смотрится. Может вместо лого МТС сделать просто строку "Баланс: ХХХ руб.", например? Виджет меньше места бы занимал, как раз под часы на первом экране бы влез.



Реп: (328)
R0iZ @ 16.2.10, 7:25 *
У меня такого нет, смс появляется только в строке уведомлений (в верхнем баре), хотелось бы настраиваемый цвет шрифта, черный как-то не очень смотрится. Может вместо лого МТС сделать просто строку "Баланс: ХХХ руб.", например? Виджет меньше места бы занимал, как раз под часы на первом экране бы влез.

Ты говоришь про ярлык на Сообщения именно? Добавляется через Ярлыки > Программы > Сообщения, он в уголку еще зеленый кружок с цифрой показывает?... Возможно, это у меня какой-то глюк. Впрочем, лично я им не пользуюсь, в любом случае :)

По поводу остального... Виджет занимает 2 стандартных квадрата, по-моему это не много, у меня под часами и расположен ) Нажимать удобно, к тому же. Логотипы для разных операторов естественно будем менять )
Шрифт мне тоже не нравится, но к сожалению не нашел в API возможности заменить его своим... хм, хотя возможно цвет можно настраивать динамически, подумаю...

Сообщение отредактировал coder1cv8 - 16.02.10, 07:47



Реп: (696)
coder1cv8 @ 16.2.10, 9:45 *
Виджет занимает 2 стандартных квадрата, по-моему это не много, у меня под часами и расположен

А есть возможность сделать лого поменьше, а сумму писать справа от лого?

coder1cv8 @ 16.2.10, 9:45 *
Ты говоришь про ярлык на Сообщения именно? Добавляется через Ярлыки > Программы > Сообщения

Да, про него. СМС приходит, отображается в строке уведомлений, на ярлыке сообщений
coder1cv8 @ 16.2.10, 9:45 *
в уголку еще зеленый кружок с цифрой

отсутствует

Сообщение отредактировал R0iZ - 16.02.10, 08:18



Реп: (328)
R0iZ @ 16.2.10, 8:12 *
А есть возможность сделать лого поменьше, а сумму писать справа от лого?

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

R0iZ, а уведомление исчезает само, с этим порядок?...

Сообщение отредактировал coder1cv8 - 16.02.10, 08:23



Реп: (4)
coder1cv8, ух ты! Спасибки! Интерес есть - Мегафон-Москва. По сабжу: то что вижу на скриншотах имеет отвратительный дизайн (точнее его нет вообще), если возможно, было бы не плохо сделать его чуть симпатичнее (если нужна помощь в его разработке (дизайна), то напишите в личку, буду рад помочь).



Реп: (3)
coder1cv8 @ 16.2.10, 7:18 *
ключевое слово здесь программно

Осознал. Тогда примите заявку на данную прогу для Мегафона. :rolleyes:



Реп: (247)
А виджет размером 1x1 не пробовал разараб?



Реп: (328)
Defo @ 16.2.10, 10:40 *
А виджет размером 1x1 не пробовал разараб?

думал об этом... но решил все таки в таком формате реализовать, иначе текст мелкий получается...



Реп: (315)
Да, виджет 1x1 не помешал...
Идеи для виджета, можно с плагиатить из этой программки: Touch Balance
На симбиане, радовала, особо сколько за день убежало денег.

Сообщение отредактировал Hedge21 - 16.02.10, 10:53



Реп: (104)
Прога нужная и полезная, но дизайн не радует. А если сделать логотип (или сам виджет) в виде МТС-овской симки и сбоку (или снизу) от него выводить сумму и статусные сообщения? Или оставить только лого 1х1 (для удобства совместимости операторов) и сбоку сумму.
Автору удачи в разработке!



Реп: (696)
coder1cv8 @ 16.2.10, 10:21 *
R0iZ, а уведомление исчезает само, с этим порядок?...

Не пробовал, я просто на него нажал сразу.
ripper2k @ 16.2.10, 13:12 *
Или оставить только лого 1х1 (для удобства совместимости операторов) и сбоку сумму.

Вот и я про то же.



Реп: (328)
Новая версия SMS Balans (10.2.17) beta

Прикрепленное изображениеПрикрепленное изображение

Что сделано:
- полностью переработан дизайн. Сделать дизайн для разработки любезно согласился пользователь andy1934 , не забываем говорить ему за это "спасибо"! Впрочем и все замечания по дизайну прошу адресовать ему :)
- следуя пожеланиям пользователей, уменьшен размер виджета до 1-й ячейки.
- добавлена опция для отображения валюты, например "999,99 руб".
- добавлены поддерживаемые сотовые операторы (на данный момент это МТС и Мегафон).

Что в ближайших планах:
- поддержка Beeline и TELE2,
- опция авто обновления баланса после звонка.

Существующие проблемы:
- не удается полностью подавить оповещение об ответной SMS сервисного центра, на секунду оно все же появляется ) Если здесь есть разработчики знающие как решить эту проблему, буду очень признателен за консультацию!
- ярлык для новых сообщений (от HTC, не стандартный) не хочет обновляться, после того как я помечаю ответную SMS-ку как прочитанную и удаляю. Что с ним делать я не знаю... Был бы хотя бы доступ к исходному коду, как для "голого" Androida...

Прикрепленный файлSMSBalans.apk ( 30.11 КБ )


Сообщение отредактировал coder1cv8 - 17.02.10, 19:51



Реп: (37)
о дааа, уже качаю. спасибо. :rolleyes:

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

Сообщение отредактировал junoreaktor - 17.02.10, 19:55



Реп: (328)
dev1L_sm1Le @ 17.2.10, 19:46 *
и еще глюк, когда обновляется баланс, то в уведомлениях он показан, как смс входящее.
из уведомления потом убирается, а в смс пишет, что якобы 1 непрочтенная есть.

Дописал выше существующие проблемы, я о них знаю.
Версия бета, так что боремся пока потихоньку :)



Реп: (37)
coder1cv8,
успехов.
а так, очень понравилась. молодец)))



Реп: (4)
Касаемо о фона: его конечно убрать можно, но тогда нужно полностью стелизовать программу под ярлыки рабочего стола (делать иконку меньше, под наклонов в перспективе, плашку под отображение цифр, цифры будут то в нее не влезать, то выходить за ее рамки), а оно нужно? Это же не ярлык, это виджет - т.е. плашка (например "дефолтная" белая фирменная андройдная) предусматривается. Идею сделать просто прямоугольник полупрозрачный взял с виджета 1*1 the weather channel. Это не окончательный вариант, как сделать виджет симпатичнее будем думать.

Изначально, планировалось сделать что-то типа этого:
Прикрепленное изображение

Но с фонтами пока есть определенные сложности. От синего фона решили отказаться в пользу нейтрального черного с прозрачностью 30%.
Де, еще есть альтернативный вариант мтс

Прикрепленные изображения
Прикрепленное изображение


Сообщение отредактировал andy1394 - 17.02.10, 20:12



Реп: (121)
ммм..довольно интересно,ждем теле2


Полная версия   Текстовая версия

Помощь   Правила

Сейчас: 19.06.24, 20:55