ADS 468x60


2014-02-07

Краткий обзор программы SMS Parser. Как можно обрабатывать входящие сообщения?

В данной заметке расскажу Вам о программе SMS Parser, а также попробую детально описать как с ней работать. Особенность этой программы в том, что она не узконаправленная т.е. может обрабатывать сообщения не только от банков "GSM-банкинг" (система круглосуточного контроля за движением средств по Вашему карточному счету с помощью SMS-сообщений на мобильный телефон), но и любые другие сообщения в которых содержится необходимая Вам информация (буквы, цифры, спецсимволы). Ее возможно использовать в системах мониторинга (авария, нагрузка, температура, заявки, статус, сигнализация, одноразовый пароль авторизации на сайте "Google Authenticator" ...), в смс рассылках (котировки акций, новости, гороскопы, курс валют ...). Данная программа существует в 2 версиях, бесплатная и платная, отличие на данный момент в наличии и отсутствии рекламы.
В заметке, я покажу Вам как создать новый/собственный фильтр для обработки сообщений от банка VTB.ua с последующим выводом необходимой информации на экран телефона виджет (Картинка 1).
Проверено на устройстве Google Nexus 4 Android KitKat 4.4.2.

Картинка 1
Пример обработки сообщений GSM-банкинга от VTB.ua.
Когда приходит смс уведомление от банка, с состоянием счета или проведенной операцией по банковскому карточному счету, я обращаю внимание на сумму, сколько списано и какой остаток, конечно если данные действия были сделаны лично мной. :)

Для начала рассмотрим текст смс-сообщения:
(KARTA 9*1234 25/01/14 12:30, POKUPKA 2.00 USD(KOMISSIYA 0.25 UAH) GOOGLE *Ponom, GOOGLE.COM, USA, DOSTUPNO 361.26 UAH)
(Информация в сообщении частично изменена, в целях защиты моих личных данных. Это сообщение я получил в результате покупки данной программы, автор/программист/разработчик, на мою точку зрения сделал хорошую программу.)

Что видно из данного сообщения?
- Номер карты (9*1234).
- Дату и время (25/01/14 12:30).
- Действие (POKUPKA, но бывает NALICHNYE).
- Сумма действия (2.00)
- Денежная единица суммы (USD)
- Комиссия по сумме/валюте действия (KOMISSIYA 0.25 UAH)
- Кто снял/списал сумму (GOOGLE *Ponom)
- Страна/где тот кто списал (USA)
- Состояние баланса (361.26)
- Денежная единица баланса (UAH)

Что может пригодиться из сообщения?
- Номер карты - можно и необходимо использовать если, у Вас несколько карт/счетов в данном банке.
- Дата и время - по необходимости.
- Действие - по необходимости.
- Сумма действия - необходима, чтоб знать на какую сумму списали.
Все остальное, кроме "Состояния баланса", по необходимости.

Для данного примера будем выводить на виджет следующую информацию:
- Действие.
- Сумма действия.
- Состояние баланса.

Приступим к написанию парсера по шагам:
1. Запускаем программу, закладка "Парсеры".
2. Нажимаем на кнопку "+ Новый парсер".
3. В открывшемся окне "Новый парсер" вводим в строке "Имя", имя нашего парсера. В примере это имя "VTBBank" (Картинка 2).
4. Нажимаем на кнопку "Телефон(ы)" и выбираем из открывающегося списка откуда будем брать номер телефона для парсера (я выбрал из смс т.к. там есть входящие сообщения от банка). После выбора номера нажимаем "Далее >" и переходим в окно "Группы и шаблоны" (Картинка 3).
5. Нажимаем на кнопку "+ Новый шаблон", откроется окно "Новый шаблон" (Картинка 4).
6. В поле "Имя" необходимо ввести имя шаблона, в примере - это "ВТБ операция наличные", в данном шаблоне будем выбирать сумму по списанию наличных в банкоматах.
7. Нажимаем на кнопку "Выбрать смс", откроется новое окно "Выбор смс" в котором видим все сообщения от банка/номер(а) который был определен в пункте 4.
8. В подсказке программы, в предыдущем шаге, в поле "Смс" написано (Выберите смс, текст или число, которое хотите найти, и нажмите кнопку "Создать шаблон") (Картинка 4), рекомендую так и сделать. Для выделения текста, нажмите на слово/цифру в сообщении, ползунками выделяете необходимый текст и нажмите на кнопку "Создать шаблон", после этого, в поле "Шаблон" появиться сформированное программой регулярное выражение (на моих картинках самописные выражения, не обращайте внимание на них). :) Для проверки корректности работы сформированного шаблона, нажимаем на кнопку "Проверить шаблон" в всплывающем окне должна появиться информация которую Вы выделили как на Картинке 5.
Картинка 2
Картинка 3
Картинка 4
Картинка 5
Шаблоны необходимы для определения/выборки/обработки конкретной информации которую будем использовать дальше. В выше описанном примере был создан шаблон только для "ВТБ операция наличные", для "ВТБ счет" и " ВТБ операция покупка" необходимо подготовить отдельные шаблоны начиная с шага 5, также если Вам необходимы другие параметры то по каждому параметру желательно готовить отдельный шаблон.

После написания всех необходимых Вам шаблонов, переходим к следующему шагу:
9. В окне "Группы и шаблоны" (Картинка 3) нажимаете кнопку "Далее >".
10. В окне "Строки" (Картинка 6), нажимаем кнопку "+ Новая строка", строки необходимы для визуального определения действия по подготовленным шаблонам, в этом примере первой строкой определим "ВТБ счет".
10. В окне "Новая строка" необходимо выбрать где "Искать значение" (В последнем смс и предыдущих, только в последнем смс, только в смс со всеми значениями) в примере оставляем все без изменений.
11. Нажимаем круглую кнопку "Текст", вводим значение которое будет определением для шаблона "ВТБ счет", это текст "Остаток:" или любое другое значение которое Вам будет удобно для понимания какая цифра обрабатывается в сообщении и отображается в виджете.
12. Нажимаем кнопку "Группа" и выбираем из списка значение группы "ВТБ счёт", с дополнительным параметром вывода, как текст или число (Картинка 7) (текстовая или цивровая информация будут выводиться в соответствии с вашим выбором т.е. цифры тоже могут выводиться как текст) нажимаем готово.
13. Снова нажимаем кнопку "Текст" и вводим сокращенное название денежной единицы "грн." Украинская гривна. В результате должно получиться так как на Картинке 8. Точно также, необходимо создать строки для значений "ВТБ операция наличные" и "ВТБ операция покупка" (Картинка 6). После создания всех необходимых строк в окне "Строки" нажимаем на кнопку "Далее >".
14. В открывшемся окне "Финиш", нажимаем на кнопку "Обработать смс",  под кнопкой должная появиться цифра/количество, в строке "Обработано смс" (Картинке 9), после этого нажимаем кнопку "Завершить создание" и попадаем в первоначальное окно программы где находиться закладка "Парсеры".
Картинка 6
Картинка 7
Картинка 8
Картинка 9
На главном экране программы будут видны все созданные парсеры.

Добавляем Виджет на экран устройства:
1. Необходимо в Вашем устройстве перейти в раздел "Виджеты".
2. Из списка виджетов выбрать необходимый размер и добавить на рабочий стол (Картинка 10), откроется окно "Настройки виджета" (Картинка 11).
3. Нажимаем кнопку "Имя", выбираем из списка имя парсера "VTBBank" который мы хотим видеть в виджете (Картинка 12).
4.  Нажимаем кнопку "Строки", выбираем сроку которою необходимо вывести на виджет (Картинка 13), строк может быть столько сколько необходимо.
5. Кнопка "Текст" необходима если вы хотите добавить название виджета, например "Состояние денежных средств:" (Картинка 1).
Картинка 10
Картинка 11
Картинка 12
Картинка 13
Кнопка "Фон" позволяет настроить цвет и прозрачность Виджета (Картинка 14).
Кнопка "Цвет" позволяет настроить цвет выбранной строки (Картинка 15).
Кнопка "Шрифт" позволяет настроить размер и форматирование текста (слева, по центру, справа) в виджете.
Кнопка "Линия" позволяет добавить разделяющую линию, например между номерами кредитных карт.
Кнопка "Удалить" - удаляет выбранный/выделенный элемент с экрана виджета.
Кнопки "Вверх и Вниз" позволяют перемещать/сортировать информацию в том порядке который Вы хотите видеть в виджете.
Картинка 14
Картинка 15












*Парсер, т.к. мне не удалось найти нормального определения значения данного слова, постараюсь объяснить своими словами. Парсер - это код/скрипт который обрабатывает любые данные с последующей сортировкой по определенному заданному правилу регуляторного выражения. Если Вам интересно или надо больше информации рекомендую почитать о Синтаксическом анализе и Регуляторных выражениях.


Скачать шаблон/парсер для VTB.ua XML или ZIP.
Внимание! 
Для добавления данного парсера к созданным Вами или установленным ранее, необходимо использовать функцию "Данные/Открыть парсер".

Если у Вас будут вопросы или замечания по данной заметке, оставляйте комментарии или пишите на почту с страницы Контакты.

Обработка USSD-команд с помощью Sms Parser.


7 коммент.:

Oleksii Ponomarov комментирует...

Спасибо за шикарный обзор :)
Не против, если я размещу ссылку на него на форуме 4pda?

Mikhail Kaloshin комментирует...

Алексей, извините :) Я заметил чуть раньше и что-то уже на клацал в админке. что комментарии исчезли.
Вам спасибо за данную программу, лично я давно искал такую программу.
Да, спасибо, если Вы разместите ссылку.

Oleksii Ponomarov комментирует...

Добрый день. А не хотите написать обзор программы Sms Parser 3? Прошлый обзор был супер, хочется еще :)

Mikhail Kaloshin комментирует...

Oleksii Ponomarov10 дек. 2015 г., 10:49:00
Алексей, добрый день.
Спасибо, мне ваша программа нравится (пользуюсь предыдущей версией), могу попробовать написать такойже обзор но это займёт время.
Скажите, все функции буду доступны сразу или нужен ключь?
Возможен перенос существующих парсеров?

Oleksii Ponomarov комментирует...

Сейчас платных функций нет, будут в январе. Если нужен будет ключ, я дам, без проблем. Переноса, увы, нет, слишком разные версии.

Mikhail Kaloshin комментирует...

Хорошо, тогда установлю, по пользуюсь, а там посмотрим.
Спасибо.

Oleksii Ponomarov комментирует...

Спасибо :) Если будут вопросы, пишите.

Отправить комментарий

Популярное за неделю