Gmail の Actions in the Inbox機能を試しています。
日本語の記事がほぼ無いと言ってよいので、少しずつ Action を触ってはメモ書き程度に残していこうと思います。
はじめに(Actions in the Inboxとは)
Actions in the Inbox とは、Gmail の件名の右はじに表示されたボタンのことです。
Amazon からのメールにも、注文した内容を表示するためのボタン等がありますね。
また、最近ではGitHubからのメールにもワンクリックでIssueやPull Requestを開くためのボタンがつきました。
Actions in the Inboxとして利用できる Action はいくつかあるんですが、今回はその中から Go-To Action について。
まだわかっていないこともありますし文章にするには理解が不十分ですが、とりあえず動くものができたということで。
GitHub
今回作ったサンプルのソースコード
サンプル
サンプルはここで確認することができます。
http://gmail-actions-in-the-inbox.appspot.com/go_to_action/
Gmailアカウントでログインして、各行の右側の「Send Email」ボタンをクリックするとメールが送信されます。
調べたことまとめ
今回調査した Go-To Action というのは、記事の冒頭で紹介したAmazonやGitHubのように、
クリックすると特定のURLにジャンプするようなアクションです。
Go-To Actionの種類
ドキュメントではGo-To Actionとして
- ViewAction
- TrackAction
の2つをサポートしていると書かれています。
ViewActionのスキーマ
送信するメール(htmlメール)の文面に以下を記述します。
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "EmailMessage", "action": { "@type": "ViewAction", "url": "https://watch-movies.com/watch?movieId=abc123", "name": "Watch movie" }, "description": "Watch the 'Avengers' movie online" } </script>
記述する場所は<head>~</head>
の間と書いてますが、<body>~</body>
の間でも大丈夫のようです。
それぞれのパラメータについて補足。
パラメータ | 意味 |
---|---|
action.@type | "ViewAction"を指定 |
action.url | ボタンをクリックした時に開きたいリンク |
action.name | ボタンに表示したい文字列 |
description | 特に表示される箇所はなさそう |
※(メールの件名) | ここでは定義されない |
よくわかってないこと
TrackActionのスキーマがよくわかってません。ドキュメントの通り
<script type="application/ld+json"> { "@context": "http://schema.org", "@type": "ParcelDelivery", "deliveryAddress": { "@type": "PostalAddress", "streetAddress": "24 Willie Mays Plaza", "addressLocality": "San Francisco", "addressRegion": "CA", "addressCountry": "US", "postalCode": "94107" }, "expectedArrivalUntil": "2013-03-12T12:00:00-08:00", "carrier": { "@type": "Organization", "name": "FedEx" }, "itemShipped": { "@type": "Product", "name": "iPod Mini" }, "partOfOrder": { "@type": "Order", "orderNumber": "176057", "merchant": { "@type": "Organization", "name": "Bob Dole" } }, "trackingUrl": "http://fedex.com/track/1234567890" } </script>
をメール文面に貼付ければ動くんですが、action
プロパティも定義されてないし...
そもそも色々定義しているその他のプロパティは何に使われるんだろう。
というわけで、色々すっきりしない部分はありますがGo-To Actionについてはこのへんで。