Przypadki użycia
Poniższe przypadki użycia pokazują typowe przykłady użycia schematu BusReservation. Dzięki tym przykładom możesz się upewnić, że Twoje znaczniki są prawidłowo uporządkowane.
Podstawowe potwierdzenie rezerwacji
Gdy wysyłasz potwierdzenie rezerwacji, osadź w e-mailu ten kod.
Aplikacja Google wyświetli szczegóły rezerwacji w dniu podróży i powiadomi użytkownika o godzinie wyjazdu, aby dotrzeć na przystanek autobusowy na czas (z uwzględnieniem środka transportu, natężenia ruchu itp.). Jeśli podasz adres URL odprawy, tak jak w przykładzie poniżej, aplikacja Google wyświetli go użytkownikowi 24 godziny przed podróżą.
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>
Mikrodane
<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>
Karta pokładowa i bilet
Oprócz potwierdzenia rezerwacji możesz wysłać osobnego e-maila z kartą pokładową.
Karty pokładowe mogą nie tylko pomóc użytkownikowi dotrzeć na przystanek autobusowy na czas, ale też wyświetlić bilet podczas podróży. W tym celu w znacznikach należy uwzględnić kilka dodatkowych pól. Jeśli do wejścia na pokład pasażerów wymagane są dodatkowe pola, dodaj je w polu additionalTicketText.
W przypadku biletów bez rezerwacji miejsc te pola to : numSeats, ticketNumber, 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>
Mikrodane
<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>
W przypadku biletów z rezerwacją miejsc te pola to : seatNumber, seatingType, ticketNumber, 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>
Mikrodane
<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>
Przykład ze wszystkimi obsługiwanymi polami
Dla porównania podajemy przykład ze wszystkimi wypełnionymi obsługiwanymi polami:
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>
Mikrodane
<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>
Sprawdź znaczniki
Znaczniki możesz sprawdzać za pomocą narzędzia do testowania znaczników w e-mailach Email Markup Tester Tool. Wklej kod znaczników i kliknij przycisk Sprawdź , aby przeskanować treść i otrzymać raport o ewentualnych błędach.
Specyfikacja
Sprawdź szczegóły e-maila, aby dowiedzieć się, czy któraś z tych właściwości dotyczy Twojej rezerwacji autobusu. Dzięki dodaniu tych dodatkowych właściwości Google może wyświetlać użytkownikowi znacznie bardziej szczegółowy opis rezerwacji autobusu.
| Właściwość | Typ | Opis |
|---|---|---|
| reservationNumber | Tekst | (wymagane) Numer lub identyfikator rezerwacji. |
| url | URL | Strona internetowa, na której można wyświetlić rezerwację. |
| underName | Person lub Organization | (wymagane) Pasażer. |
| underName.name | Tekst | (wymagane) Imię i nazwisko. |
| underName.email | Tekst | Adres e-mail |
| programMembership | ProgramMembership | Członkostwo w programie dla często podróżujących, programie lojalnościowym hotelu itp. stosowane do rezerwacji. |
| programMembership.memberNumber | Tekst | Identyfikator członkostwa. |
| programMembership.program | Tekst | Nazwa programu. |
| bookingAgent | Organizacja lub Osoba | Agent lub agencja rezerwacyjna. Akceptuje też ciąg znaków (np. „”). |
| bookingAgent.name | Tekst | Nazwa agenta lub usługi. |
| bookingAgent.url | URL | Witryna agenta lub usługi. |
| bookingTime | DateTime | Data utworzenia rezerwacji. |
| modifiedTime | DateTime | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Czas ostatniej modyfikacji rezerwacji. |
| confirmReservationUrl | URL | Strona internetowa, na której można potwierdzić rezerwację. |
| cancelReservationUrl | URL | Strona internetowa, na której można anulować rezerwację. |
| modifyReservationUrl | URL | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Strona internetowa, na której można zmodyfikować rezerwację. |
| checkinUrl | URL | Strona internetowa, na której pasażer może się odprawić. |
| reservationStatus | ReservationStatus | (wymagane) Bieżący stan rezerwacji. |
| reservationFor | BusTrip | (wymagane) Informacje o podróży autobusem. |
| reservationFor.name | Tekst | Nazwa BusTrip. |
| reservationFor.busNumber | Tekst | np. 101. |
| reservationFor.busName | Tekst | np. Bolt Express. |
| reservationFor.busCompany | Organization | (wymagane) np. Bolt NYC. Akceptuje też ciąg znaków (np. „Bolt NYC”). |
| reservationFor.busCompany.name | Tekst | (wymagane) Nazwa organizacji. |
| reservationFor.departureBusStop | BusStop lub BusStation | (wymagane) Miejsce odjazdu autobusu. |
| reservationFor.departureBusStop.name | Tekst | (wymagane) Nazwa przystanku autobusowego. |
| reservationFor.departureBusStop.address | PostalAddress | Adres przystanku lub dworca autobusowego. |
| reservationFor.departureBusStop.address.streetAddress | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Adres ulicy, przy której znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.departureBusStop.address.addressLocality | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Miejscowość (np. miasto), w której znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.departureBusStop.address.addressRegion | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Region (np. województwo), w którym znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.departureBusStop.address.postalCode | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Kod pocztowy przystanku lub dworca autobusowego. |
| reservationFor.departureBusStop.address.addressCountry | Tekst lub Country | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Kraj, w którym znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.departureBusStop.directions | Tekst | Wskazówki dojazdu do przystanku autobusowego. |
| reservationFor.departureTime | DateTime | (wymagane) Godzina odjazdu autobusu. |
| reservationFor.arrivalBusStop | BusStop lub BusStation | (wymagane) Miejsce przyjazdu autobusu. |
| reservationFor.arrivalBusStop.name | Tekst | (wymagane) Nazwa przystanku autobusowego. |
| reservationFor.arrivalBusStop.address | PostalAddress | Adres przystanku lub dworca autobusowego. |
| reservationFor.arrivalBusStop.address.streetAddress | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Adres ulicy, przy której znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.arrivalBusStop.address.addressLocality | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Miejscowość (np. miasto), w której znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.arrivalBusStop.address.addressRegion | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Region (np. województwo), w którym znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.arrivalBusStop.address.postalCode | Tekst | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Kod pocztowy przystanku lub dworca autobusowego. |
| reservationFor.arrivalBusStop.address.addressCountry | Tekst lub Country | (zalecane w przypadku kart potwierdzenia i odpowiedzi w wyszukiwarce) Kraj, w którym znajduje się przystanek lub dworzec autobusowy. |
| reservationFor.arrivalBusStop.directions | Tekst | Wskazówki dojazdu do przystanku autobusowego. |
| reservationFor.arrivalTime | DateTime | (wymagane) Godzina przyjazdu autobusu. |
| reservedTicket | Ticket | Informacje o bilecie. |
| reservedTicket.ticketNumber | Tekst | Numer lub identyfikator biletu. |
| reservedTicket.downloadUrl | URL | . |
| reservedTicket.printUrl | URL | . |
| reservedTicket.ticketToken | Tekst lub URL | Jeśli obraz kodu kreskowego jest hostowany w Twojej witrynie, wartością pola jest adres URL obrazu lub kod kreskowy albo kod QR URI, np. „barcode128:AB34” (kody kreskowe ISO-15417), „qrCode:AB34” (kody QR), „aztecCode:AB34” (kody Aztec), „barcodeEAN:1234” (kody EAN) i „barcodeUPCA:1234” (kody UPCA). |
| reservedTicket.additionalTicketText | Tekst | Dodatkowy tekst wyjaśniający dotyczący biletu. |
| reservedTicket.price | Tekst | Łączna cena biletu. |
| reservedTicket.priceCurrency | Tekst | Waluta (w trzyliterowym formacie ISO 4217), w której podano cenę biletu. |
| reservedTicket.underName | Person lub Organization | Osoba lub organizacja, dla której jest przeznaczony bilet. |
| reservedTicket.underName.name | Tekst | Imię i nazwisko. |
| reservedTicket.ticketedSeat | Miejsce | Lokalizacja zarezerwowanego miejsca (np. 27B). . |
| reservedTicket.ticketedSeat.seatingType | Tekst | Typ lub klasa miejsca. |
| reservedTicket.ticketedSeat.seatNumber | Tekst | Lokalizacja zarezerwowanego miejsca. |
| reservedTicket.ticketedSeat.seatRow | Tekst | Rząd, w którym znajduje się zarezerwowane miejsce. |