Balance Сheck

Материал из Mid Office Manager Help
Перейти к: навигация, поиск

При выписке билетов в Red Workspace для корпоративного клиента или субагентства агент обычно проверяет, достаточно ли средств на счете клиента. Для этого ему надо выполнить ряд дополнительных действий: открыть окно Mid Office Manager, найти нужного клиента и проверить баланс его расчетов с агентством. Это отвлекает агента от основной задачи и увеличивает общее время выписки билета. Приложение Balance Check позволяет автоматически проверять баланс счета клиента при попытке выписать билет в терминале Red Workspace и блокирует операцию, если средств на счете недостаточно.

Содержание

Предварительные условия

Для нормальной работы приложения требуется следующее:

  1. Доступ к серверу Mid Office Manager. Сервер Mid Office Manager не обязательно должен размещаться на той же машине, что и Red Workspace, — достаточно доступа к серверу по локальной сети или через интернет.
  2. Приложение Balance Check должно быть надлежащим образом установлено в среде Red Workspace.
  3. Настроенное подключение к серверу Mid Office Manager в параметрах приложения Red. В параметрах приложения Red надо задать адрес сервера и учетные данные для входа.
  4. Настроенные на сервере Mid Office Manager параметры для создания защищенного канала. В параметрах Mid Office Manager надо задать параметры защищенного канала между серверами Mid Office Manager и Red.
  5. Надлежащим образом настроенные профили и договоры на сервере Mid Office Manager.

Далее описывается, как настроить подключение приложения Balance Check к серверу Mid Office Manager, а также как настроить на сервере Mid Office Manager самоподписанный сертификат для SSL-подключения.

Чтобы создать подключение приложения Red к серверу Mid Office Manager:

  1. Откройте окно Sabre Red Workspace.
  2. В меню последовательно выберите Инструменты и Параметры.
  3. В левой панели окна Параметры разверните узел Настройки для приложений Red и выберите узел CreditCheck Preferences.
  4. В правой панели задайте значения следующих полей:
    • MOM server address — сетевой адрес сервера Mid Office Manager, например https://localhost:8445.
    • Login — имя пользователя Mid Office Manager, в контексте которого будут выполняться запросы информации в Mid Office Manager из приложения.
    • Password — пароль пользователя Mid Office Manager, в контексте которого будут выполняться запросы информации в Mid Office Manager из приложения.
    RedAppSettings.png
  5. Щелчком кнопки ОК закройте окно Параметры.

После такой настройки Balance Check сможет перехватывать команды выписки билетов (W‡) и проверять доступные средства на счете, на средства которого предпринимается попытка выписать билет.

Чтобы настроить безопасный канал связи между сервером приложений Red и сервером Mid Office Manager:
Перед настройкой сервера нужно создать файл с парой ключей для шифрования канала связи. Подробнее о создании пары ключей см. Создание пары ключей защиты канала связи.

  1. В подпапке ..\server\config\xtrip\server папки сервера Mid Office Manager откройте файл boot.properties для редактирования.
  2. В конец файла boot.properties добавьте следующие строки:
    # Tomcat settings for interaction with RedApps
    com.gridnine.xtrip.server.tomcat.redapp.port = 8445
    com.gridnine.xtrip.server.tomcat.redapp.protocol = org.apache.coyote.http11.Http11Protocol
    com.gridnine.xtrip.server.tomcat.redapp.proxyName =
    com.gridnine.xtrip.server.tomcat.redapp.proxyPort =
    com.gridnine.xtrip.server.tomcat.redapp.secure = true
    com.gridnine.xtrip.server.tomcat.redapp.scheme = https
    com.gridnine.xtrip.server.tomcat.redapp.URIEncoding = utf-8
    com.gridnine.xtrip.server.tomcat.redapp.SSLEnabled = true
    com.gridnine.xtrip.server.tomcat.redapp.sslProtocol = TLSv1
    com.gridnine.xtrip.server.tomcat.redapp.clientAuth = false
    com.gridnine.xtrip.server.tomcat.redapp.keystoreFile = <путь к хранилищу ключей >
    com.gridnine.xtrip.server.tomcat.redapp.keystorePass = <пароль ключа>
    com.gridnine.xtrip.server.tomcat.redapp.default = false 
    где
    • <путь к хранилищу ключей> — путь к файлу, в котором хранится самоподписанный ключ для шифрования защищенного канала связи, например c://keystore//redapp.jks
    • <пароль ключа> — пароль, который нужен для извлечения ключа для шифрования канала связи, например P@ssw0rd1.
  3. Перезапустите сервер Mid Office Manager.

Как пользоваться приложением Balance Check

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

Попытка выписки билета для клиента, на счете которого недостаточно средств

Попробуем выписать билет для клиента Client1. Вот профиль в Mid Office Manager клиента Client1 с идентификатором 1234567, для которого мы будем пытаться выписать билет:

ClientProfile.png

Далее предпринимается попытка выписать билет для Client1 в среде Red Workspace:

IssueTicketLong.png

Как видите, попытка терпит неудачу из-за недостатка средств на счете клиента: Цена билета 40 523 руб. (строка TOTAL), а на счете клиента всего 15 000 руб.:

IssueTicketShort.png

Приложение эффективно блокирует выписку билета корпоративному клиенту, если на его счете недостаточно средств.

Balance Check также позволяет отслеживать баланс субагентств и блокировать продажи, выходящие за рамки баланса субагентства.

Если на счете корпоративного клиента или субагентства достаточно средств, выписка билета проходит, как обычно, а Balance Check выполняет проверку прозрачно, то есть незаметно для пользователя.

Проверка текущего баланса

В предыдущем разделе речь шла о контроле баланса при выписке билета, но в случае субагента приложение Balance Check позволяет узнать его текущий баланс независимо от выписки билета. Для этого достаточно выполнить команду BALANCE:

CheckBalanceSubagent2.png

С балансом корпоративного агента ситуация иная: в случае собственной продажи корпоративному клиенту Balance Check предоставляет информацию о балансе только при определенных условиях: для этого нужно наличие PNR с идентификатором клиента DK. Без DK невозможно идентифицировать клиента, а, значит, и определить его баланс расчетов. В таком случае при попытке проверить баланс Balance Check вернет сообщение об ошибке:

CheckBalanceNoPNR.png

или

ClientBalanceDKNotFound.png

А вот пример успешной проверки баланса корпоративного клиента (в PNR указан идентификатор DK):

CheckBalanceClient2.png

Info.png При необходимости можно настроить среду Red Workspace так, чтобы она в принудительном порядке требовала задавать идентификатор DK в каждой записи PNR. Чтобы сделать поле DK обязательным для заполнения в каждом PNR в PCC надо активировать уровень доступа менеджера агентства командой SI9 и ввести команду W/DK¥ON. Отключить эту возможность повторным применением команды SI9, а затем командой W/DK¥OFF. Подробнее см. статью tjrfo080 в Format Finder.

Общая схема работы приложения Balance Check

Приложение Balance Check автоматически инициируется при запросе на выписку билета в среде Red Workspace или при выполнении специальной команды для проверки доступного баланса. Приложение всегда проверяет баланс при попытке выполнить команду, которая начинается с W‡ или EW‡.

Далее описываются основные этапы работы приложения Balance Check.

  1. В процессе взаимодействия с Sabre Red Workspace приложение получает данные из записи PNR, в том числе информацию о пассажире и маршруте, сконфигурированном принтере, записях LNIATA, DK и PQ, а также квалификаторы и привязки пассажиров.
  2. Приложение упаковывает данные и передает их в Mid Office Manager и ожидает получить из Mid Office Manager информацию о доступном балансе и всех применимых сборах, а также разрешение или запрет на выписку билета. Обмен данными с Mid Office Manager системой осуществляется в формате XML.
  3. Mid Office Manager определяет тип продажи (субагентская продажа или продажа корпоративному клиенту), а также субагентство или корпоративного клиента, и вычисляет доступный баланс соответствующего контрагента и сравнивает с ценовой квотой.
    Подробнее о том, как Balance Check различает собственные и субагентские продажи см. Как Balance Check различает собственные и субагентские продажи.
  4. Mid Office Manager вычисляет сервисный сбор. Для поддержки гибкой структуры сборов в Mid Office Manager должны содержаться сведения о договорных отношениях между разными сторонами, в том числе об ограничениях маршрутов, типах пассажиров, владельцах бланков, валидирующих перевозчиках и т. п. Эту функциональность невозможно реализовать в рамках приложения Red.
  5. Mid Office Manager возвращает информацию о доступном балансе, сервисном сборе и запрете или разрешении на выписку билета.
  6. Приложение отображает доступный баланс в терминале Sabre Red Workspace, добавляет ремарки о сборах в PNR и разрешает или блокирует выписку билета.

Как Balance Check различает собственные и субагентские продажи

В этом разделе описывается, как Balance Check различает собственные (корпоративному клиенту) и субагентские продажи в п.3 в предыдущем разделе.

На основе информации приложения Mid Office Manager (адрес сервера Mid Office Manager, имя входа и пароль) система определяет два профиля агентств — основное агентство (назовем его АгентствоГЛ) и субагентство (АгентствоСУБ) (это может быть один и тот же профиль). Информация об этих агентствах позволяет определить тип продажи — собственная (для корпоративного клиента) или субагентская. Определение профилей выполняется в следующей последовательности:

  • АгентствоГЛ определяется по следующему алгоритму: система пытается сопоставить имя входа (логин) из параметров Red-приложения и имя входа Mid Office Manager с профилем агента. (Если имя входа не связано ни с каким профилем, выполнение прекращается с ошибкой.) АгентствоГЛ определяется как основное место работы, указанное в профиле агента.
  • АгентствоСУБ определяется по следующему алгоритму: отбираются все точки продаж, у которых значение в поле Агентство на вкладке Точка продаж совпадает с АгентствоГЛ. У этих точек продаж просматриваются все пульты и отбираются те, у которых PCC совпадает с PCC, возвращенным командой *S, выполненной из Red-приложением. При наличии нескольких подходящих пультов с одинаковыми PCC они отфильтровываются по полю LNIATA (если оно заполнено). Из валидаторов оставшихся пультов отбираются те, у которых поле Владелец бланка совпадает с владельцем бланка, полученным путем выполнения команды *S*P в Red-приложении. Соответствующее этому валидатору значение в поле Агентство считается агентством АгентствоСУБ. (Если в результате указанных операций получено несколько валидаторов, выбирается первый из списка.)

Если найденные АгентствоКЛ и АгентствоСУБ совпадают, значит это прямая продажа клиенту и определяется баланс для профиля корпоративного клиента. Если АгентствоКЛ и АгентствоСУБ не совпадают, значит это субагентская продажа и определяется баланс для профиля субагентства (в данной терминологии АгентствоКЛ).

Журнал работы приложений Red

При необходимости полезную информацию можно получить из журнала, где фиксируются выполняемые действия. Файл журнала Red-приложений, который может быть полезным для настройки приложения Fee and Commission Calculator, называется redapp.log и находится в подпапке logs установочной папки сервера Mid Office Manager.

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

Чтобы включить регистрацию событий Red-приложений в Mid Office Manager:

  1. В подпапке ..\client\config\xtrip\server папки сервера Mid Office Manager откройте файл log4j.properties в текстовом редакторе.
  2. Найдите раздел, начинающийся со строки # Loggers configuration, например:
    # Loggers configuration
    
    log4j.rootLogger = OFF, null
    log4j.logger.com.gridnine.xtrip = ALL, xtrip
    log4j.logger.com.gridnine.xtrip.TIMING = ALL, xtrip
    
  3. Добавьте в раздел # Loggers configuration следующую строку:
     log4j.logger.com.gridnine.xtrip.server.parsers2.redapp = ALL, xtrip-redapp
  4. В конце файла log4j.properties добавьте следующие строки:
    log4j.appender.xtrip-redapp = org.apache.log4j.FileAppender
    log4j.appender.xtrip-redapp.file = ${applicationRoot}/logs/redapp.log
    log4j.appender.xtrip-redapp.encoding = UTF-8
    log4j.appender.xtrip-redapp.layout = org.apache.log4j.PatternLayout
    log4j.appender.xtrip-redapp.layout.conversionPattern = %d [%15.15t] %-5p %40.40c : %m%n
    log4j.appender.xtrip-redapp.append = false
    
  5. Сохраните и закройте файл log4j.properties.
  6. Перезагрузите сервер Mid Office Manager.

Создание пары ключей защиты канала связи

В этом разделе приводится инструкция по созданию файла-хранилища с парой ключей c помощью Java-утилиты keytool.exe. Эта утилита находится в подпапке /jre/bin версии клиента Mid Office Manager со средой JRE.

Если вы используете клиент Mid Office Manager без среды JRE, то нужно использовать утилиту keytool.exe входящую в состав Java JDK или JRE. В этом случае на машине должен быть установлен как минимум один из этих пакетов. Утилита keytool.exe обычно находится в подпапке bin установочной папки Java.

Чтобы создать файл с парой ключей для связи:

  1. Выполните в командной строке следующую команду:
    keytool -genkeypair -alias redapp -keyalg RSA -keysize 2048 -validity 3650 
      -keystore <путь_к_файлу_хранилища> 

    где
    <путь_к_файлу_хранилища> — путь к файлу с парой ключей шифрования, например c:\keystore\redapp.jks

  2. В ответ на вопросы команды Enter keystore password: и Re-enter new password: введите и подтвердите пароль хранилища ключей.
    На остальные вопросы отвечать не нужно — в ответ просто нажимайте Enter.
    Alert.png Не задавайте никакого пароля в ответ на вопрос Enter key password for <redapp> (RETURN if same as keystore password): — пароль ключа обязательно должен совпадать с паролем на хранилище!
  3. Убедитесь, что в указанном месте создан файл хранилища ключей с расширением .jks и при необходимости скопируйте его на машину с сервером Mid Office Manager.

Ссылки по теме

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Печать/экспорт
Инструменты