При подключении этот мод отправляет запрос в 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), в результате чего пользователь попадает на страницу с результатом генерации справок, откуда он может сразу же их скачать:
После этого справка также будет доступна в разделе “файлы” в деталях заказа с типом “подтверждение от поставщика”:
Внимание! В силу имеющихся технологических ограничений у поставщиков справки-подтверждения представляется возможным сформировать только в течение трёх суток с момента окончания перелета.
Почему справка может не сформироваться?
Внимание! Справка формируется только по онлайн заказам (или по оффлайн заказам, в которые предварительно была подгружена бронь (локатор) через импорт и только в случае если статус купона = F (ОТЛЕТАН). Важно понимать, что система имеет связь с GDS (откуда забирает статус купона) через PNR (локатор). Если заказ был оформлен офлайн и после бронь не была подгружена в заказ - справка НЕ сформируется = это корректно. Если статус купона отличен от F (FLOWN) - справка НЕ сформируется = это корректно.
В логах (в событии таймера) будет доступна причина, по которой справка не была сформирована, например:
Смотрим в логе (событие) ТАЙМЕР AviaFlightReportGenerationExecutor для SimpleReserve#(номер заказа)
В логе видим, что по данному заказу у нас действует второе правило. Данный заказ был оформлен оффлайн и не был импортирован локатор (PNR), чтобы связать GDS и заказ. Системе неоткуда получить данные. Система передает такой заказ агенту с соответствующим заданием:
Соответственно всегда проверяем лог формирования справки (на предмет распространенных ошибок):
нет локатора в заказе = справка не сформируется
статус купона отличен от “F” = справка не сформируется
Помимо двух данных распространенных ошибок могут встречать и альтернативные ошибки, например, ошибка связи с GDS в момент формирования справки и прочие неисправности.
Вся информация будет доступна в логе таймера.
Выгрузка через API: release 29.11.2022
Данные о присутствии на рейсе можно выгрузить Универсальным методом выгрузки заказа или командировки Универсальный метод выгрузки заказа или командировки
Для этого в запросе следует передать необязательный параметр <AugmentationData> <xml FlightStatuses="true" /> </AugmentationData>, содержимое которого закодировано в виде HtmlEncode:
<soapenv:Body> <cor:GetReservationDetails> <cor:id_Reserve>1790548</cor:id_Reserve> <cor:AugmentationData><xml FlightStatuses="true" /></cor:AugmentationData> </cor:GetReservationDetails> </soapenv:Body>
Данные о присутствии на рейсе буду добавлены в ответе в AugmentationData:
Пример структуры ответа:
<FlightStatuses> <Flight id_Reserve="1790548" Airline="S7" Number="1007" OriginCode="DME" DestinationCode="LED" DepartureDate="13.11.2022" State="FLOWN" Used="true"/> <Flight id_Reserve="1790548" Airline="S7" Number="1002" OriginCode="LED" DestinationCode="DME" DepartureDate="14.11.2022" State="FLOWN" Used="true"/> </FlightStatuses>