"Подтверждение присутствия на рейсе" (ModAviaFlightConfirmation)
При подключении этот мод отправляет запрос в gds на предмет подтверждения того, что билет отлетан и формирует справку, в которой шапка и подвал могут быть кастомизированы с помощью html.
Кому будет полезен этот мод:
Это клиентский мод. Он доступен для подключения и использования только клиентам.
Он будет полезен клиентам, желающим получать подтверждения от агенства о факте выписки билета и присутствии пассажира на рейсе.
Подключение мода:
Для подключения мода необходимо перейти в раздел “Marketplace”
Настройка мода:
После подключения мода, необходимо перейти в раздел “Расширения” и выбрать пункт “Присутствие на рейсе”.
Настройка бланка уведомления
Настройка шапки и подвала письма:
Верхняя поле для ввода HTML отвечает за “шапку” бланка, нижняя за “подвал”
Все записи должны иметь следующий вид:
Ниже приведен пример кода.
Шапка:
<div style="height:130px;">
<link href="https://static.corteos.ru/other/media/kmp/agency/roboto.css" rel="stylesheet"></link>
<style>
body { font-family: 'Roboto', sans-serif !important; color: #050a30;}
hr { display: block; height: 1px;
border: 0; border-top: 8px solid #7EC8E3;
margin: 1em 0; padding: 0; }
table tr td { color: #050a30 !important; }
h1 { color: #050a30; text-transform: uppercase; font-size: 25px !important; }
</style>
<table style="width:100%;margin-top:10px;">
<tr>
<td style="width:50%;font-size:16px;padding-left:0px;color:#7f888a;padding-top:10px;">
ЗАО «Название компании» <br/>
Адрес: АДРЕС КОМПАНИИ <br/>
Тел.: +7 (495) 111 11 11 (круглосуточно)
</td>
<td style="width:50%;text-align:right;padding-right:0px;">
<img src="Указание адреса логотипа" style="margin-top:-10px;" />
</td>
</tr>
</table>
</div>
Подвал:
<table style="width:100%">
<tr>
<td style="width:50%;font-size:22px;padding-left:0px;color:#7f888a;">
Контактный телефон: <br />
+7 (495) 111-11-11
</td>
<td style="width:50%;text-align:right;font-size:22px;padding-right:0px;color:#7f888a;">
ФИО исполнителяЖ.Н. <br />
Должность
</td>
</tr>
</table>
Настройка бланка квитанции-подтверждения:
Редактор выглядит следующим образом:
Это классический HTML редактор, в котором используется набор тегов-переменных, список которых представлен ниже. Эти теги-переменные необходимо встраивать в разметку документа квитанции-подтверждения для получения желаемого результата.
Внимание! Шапка и подвал являются элементами бланка-квитанции, т.е. их обязательно необходимо добавить в виде тегов в редактируемый документ в виде тегов ##HEADER## и ##FOOTER##
Переменные для генерации документа:
##HEADER## - шапка документа, берется из настроек мода
##GIVEN## - дата формирования справки
##OWNER## - кому выдана
##AGENCY## - название агентства, в котором выписан билет
##TICKET## - номер электронного билета, по которому летел пассажир
##ROUTE## - маршрут полета,
##DATE## - дата вылета рейса, по которому формируем справку
##PAX## - пассажир, который летел
##FIORU## - ФИО пассажира на русском языке из карточки персоны в формате: Фамилия Имя Отчество
##FIOEN## - ФИО пассажира на латинице из карточки персоны в формате: Secondname Name Patronymic
##FLIGHT## - номер рейса
##PRICE## - стоимость билета (именно всего билета, а не сегмента)
##STATE## - информация о статусе купона - запись вида “Статус купона - открыт для использования, о чем свидетельствует следующая запись из ответа системы бронирования - SU6022 N 12MAY0645 OK NNOR O 12MAY”
##GDS## - информация из системы бронирования в оригинальном виде
##SUPPLIER## - наименование системы бронирования, в которой был оформлен билет. В настоящий момент это Amadeus и Sirena Travel.
##FOOTER## - подвал из настроек мода
Пример кода квитанции-подтверждения:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>Справка о присутствии на рейсе</title>
<style type="text/css">
body {
font-family: Arial;
font-size:18px;
margin:10px;
}
</style>
</head>
<body>
<table>
<tr>
<td>##HEADER##</td>
</tr>
<tr>
<td>
<h1>Справка-подтверждение</h1>
</td>
</tr>
<tr>
<td><b>Дата выдачи:</b> ##GIVEN##</td>
</tr>
<tr>
<td><b>Кому выдана:</b> ##OWNER##</td>
</tr>
<tr>
<td>
<hr />
Агентство <b>##AGENCY##</b> информирует о статусе перелета пассажира<br />
с использованием авиабилета ЕТ <b>##TICKET##</b><br />
по маршруту <b>##ROUTE##</b> на <b>##DATE##</b>, пассажир – <b>##PAX##</b>, <br />
##STATE##.<br />
Ниже приведен ответ на запрос получения информации о купоне из системы бронирования:
<hr />
</td>
</tr>
<tr>
<td style="font-family:'Courier New';white-space:pre">##GDS##</td>
</tr>
<tr>
<td>
<hr />
##FOOTER##
</td>
</tr>
</table>
</body>
</html>
Пример формируемого документа:
Справка формируется в виде PDF-документа и выглядит таким образом:
Для билетов Сирены справка- подтверждение выглядит вот так
Настройка информации об агентстве:
Необходимо внести код Аккредитованного в ТКП агентства из списка, а также имя пульта Sirena travel, используемого в системе.
Также можно внести наименование агентства для отображения в справке-подтверждении.
По окончании настроек необходимо нажать на кнопку “Сохранить” в правом нижнем углу.
Работа с модом:
При переходе на страницу заказа, будет доступна кнопка, по нажатию на которую в файлы заказа будет добавлена справка о присутствии пассажира на рейсе.
Справка о присутствии на рейсе доступна только в тех заказах, которые были уже пролетаны (прошло время прибытия последнего рейса в заказе), выгрузить её можно при помощи кнопки “Справка о присутствии на рейсе” в деталях заказа авиабилетов или через обращение к API:
Далее происходит обращение к системе бронирования авиабилетов (в настоящее время поддерживаются GDS Amadeus, Sabre, Sirena и S7 API), в результате чего пользователь попадает на страницу с результатом генерации справок, откуда он может сразу же их скачать:
После этого справка также будет доступна в разделе “файлы” в деталях заказа с типом “подтверждение от поставщика”:
Внимание! В силу имеющихся технологических ограничений у поставщиков справки-подтверждения представляется возможным сформировать только в течение трёх суток с момента окончания перелета.
Почему справка может не сформироваться?
В логах (в событии таймера) будет доступна причина, по которой справка не была сформирована, например:
Смотрим в логе (событие) ТАЙМЕР AviaFlightReportGenerationExecutor для SimpleReserve#(номер заказа)
В логе видим, что по данному заказу у нас действует второе правило. Данный заказ был оформлен оффлайн и не был импортирован локатор (PNR), чтобы связать GDS и заказ. Системе неоткуда получить данные. Система передает такой заказ агенту с соответствующим заданием:
Соответственно всегда проверяем лог формирования справки (на предмет распространенных ошибок):
нет локатора в заказе = справка не сформируется
статус купона отличен от “F” = справка не сформируется
Помимо двух данных распространенных ошибок могут встречать и альтернативные ошибки, например, ошибка связи с GDS в момент формирования справки и прочие неисправности.
Вся информация будет доступна в логе таймера.
Поддерживаемые модом поставщики Авиа
Выгрузка через API: release 29.11.2022
Данные о присутствии на рейсе можно выгрузить Универсальным методом выгрузки заказа или командировки Универсальный метод выгрузки заказа или командировки
Для этого в запросе следует передать необязательный параметр <AugmentationData> <xml FlightStatuses="true" /> </AugmentationData>, содержимое которого закодировано в виде HtmlEncode:
Данные о присутствии на рейсе буду добавлены в ответе в AugmentationData:
Пример структуры ответа: