WebServices Desenvolvimento Versão 1.0

23

Click here to load reader

Transcript of WebServices Desenvolvimento Versão 1.0

Page 1: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Webservices Webticket

Versão 1.0

Page 2: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Sumário

INTRODUÇÃO ............................................................................................................................................... 3

TECNOLOGIA ................................................................................................................................................ 4

SEGURANÇA .................................................................................................................................................. 5

SERVIÇOS ....................................................................................................................................................... 6

AUTENTICAÇÃO DE USUÁRIO ................................................................................................................. 7

Serviço login ................................................................................................................................................................. 7

Serviço logoff ............................................................................................................................................................... 8

Serviço trocaSenha ....................................................................................................................................................... 9

DISPONIBILIDADES DE VÔOS .................................................................................................................. 9

Serviço disponibilidade................................................................................................................................................. 9

TARIFAÇÃO ................................................................................................................................................. 15

Serviço tarifar ............................................................................................................................................................. 15

RESERVA ...................................................................................................................................................... 18

Serviço criarReserva ................................................................................................................................................... 18

Serviço consultarReserva ........................................................................................................................................... 20

Serviço cancelarReserva ............................................................................................................................................. 20

Serviço consultarRelatorio.......................................................................................................................................... 21

Page 3: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Introdução Este documento descreve as tecnologias envolvidas, acesso, lista de serviços, descrição dos serviços e exemplos

práticos da integração dos serviços através de webservices.

Para utilizar os serviços providos pelo WebService temos as seguintes URLs:

Ambiente de testes (Para desenvolvimento da aplicação, reservas fictícias):

URL:

Ambiente de produção (Para desenvolvimento da aplicação, reservas fictícias):

URL:

WSDL:

É responsabilidade da aplicação garantir que todos os campos necessários dentro do objeto Request estejam

preenchidos. Caso contrário, uma exceção será lançada durante a execução do método.

Page 4: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Tecnologia Os webservices são desenvolvidos seguindo os padrões de desenvolvimento, interoperabilidade e segurança W3C.

Permitem a integração com as diversas plataformas existentes.

Axis 1.x (implementação SOAP). È a mais utilizada e que possuí maior respaldo. Fácil utilização e ampla documentação.

Integração/Desempenho

Tamanho do xml trafegado x Taxa de transferência

Objetos Simples x Objetos Complexos

Objetos simples: é uma alternativa para trafegar dados simples através de webservices. A transação é feita baseada no

padrão xml. O envio e o retorno contemplam somente um atributo do tipo string, com todo o conteúdo transformado

em xml.

Prós:

Alterações feitas nos serviços publicados não inviabilizam os clientes.

Contras:

Integridade do xml: a verificação do xml trafegado deve ser feita integralmente, tanto do lado cliente, como do

lado servidor.

O desenvolvimento do cliente é mais custoso e mais lento

Objetos complexos: padrão comum utilizado pelos webservices

Contras:

A alteração dos serviços publicados acarreta na atualização dos clientes, nesse caso, o mais recomendado é

criar novos serviços com características semelhantes e não se altera os serviços que já estão publicados.

Prós:

O desenvolvimento é rápido e simples, nas duas pontas, cliente e servidor.

Não há problema de incompatibilidade dos campos

Não existe verificação do xml trafegado. Os objetos enviados pelo cliente são exatamente os necessários para

transação

Page 5: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Segurança

Secure Socket Layer (SSL)

Prove segurança na comunicação ponto a ponto. Atualmente é o padrão mais utilizado na web.

WS-Security

Page 6: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Código de empresas aéreas O webservice utiliza códigos para representar as empresas aéreas, denominados código de rede. Os

GDS também são caracterizados pelo código de rede. Abaixo segue a lista de códigos que serão

exibidos no sistema.

Empresa Código

Total Linhas Aéreas T0

Team Transportes Aéreos E1

Abaeté Linhas Aéreas 1L

Tam Linhas Aéreas ATAM

NHT Z0

Ocean Air OC

Web Jet WJ

Trip 8R

Passaredo Y8

Pantanal P8

Gol Linhas Aéreas BWSGOL

AMADEUS AMADEUS

Worldspan WSPN

Sabre SABRE

Page 7: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Serviços

Descreve as características dos serviços. Quais são, como são, como devem ser acessado e os parâmetros de entrada e

retorno. Segue também exemplo de xml de requisição e resposta.

Autenticação de Usuário A autenticação do usuário é feita a nível de Empresa/Filial/Cliente/Usuário.

O cadastramento é feito pelo fornecedor da informação.

Esse grupo de serviços é responsável pelo tratamento do usuário com o sistema, engloba autenticação, login do

usuário, logoff do usuário e alteração de senha.

Serviço login

Autentica e cria uma sessão para o usuário específico.

O retorno do serviço terá o atributo “idAutenticacao”, que deve ser informado em todas os outros serviços.

Request

Campo Descrição Formato Requerido

loginReq Objeto do tipo login

loginReq

Empresa Código da empresa Texto Sim

Regional Código da regional Texto Sim

Filial Código da filial Texto Sim

Cliente Código do cliente Texto Sim

Usuário Nome do usuário Texto Sim

Senha Senha do usuário Texto Sim

<com.sisinvest.webticketservices.Login>

<empresa></empresa>

<regional></regional>

<filial></filial>

<cliente></cliente>

<usuário></usuário>

<senha></senha>

</com.sisinvest.webticketservices.Login>

Page 8: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Response

Campo Descrição Formato

loginResponse Objeto do tipo loginResponse

erro Descrição do erro caso ocorra.

erro

erroCod Código do erro. Numérico

erroDescricao Descrição do erro ocorrido. Texto

erroRede Descrição do erro apresentado

pela rede.

Texto

loginResponse

idAutenticacao Número identificador do login

efetuado, valor a ser enviado em

todas as outras transações.

Texto

<com.sisinvest.webticketservices.LoginResponse>

<idAutenticacao></idAutenticacao>

<erro></erro>

</com.sisinvest.webticketservices.LoginResponse>

Serviço logoff

O Logoff encerra uma sessão existente.

Os dados referentes à sessão serão perdidos.

Request

Campo Descrição Formato Requerido

idAutenticacao Número identificador do login

efetuado.

Texto Sim

Response

Campo Descrição Formato Requerido

retorno Informação sobre sucesso da Texto

Page 9: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

transação.

erro Descrição do erro caso ocorra.

Serviço alterarSenha

Neste serviço é possível alterar a senha do usuário.

Esse serviço é acessado caso o usuário esteja com a senha expirada ou a senha esteja zerada. Não é necessário efetuar

o login para essa transação.

Request

Campo Descrição Formato Requerido

login Objeto do tipo login,

retornado no método de

login

novaSenha Nova senha do usuário Texto Sim

Response

Campo Descrição Formato

sucesso Indicador de sucesso da

troca de senha

Texto

erro Descrição do erro caso

ocorra.

Disponibilidades de Vôos

Serviço disponibilidade

As disponibilidades de vôos obedecem aos critérios adotados para o Portal Webticket. A pesquisa pode ser para vôos

“one way”, “round trip” ou para múltiplos trechos, desde que não haja nenhuma restrição do provedor da companhia

aérea.

Existem também outras características, como os filtros, que permitem maior refinamento dos dados solicitados. Podem

ser escolhidos vôos sem escala, vôos sem conexão e escolha pela classe do assento.

Na resposta do serviço, é retornado o conjunto de vôos de todas as redes solicitadas, ou todas as redes existentes para

filial do login.

Como as respostas de vôos dependem dos diversos provedores de informações (GDS / Cias), o tempo de resposta pode

ser variado devido à quantidade de redes respondidas.

Page 10: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Na resposta deste serviço, é utilizado um recurso de paginação como tratamento de tempo e de tamanho de dados

trafegados. A paginação consiste em retornar em parte os dados respondidos pelas redes. Devido o tempo de resposta

de vôos ser variado, o serviço de disponibilidade retorna a princípio, um conjunto de dados limitado por um número de

dados de paginação.

O atributo “paginasCompletas” retorna “TRUE” indiciando se todas as redes responderam, caso existam redes a serem

respondidas. Caso as redes não respondam no tempo solicitado, pode ser enviado em uma nova requisição, o valor

“TRUE” no atributo “sessao” para verificar se os vôos foram respondidos. Indicar no atributo “numeroPagina” a página

solicitada, para pesquisar o restante dos dados retornados.

Request

Campo Descrição Formato Requerido

idAutenticacao Número identificador do login

efetuado, este valor é

retornado no serviço de login.

Texto Sim

sessao Indicador para solicitar os

dados que já foram

pesquisados, que estão

paginados.

Texto (TRUE,

FALSE)

Sim

numeroPagina Numero da pagina a ser

pesquisada.

Numérico ( > 0 ) Sim

somenteRedesEspecificas Indicador para solicitar

somente as redes informadas

no item REDES caso false

retoram todas.

