04-Mar-2016 15:36

Работа с GoAntiFraud: Обработка USSD-ответов о балансе с дробными величинами

goantifraud

Предыстория

Клиенту необходимо проверить баланс на своих картах. Оператор может присылать два различных варианта ответа на USSD-запрос:

  • Первый вариант: “Your balance is 40 USD and 50 cents”
  • Второй вариант:” Your balance is minus 40 USD and 50 cents”

Решение


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

  • Регулярное выражение в случае ответа: “Your balance is 40 USD and 50 cents”.

Your balance is (?P-?\d+(\.\d*)?) USD and (?P-?\d+(\.\d*)?) cents

  • Регулярное выражение в случае ответа: “Your balance is minus 40 USD and 50 cents” message.

Your balance is minus (?P-?\d+(\.\d*)?) USD and (?P-?\d+(\.\d*)?) cents


Логика обработки USSD-ответа


Мы разделяем баланс на две переменные:

  • sim__balance__USD – для части с целым числом.
  • sim_balance_cents - для части с цифрами после запятой.

После обработки сервисом мы преобразуем строчное выражение в число, которое будет занесено в базу. Для этого мы используем следующее выражение.

  • В первом варианте: float({sim__balance_USD}+"."+{sim__balance_cents})
  • Во втором варианте: float("-"+{sim__balance_USD}+"."+{sim__balance_censt})

Визуально кейсы будут выглядеть следующим образом.

Первый вариант:


Второй вариант:


corporate
1529
5/5
4
голосов

Похожие записи

GoAntiFraud

Работа с GoAntiFraud: Что нового в патче 0.09.08?

19 Jul 2016 16:36
Недавно в Goantifraud вышел новый патч - 0.99.08.Рассмотрим основные нововведения:Новая опция “Добавить сим банк”С этого момента вы можете указать имя SIM банка и задать другой пароль для веб-интерфейса устройства, без необходимости его повторного добавления. Изменение идентификатора Goip Sim ban...
GoAntiFraud

Настройка GoIP и автоматическое пополнение SIM-карт по заданным лимитам

17 Feb 2016 14:01
У некоторых операторов мобильной связи существует неприятная для терминации функция: голосовое оповещение о низком балансе. Например, МТС при исходящем звонке говорит: «На вашем счету осталось меньше … юнитов». Такое сообщение, естественно, вводит в заблуждение клиентов оригинатора. Закономерно,...
GoAntiFraud

Работа с GoAntiFraud: Тарификация баланса SIM-карт

04 Apr 2016 10:25
Из данного видео вы узнаете, как настроить функцию тарификации баланса SIM-карт. Чем она полезна для терминатора? При терминации возникает необходимость постоянно следить за изменениями баланса SIM-карт. Для этого нужно очень часто отправлять USSD запросы, что нетипично для поведения реального або...
GoAntiFraud

Работа с GoAntiFraud: Автоматическое пополнение бонусов

26 Feb 2016 16:50
Предыстория Клиент загружает в банк совершенно новые SIM-карты. Для выгодной терминации звонков с этой карты ему нужно запросить бонусы от GSM-оператора. Цена бонуса составляет 4000 единиц. Условие: перед запросом бонусов, с карт запрещено звонить. По исчерпании бонусов, клиент должен ...
GoAntiFraud

Работа с GoAntiFraud: Значение статуса каналов

18 Mar 2016 15:54
В видео объясняются значения различных статусов GSM каналов, которые отображаются в личном кабинете пользователя GoAntiFraud. В окне “Channels” для каждого канала указывается его текущее состояние: No SIM. Означает, что в шлюзе нет SIM-карты. Достаточно просто вставить карту в слот. Load...
GoAntiFraud

Работа с GoAntiFraud: Разделение трафика по операторам

15 Apr 2016 14:59
Для разделения направлений Ваших звонков в сервисе GoAntiFraud предусмотрен раздел настроек "Операторы" (Carrier). Все, что вам нужно сделать - это перейти во вкладку Config->Carriers и создать возможные направления для вызовов. Чтобы создать направление, нужно указать код оператора, а также ко...
GoAntiFraud

Работа с GoAntiFraud: Генерация входящих вызовов

01 Apr 2016 14:35
Один из главных параметров человеческого поведения, который отслеживается Антифрод системами – это входящие звонки на SIM-карты. А именно, процент соотношения входящих вызовов к исходящим. Сервис GoAntiFraud сможет вам помочь симулировать поведение человека по данному параметру. Все, что вам нео...

GoAntiFraud

GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud
GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud GoAntiFraud