Casos de uso
Os casos de uso a seguir mostram exemplos comuns de como o esquema BusReservation
é usado. Use esses exemplos para garantir que sua marcação esteja estruturada corretamente.
Confirmação de reserva básica
Incorpore a marcação a seguir em seu e-mail ao enviar uma confirmação de reserva.
O Google app vai mostrar os detalhes da reserva no dia da viagem e notificar o usuário sobre a hora de sair para chegar ao ponto de ônibus a tempo, considerando o meio de transporte, o trânsito etc. Se você fornecer um URL de check-in como no exemplo abaixo, o Google app o exibirá para o usuário 24 horas antes da viagem.
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
}
}
</script>
Microdados
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
</div>
Cartão de embarque e ingresso
Além de uma confirmação de reserva, você pode acionar um cartão de embarque com um cartão de confirmação em um e-mail separado.
Os cartões de confirmação não só ajudam a chegar ao ponto de ônibus a tempo e também mostram a passagem para o usuário durante a viagem. Para isso, é preciso incluir alguns campos adicionais na marcação. Inclua outros campos necessários para embarcar no campo additionalTicketText
.
Estes são os campos de ingressos sem assentos reservados : numSeats
, ticketNumber
e ticketToken
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
Microdados
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
Para ingressos com assentos reservados, estes campos são : seatNumber
, seatingType
, ticketNumber
e ticketToken
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketedSeat": {
"@type": "Seat",
"seatNumber": "27B",
"seatingType": "Coach"
},
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
Microdados
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatNumber" content="27B"/>
<meta itemprop="seatingType" content="Coach"/>
</div>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
Exemplo com todos os campos compatíveis
Como referência, veja um exemplo com todos os campos aceitos preenchidos:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"url": "http://boltbus.com/view/123456",
"underName": {
"@type": "Person",
"name": "John Smith",
"email": "john@mail.com"
},
"programMembership": {
"@type": "ProgramMembership",
"memberNumber": "12345",
"program": "STA"
},
"bookingAgent": {
"@type": "Organization",
"name": "Bolt Bus NYC",
"url": "http://boltbus.com/"
},
"bookingTime": "2013-01-14T13:05:00-05:00",
"modifiedTime": "2013-03-14T13:05:00-05:00",
"confirmReservationUrl": "http://boltbus.com/confirm?id=123456",
"cancelReservationUrl": "http://boltbus.com/cancel?id=123456",
"modifyReservationUrl": "http://boltbus.com/edit?id=123456",
"checkinUrl": "http://boltbus.com/checkin?id=AB3XY2",
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"name": "?",
"busNumber": "63",
"busName": "Bolt Bus NY:Boston",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC",
"address": {
"@type": "PostalAddress",
"streetAddress": "625 8th Avenue",
"addressLocality": "New York",
"addressRegion": "NY",
"postalCode": "10018",
"addressCountry": "USA"
},
"directions": "Bus terminals are at floors 2-4 of the Port Authority building"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station",
"address": {
"@type": "PostalAddress",
"streetAddress": "Summer St.",
"addressLocality": "Boston",
"addressRegion": "MA",
"postalCode": "02111",
"addressCountry": "USA"
},
"directions": "Bus stops are at thewest side of the train station."
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"ticketNumber": "123XYZ",
"downloadUrl": "?",
"printUrl": "?",
"ticketToken": "qrCode:123456789",
"additionalTicketText": "?",
"price": "45.00",
"priceCurrency": "USD",
"underName": {
"@type": "Person",
"name": "Mary Smith"
},
"ticketedSeat": {
"@type": "Seat",
"seatingType": "Coach",
"seatNumber": "27",
"seatRow": "A"
}
}
}
</script>
Microdados
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<link itemprop="url" href="http://boltbus.com/view/123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
<meta itemprop="email" content="john@mail.com"/>
</div>
<div itemprop="programMembership" itemscope itemtype="http://schema.org/ProgramMembership">
<meta itemprop="memberNumber" content="12345"/>
<meta itemprop="program" content="STA"/>
</div>
<div itemprop="bookingAgent" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt Bus NYC"/>
<link itemprop="url" href="http://boltbus.com/"/>
</div>
<meta itemprop="bookingTime" content="2013-01-14T13:05:00-05:00"/>
<meta itemprop="modifiedTime" content="2013-03-14T13:05:00-05:00"/>
<link itemprop="confirmReservationUrl" href="http://boltbus.com/confirm?id=123456"/>
<link itemprop="cancelReservationUrl" href="http://boltbus.com/cancel?id=123456"/>
<link itemprop="modifyReservationUrl" href="http://boltbus.com/edit?id=123456"/>
<link itemprop="checkinUrl" href="http://boltbus.com/checkin?id=AB3XY2"/>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="name" content="?"/>
<meta itemprop="busNumber" content="63"/>
<meta itemprop="busName" content="Bolt Bus NY:Boston"/>
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="625 8th Avenue"/>
<meta itemprop="addressLocality" content="New York"/>
<meta itemprop="addressRegion" content="NY"/>
<meta itemprop="postalCode" content="10018"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus terminals are at floors 2-4 of the Port Authority building"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="Summer St."/>
<meta itemprop="addressLocality" content="Boston"/>
<meta itemprop="addressRegion" content="MA"/>
<meta itemprop="postalCode" content="02111"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus stops are at thewest side of the train station."/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="downloadUrl" content="?"/>
<meta itemprop="printUrl" content="?"/>
<meta itemprop="ticketToken" content="qrCode:123456789"/>
<meta itemprop="additionalTicketText" content="?"/>
<meta itemprop="price" content="45.00"/>
<meta itemprop="priceCurrency" content="USD"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="Mary Smith"/>
</div>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatingType" content="Coach"/>
<meta itemprop="seatNumber" content="27"/>
<meta itemprop="seatRow" content="A"/>
</div>
</div>
</div>
Testar sua marcação
É possível validar sua marcação usando a Ferramenta para testar a marcação em e-mails. Cole seu código de marcação e clique no botão Validar para digitalizar o conteúdo e receber um relatório sobre os erros presentes.
Especificação
Revise os detalhes do seu e-mail para ver se alguma dessas propriedades é aplicável à sua reserva de ônibus. Ao marcar essas propriedades adicionais, você permite que o Google mostre ao usuário uma descrição muito mais detalhada da reserva de ônibus.
Propriedade | Tipo | Descrição |
---|---|---|
reservationNumber | Texto | (obrigatório) O número ou ID da reserva. |
url | URL | Página da Web em que as reservas podem ser visualizadas. |
underName | Pessoa ou organização | (obrigatório) O passageiro. |
underName.name | Texto | (obrigatório) Nome da pessoa. |
underName.email | Texto | Endereço de e-mail. |
programMembership | ProgramMembership | Qualquer associação em um programa de milhagem, programa de fidelidade de hotel etc. que esteja sendo aplicada à reserva. |
programMembership.memberNumber | Texto | O identificador da assinatura. |
programMembership.program | Texto | É o nome do programa. |
bookingAgent | Organização ou Pessoa | Agente ou agência de reservas. Também aceita uma string (por exemplo, ""). |
bookingAgent.name | Texto | Nome do agente/serviço. |
bookingAgent.url | URL | Site do agente/serviço. |
bookingTime | DateTime | Data em que a reserva foi feita. |
modifiedTime | DateTime | (recomendado para cartões de confirmação/respostas da pesquisa) Hora em que a reserva foi modificada pela última vez. |
confirmReservationUrl | URL | Página da Web em que é possível confirmar a reserva. |
cancelReservationUrl | URL | Página da Web em que é possível cancelar a reserva. |
modifyReservationUrl | URL | (recomendado para cartões de confirmação/respostas da pesquisa) Página da Web em que a reserva pode ser modificada. |
checkinUrl | URL | Página da Web em que o passageiro pode fazer check-in. |
reservationStatus | ReservationStatus | (obrigatório) Status atual da reserva. |
reservationFor | BusTrip | (obrigatório) Informações sobre a viagem de ônibus. |
reservationFor.name | Texto | Nome do BusTrip. |
reservationFor.busNumber | Texto | Por exemplo: 101. |
reservationFor.busName | Texto | Por exemplo: Bolt Express. |
reservationFor.busCompany | Organização | (obrigatório), por exemplo, Parafuso Nova York. Também aceita uma string (por exemplo, "Parafuso Nova York"). |
reservationFor.busCompany.name | Texto | (obrigatório) Nome da organização. |
reservationFor.departureBusStop | BusStop ou BusStation | (obrigatório) De onde parte o ônibus. |
reservationFor.departureBusStop.name | Texto | (obrigatório) Nome do BusStop. |
reservationFor.departureBusStop.address | PostalAddress | Endereço do ponto de ônibus / estação de partida. |
reservationFor.departureBusStop.address.streetAddress | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Endereço da estação / ponto de ônibus de partida. |
reservationFor.departureBusStop.address.addressLocality | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região administrativa (por exemplo, cidade) do ponto de ônibus / estação de partida. |
reservationFor.departureBusStop.address.addressRegion | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de partida. |
reservationFor.departureBusStop.address.postalCode | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) CEP do ponto de ônibus / estação de partida. |
reservationFor.departureBusStop.address.addressCountry | Texto ou país | (recomendado para cartões de confirmação/respostas da pesquisa) País do ponto de ônibus / estação de partida. |
reservationFor.departureBusStop.directions | Texto | Rotas até o ponto de ônibus. |
reservationFor.departureTime | DateTime | (obrigatório) Horário de partida do ônibus. |
reservationFor.arrivalBusStop | BusStop ou BusStation | (obrigatório) O local de chegada do ônibus. |
reservationFor.arrivalBusStop.name | Texto | (obrigatório) Nome do BusStop. |
reservationFor.arrivalBusStop.address | PostalAddress | Endereço do ponto de ônibus / estação de chegada. |
reservationFor.arrivalBusStop.address.streetAddress | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Endereço da estação / ponto de ônibus de chegada. |
reservationFor.arrivalBusStop.address.addressLocality | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região administrativa (por exemplo, cidade) do ponto de ônibus / estação de chegada. |
reservationFor.arrivalBusStop.address.addressRegion | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de chegada. |
reservationFor.arrivalBusStop.address.postalCode | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) CEP do ponto de ônibus / estação de chegada. |
reservationFor.arrivalBusStop.address.addressCountry | Texto ou país | (recomendado para cartões de confirmação/respostas da pesquisa) País do ponto de ônibus / estação de chegada. |
reservationFor.arrivalBusStop.directions | Texto | Rotas até o ponto de ônibus. |
reservationFor.arrivalTime | DateTime | (obrigatório) Horário de chegada do ônibus. |
reservedTicket | "Ticket" (Tíquete) | Informações sobre passagens. |
reservedTicket.ticketNumber | Texto | O número ou ID do tíquete. |
reservedTicket.downloadUrl | URL | . |
reservedTicket.printUrl | URL | . |
reservedTicket.ticketToken | Texto ou URL | Se a imagem do código de barras estiver hospedada no seu site, o valor do campo será o URL da imagem, ou um URI de código de barras ou QR, como "barcode128:AB34" (códigos de barras ISO-15417), "qrCode:AB34" (QR codes), "aztecCode:AB34" (códigos Astec), "barcodeEAN:1234" (códigos EAN) e "barcodeUPCA:1234" (códigos UPCA). |
reservedTicket.additionalTicketText | Texto | Texto explicativo adicional sobre o ingresso. |
reservedTicket.price | Texto | Preço total do ingresso. |
reserveTicket.priceCurrency. | Texto | A moeda (no formato ISO 4217 de três letras) do preço do ingresso. |
reservedTicket.underName | Pessoa ou organização | A pessoa ou organização a que o tíquete se destina. |
reservedTicket.underName.name | Texto | Nome da pessoa. |
reservedTicket.ticketedSeat | Assento | O local do assento reservado (por exemplo, 27B). . |
reservedTicket.ticketedSeat.seatingType | Texto | O tipo/classe do assento. |
reservedTicket.ticketedSeat.seatNumber | Texto | O local do assento reservado. |
reservedTicket.ticketedSeat.seatRow | Texto | O local da fila do assento reservado. |