Texto (TRUE,

FALSE), default

=FALSE

Sim

trechosReq Lista de trechos do tipo

trechoReq

idaVolta Indicador Ida Volta Texto (TRUE,

FALSE)

Não

qtdAdt Quantidade de passageiros

adultos

Texto Sim

qtdChd Quantidade de passageiros

criança (2-11 anos)

Texto Não

qtdInf Quantidade de passageiros colo

(<2 anos)

Texto Não

classe Classe do vôo (econômica,

executiva,primeira)

Texto Sim

rede Lista de redes pesquisadas do

Page 11: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

tipo rede

rede

codRede Código da rede

ciasInfo Lista de dados da cia referente a

rede do tipo ciaInfo

ciaInfo

ciaIata Iata da cia aérea Texto Não

negociacao Código de negociação Texto Não

negociacao

tipo tipo de negociação Texto Não

codigo Código da negociação Texto Não

trechoReq

origem Sigla do aeroporto de

origem

Texto Sim

destino Sigla do aeroporto de

destino

Texto Sim

dataHoraPartidaInicial Data de partida do trecho Texto (dd/mm/yyyy

HH:mm)

Sim

dataHoraPartidaFinal Data de partida do trecho (a

data deve ser a mesma do

campo

dataHoraPartidaInicial,

somente alterando o valor

do horário, 23:59.

Texto (dd/mm/yyyy

HH:mm)

Sim

dataHoraChegadaFinal Data de retorno, utilizado

para montagem de pesquisa

de ida e volta

Texto (dd/mm/yyyy

HH:mm)

Não (somente em

solicitações ida volta)

dataHoraChegadaFinal (a data deve ser a mesma do

campo

dataHoraChegadaFinal,

Texto (dd/mm/yyyy

HH:mm)

Não (somente em

solicitações ida volta)

Page 12: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

somente alterando o valor

do horário, 23:59.

Response

Campo Descrição

trechos Lista de trechos de resposta do

tipo Trecho

trecho

origem Iata da origem Texto

destino Iata de destino Texto

cidadeOrigem Texto

cidadeDestino Texto

paginasCompletas Informa se todas as redes

solicitadas responderam.

Texto (TRUE, FALSE)

matriz Lista de informações das

redes respondidas do tipo

matriz.

viagem Lista de viagens retornados do

tipo viagem

erro Descrição do erro caso ocorra.

matriz

rede Código da rede Texto

qtdVoos Quantidade de vôos

respondidos da rede

Numérico

viagem

rede Código da rede para pesquisa Texto Não

qtdEscalas Número de escalas Texto Não

Page 13: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

valorTotal Valor total Texto Não

qtdConexao Número de conexões Texto Não

voos Lista de vôos retornados do

tipo Voo

Voo

cia Código da companhia aérea Texto

vooNumero Número do voo Texto

aeroportoOrigem Sigla do aeroporto de origem Texto

aeroportoDestino Sigla do aeroporto de destino Texto

dataHoraPartida Data e hora da partida Texto

dataHoraChegada Data e hora da Chegada Texto

fusoOrigem Fuso horário da origem Texto

fusoDestino Fuso horário do destino Texto

classe Classe escolhida Texto

baseTarifaria Base tarifaria escolhida para

tarifação

Texto

freeAttribute Informações adicionais sobre o

vôo, item obrigatório para

pesquisa de tarifa

Texto

valorTaxaAeroportuaria Valor da taxa de embarque do

voo

Texto

moedaTaxaAeroportuaria moeda da taxa de embarque do

voo

Texto

valorTaxaAeroportuariaEquivalente Valor da taxa de embarque

equivalente do voo

Texto

moedaTaxaAeroportuariaEquivalente moeda da taxa de embarque

equivalente do voo

Texto

status Status do vôo (HK-Confirmado) Texto

escalas Lista das escalas do vôo do tipo

Escala

Page 14: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

tarifas Lista de tarifas do tipo Tarifa

assentos Lista de assentos do tipo Assento

assento

assentoCodigo Código do assento Texto Não

paxNumero Numero do pax Numérico Não

Tarifas

baseTarifaria Sigla da base tarifaria Texto Não

qtdDisponivel Quantidade de assentos

disponíveis

Numérico Não

restricao Informação sobre alguma

restrição da tarifa

Texto Não

tipoTarifa Tipo da tarifa, ida ou ida e

volta

Texto Não

regraTarifaria Texto da regra da tarifa Texto Não

valorTarifaAdt Valor da tarifa referente ao

passageiro adulto

Texto Não

valorTarifaChd Valor da tarifa referente ao

passageiro criança

Texto Não

valorTarifaInf Valor da tarifa referente ao

passageiro colo

Texto Não

moedaTarifa Texto Não

valorTarifaAdtEquivalente Valor da tarifa Equivalente

referente ao passageiro

adulto

Texto Não

valorTarifaChdEquivalente Valor da tarifa Equivalente

referente ao passageiro

criança

Texto Não

valorTarifaInfEquivalente Valor da tarifa Equivalente

referente ao passageiro colo

Texto Não

moedaTarifaEquivalente Texto Não

valorTaxaDuAdt Valor da taxa DU referente ao Texto Não

Page 15: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

passageiro adulto

valorTaxaDuChd Valor da taxa DU referente ao

passageiro criança

Texto Não

valorTaxaDuInf Valor da taxa DU referente ao

passageiro colo

Texto Não

Escalas

cia Código da companhia aérea Texto Não

aeroportoOrigem Sigla do aeroporto de origem Texto Não

aeroportoDestino Sigla do aeroporto de destino Texto Não

dataHoraPartida Data e hora da partida Texto Não

dataHoraChegada Data e hora da Chegada Texto Não

Tarifação

Serviço tarifar

Cálculo da tarifa para as viagens solicitadas.

Devem ser informados todos os vôos a serem tarifados. A tarifação é feita pelo código de rede solicitado.

O item vôo deve ter os mesmos valores do retorno da disponibilidade, diferencia-se o item classe, o qual é informado

quando não se deseja a melhor classe. Essa informação é referenciado como “classe” na lista de “tarifaClasse” dentro

de cada vôo, neste caso deve ser informado o campo base tarifaria.

Request

Campo Descrição Formato Requerido

idAutenticacao Número identificador do

login efetuado, este

valor é retornado no

serviço de login.

Texto Sim

melhorPreco Texto (TRUE/FALSE) Sim

qtdAdt Quantidade de

passageiros adultos

Texto Sim

qtdChd Quantidade de

passageiros criança (2-

Texto Não

Page 16: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

11 anos)

qtdInf Quantidade de

passageiros colo (<2

anos)

Texto Não

rede Objeto do tipo rede Sim

voos Lista de voos do tipo

voo, objeto retornado

no serviço de

disponibilidade

Sim

Voo

cia Código da companhia aérea Texto Sim

vooNumero Número do voo Texto Sim

aeroportoOrigem Sigla do aeroporto de origem Texto Sim

aeroportoDestino Sigla do aeroporto de destino Texto Sim

dataHoraPartida Data e hora da partida Texto Sim

dataHoraChegada Data e hora da Chegada Texto

fusoOrigem Fuso horário da origem Texto

fusoDestino Fuso horário do destino Texto

valorTaxaAeroportuaria Valor da taxa de embarque do

voo

Texto

moedaTaxaAeroportuaria moeda da taxa de embarque do

voo

Texto

valorTaxaAeroportuariaEquivalente Valor da taxa de embarque

equivalente do voo

Texto

tarifas Lista com somente um item

tarifaClasse, a escolhida.

Sim

Response

Campo Descrição

taxa Valor total da taxa Texto

Page 17: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

calculada

tarifa Valor total da tarifa

calculada

Texto

moeda Moeda da tarifa Texto

voos Lista de voos do tipo

voo, objeto retornado no

serviço de

disponibilidade

tarifaTipoPax Lista de tarifação por rede

do tipo TarifaRede

erro Descrição do erro caso

ocorra.

TarifaTipoPax

tipo Tipo de passageiro Texto

quantidade Quantidade de

passageiro associada ao

tipo de passageiro

Numérico

tarifa

taxa

taxaEmissao

moeda

tarifaBase

taxa

taxaEmissao

taxaEmissao

Page 18: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Reserva

Serviço criarReserva

O serviço de criação de reserva está baseado no serviço de tarifação efetuado previamente.

Para efetuar a reserva basta adicionar ao envio os dados dos passageiros e contatos.

Status da reserva: CONFIRMADA, CANCELADA.

Request

Campo

idAutenticacao Número identificador do

login efetuado, este

valor é retornado no

serviço de login.

Texto Sim

observação Campo de observação,

sem restrição, esse

campo será associado as

reservas efetuadas.

Texto Não

rede Objeto do tipo rede Sim

voo Lista de voos do tipo

voo

paxs Lista de passageiros do

tipo passageiro

contatos Lista de contatos do tipo

contato

passageiro

nomePassageiro Nome do pax Texto sim

sobrenomePassageiro Sobrenome do pax Texto Sim

faixaEtaria Faixa etária Texto (ADT, CHD, INF) sim

sexoPassageiro Sexo do pax Texto (M, F) Sim

dataNascimento Data de nascimento Texto Sim

idadePassageiro Idade do pax(chd 2-11

bebes 0-1)

Texto Sim

Page 19: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

contato

ddi Codigo de area

internacional

Numérico nao

ddd Codigo de area local Numérico nao

telefone Numero do telefone Numérico (xx) 9999-

9999

nao

nome Nome do contato Texto nao

Response

Campo Descrição Formato

localizadorWebticket Localizador webticket Texto

reservas Lista de reservas do tipo

reserva

erro Descrição do erro caso

ocorra

reserva

localizador Localizador da reserva Texto

localizadorCia Localizador cia Texto

timeLimit Data e hora do prazo para

emissão

Texto

viagens Lista de viagens do tipo

viagem.

paxs Lista de passageiros do

tipo pax

contatos Lista de contatos do tipo

contato

Page 20: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Serviço consultarReserva

Consulta de uma reserva ou do conjunto de reservas sob o localizador Webticket. O principal atributo de pesquisa é o

localizador, o qual retorna uma reserva referente à rede. Outro fator de pesquisa é o localizador webticket, o qual traz

todas as reservas associadas a este localizador.

Request

Campo Descrição

idAutenticacao Número identificador do

login efetuado, este

valor é retornado no

serviço de login.

Texto Sim

localizador Localizador da rede que

a reserva pertence

Texto Não

rede Código da rede que a

reserva pertence

Texto Não

localizadorWebticket Localizador webticket Texto Não

Response

Campo Descrição

reserva Objeto do tipo reserva

erro Descrição do erro caso

ocorra.

Serviço cancelarReserva

Serviço utilizado para cancelar as reservas criadas. O atributo localizadorWebticket é utilizado para cancelar todas as

reservas associadas a ele.

Para cancelar somente uma reserva deve ser enviado o identificador da rede e o localizador da reserva a ser cancelada.

Request

Campo Descrição

idAutenticacao Número identificador do

login efetuado, este

valor é retornado no

serviço de login.

Texto Sim

localizador Localizador da reserva Texto Sim

Page 21: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

rede Código da rede da

reserva a ser cancelada

Texto Sim

localizadorWebticket Localizador webticket Texto Não

Response

Campo Descrição

erro Descrição do erro caso

ocorra.

Serviço consultarRelatorio

Neste serviço o usuário pode pesquisar as reservas criadas, a resposta é o resumo de todas as reservas que se

encontram dentro dos critérios solicitados. A pesquisa deve ser feita por um período de datas

Request

Campo Descrição Formato Requerido

idAutenticacao Número identificador do

login efetuado, este

valor é retornado no

serviço de login.

Texto Sim

dataInicial Data inicial de pesquisa Texto (dd/mm/aaaa) Sim

dataFinal Data final de pesquisa Texto (dd/mm/aaaa) Sim

horaInicial Hora inicial de pesquisa Texto (hh:mm) Não

horaFinal Hora final de pesquisa Texto (hh:mm) Não

timeLimit Data e hora do prazo

para emissão

Texto (dd/mm/aaaa) Não

situacao Situação da reserva Texto Não

nomePax Primeiro nome do

passageiro

Texto Não

sobrenomePax Sobrenome do

passageiro

Texto Não

Page 22: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

rede Código da rede que a

reserva pertence

Texto Não

pagina Numero da página número (default = 1) Não

ordem Ordenação dos dados Texto (CRESCENTE-

default, DECRESCENTE)

Não

Response

Campo Descrição

relatorio Lista com resumo das

informações das reservas

que se encontram nos

critérios.

erro Descrição do erro caso

ocorra.

relatorio

localizador Localizador de rede da

reserva

Texto

localizadorCia Localizador cia Texto

localizadorWebticket Localizador webticket Texto

timeLimit Data e hora do prazo para

emissão

Texto

rede Codigo da rede Texto

agencia Codigo da agencia Texto

nome Nome do pax Texto

sobrenome Sobrenome do pax Texto

tarifa Valor da tarifa Texto

taxa Valor da taxa Texto

Page 23: WebServices Desenvolvimento Versão 1.0

WEBTICKETSERVICES

Mensagens de Erro Os códigos de erro são identificadores únicos que são gerados para cada tipo de erro ocorrido na requisição ou na resposta.