W schema.org działanie to aktywność, którą można wykonać na uporządkowanych danych. Gmail obsługuje kilka typów działań, a każdy z nich możesz zdefiniować za pomocą podobnych uporządkowanych danych.
Działania „Przejdź do”
Jeśli dodasz do treści znaczniki z encjami schema.org, możesz dodać do nich działania „Przejdź do”. Aby na przykład dodać do encji EmailMessage link „Przejdź do” ViewAction, wypełnij właściwość potentialAction e-maila, jak w tym przykładzie:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://watch-movies.com/watch?movieId=abc123",
"name": "Watch movie"
},
"description": "Watch the 'Avengers' movie online"
}
</script>
Mikrodane
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
<link itemprop="target" href="https://watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="name" content="Watch movie"/>
</div>
<meta itemprop="description" content="Watch the 'Avengers' movie online"/>
</div>
Inne klienty poczty e-mail, które nie obsługują schematów w e-mailach, automatycznie ignorują te znaczniki.
Precyzyjne linki mobilne
Działania „Przejdź do” mogą też prowadzić bezpośrednio do treści w aplikacjach mobilnych na
Android i
iOS.
Aby utworzyć precyzyjny link do aplikacji, dodaj dodatkowe adresy URL target zakodowane za pomocą schematów android-app:// i ios-app://, jak pokazano w tych przykładach:
JSON-LD
"target": [
"<web url>",
"android-app://<android package name>/<scheme>/<host>/<path+query>",
"ios-app://<App store ID>/<scheme>/<host><path+query>"
]
Mikrodane
<link itemprop="target" href="<web url>"/>
<link itemprop="target" href="android-app://<android package name>/<scheme>/<host>/<path+query>"/>
<link itemprop="target" href="ios-app://<App store ID>/<scheme>/<host>/<path+query>"/>
Rozszerzenie poprzedniego przykładu EmailMessage:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"name": "Watch movie",
... information about the movie ...
"potentialAction": {
"@type": "ViewAction",
"target": [
"https://watch-movies.com/watch?movieId=abc123",
"android-app://com.watchmovies.app/http/watch-movies.com/watch?movieId=abc123",
"ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"
]
}
}
</script>
Mikrodane
<div itemscope itemtype="http://schema.org/EmailMessage">
<meta itemprop="name" content="Watch movie"/>
... information about the movie ...
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ViewAction">
<meta itemprop="target" content="https://watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="target" content="android-app://com.watchmovies.android/http/watch-movies.com/watch?movieId=abc123"/>
<meta itemprop="target" content="ios-app://12345/movieapp/watch-movies.com/watch?movieId=abc123"/>
</div>
</div>
Jeśli użytkownik nie ma Twojej aplikacji, działanie przekieruje go na podany przez Ciebie adres URL.
Działania w aplikacji
Gmail obsługuje działania w aplikacji bez przekierowywania użytkownika do innej witryny. Działania w aplikacji deklarujesz tak samo jak działania „Przejdź do”, ale dodajesz dodatkowe informacje, które pomagają klientom poczty e-mail (np. Gmailowi) obsługiwać działanie w tekście.
Zamiast deklarować działanie za pomocą target, zadeklaruj HttpActionHandler dla działania z odpowiednią konfiguracją.
Możesz na przykład dodać do e-maili przycisk potwierdzenia, który wymaga od użytkowników zatwierdzenia, potwierdzenia lub zaakceptowania czegoś. Gdy użytkownik kliknie przycisk, Google wyśle żądanie HTTP do Twojej usługi, rejestrując potwierdzenie. Użytkownicy mogą wchodzić w interakcję z ConfirmAction tylko raz.
Ten przykład dodaje przycisk ConfirmAction do e-maila dotyczącego raportu wydatków:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ConfirmAction",
"name": "Approve Expense",
"handler": {
"@type": "HttpActionHandler",
"url": "https://myexpenses.com/approve?expenseId=abc123"
}
},
"description": "Approval request for John's $10.13 expense for office supplies"
}
</script>
Mikrodane
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
<meta itemprop="name" content="Approve Expense"/>
<div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
<link itemprop="url" href="https://myexpenses.com/approve?expenseId=abc123"/>
</div>
</div>
<meta itemprop="description" content="Approval request for John's $10.13 expense for office supplies"/>
</div>
Działania wygasające
W wielu przypadkach działania są istotne tylko przez ograniczony czas. Działania powiązane z encjami o znanych datach, takimi jak rezerwacje podróży, automatycznie wygasają. Gmail nie wyświetla działania po zakończeniu podróży.
Możesz też jawnie dodać do działań daty wygaśnięcia. Na przykład działanie polegające na zapisaniu kuponu lub kodu oferty może być ważne tylko przez ograniczony czas. Aby ustawić przedział czasu, w którym ma być wyświetlane działanie, ustaw właściwości startTime i endTime działania:
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ConfirmAction",
"name": "Save coupon",
"handler": {
"@type": "HttpActionHandler",
"url": "https://my-coupons.com/approve?couponId=abc123"
},
"startTime": "2015-06-01T12:00:00Z",
"endTime": "2015-06-05T12:00:00Z"
}
}
</script>
Mikrodane
<div itemscope itemtype="http://schema.org/EmailMessage">
<div itemprop="potentialAction" itemscope itemtype="http://schema.org/ConfirmAction">
<meta itemprop="name" content="Save coupon"/>
<div itemprop="handler" itemscope itemtype="http://schema.org/HttpActionHandler">
<link itemprop="url" href="https://my-coupons.com/approve?couponId=abc123"/>
</div>
<meta itemprop="startTime" content="2015-06-01T12:00:00Z" />
<meta itemprop="endTime" content="2015-06-05T12:00:00Z" />
</div>
</div>
Więcej informacji
Więcej informacji o działaniach znajdziesz w tych artykułach:
- Obsługa żądań działań
- Bezpieczne działania
- Precyzyjne linki do aplikacji na Androida
- Precyzyjne linki do aplikacji na iOS