31
Web Intents Addendum – Local Services Web Intentsによる機器連携 Naoyuki Sato

Web intents addendum

  • Upload
    html5j

  • View
    1.378

  • Download
    4

Embed Size (px)

DESCRIPTION

第33回 HTML5とか勉強会 講演資料

Citation preview

Page 1: Web intents addendum

Web Intents Addendum – Local Services

Web Intentsによる機器連携

Naoyuki Sato

Page 2: Web intents addendum

自己紹介 • 名前 : 佐藤 直之 • 会社 : ソニー株式会社 • 部署 : 情報技術開発部門

• Webブラウザ技術、Web技術の研究・開発

• 以前は、

• DLNA ソフト開発 • IEEE1394(FireWire) AVプロトコル 標準化 • ハンディーカム メカコン ソフト開発

November 20, 2012 2 Copyright 2012, Sony Corporation

Page 3: Web intents addendum

次世代Web Platform

Copyright 2012, Sony Corporation November 20, 2012 3

Home energy

Movie Music Photo Power Training Home theater

Web Service

Home Network Service

Web Browser

Page 5: Web intents addendum

Android Intentsのおさらい • 見ているWeb Pageを誰かに教えたければ。(共有)

Copyright 2012, Sony Corporation November 20, 2012 5

Android Intents – システムが仲介

Native app Native app Picker

Playストアからインストールされたアプリが表示

共有

Page 6: Web intents addendum

Web Intents

Copyright 2012, Sony Corporation November 20, 2012 6

Web Intents – Webブラウザが仲介

Webストアからインストールされたアプリが表示

ここに、Home Network Serviceを加えて、呼び出したい。

Web Service Web Service Picker

共有

My Printer

Home Network Service

Page 7: Web intents addendum

デモ

• Web Intentsに、Home Network Serviceが加わるとどうなるか?

• 写真共有サイトに写真を

• Web Intentsで、他のサイトから

• Web Intents + Local Serviceで、デジタルカメラから

Uploadする。

Copyright 2012, Sony Corporation November 20, 2012 7

Page 8: Web intents addendum

Copyright 2012, Sony Corporation November 20, 2012 8

Webブラウザ

My Memories Online

Travel Photo Service

Webブラウザが仲介

写真要求

写真返信

写真要求

写真返信

写真返信

写真要求

Web Service Web Service

Home network Service

デジタルカメラ

Pick w/

var intent = new Intent(); intent.action = "http://webintents.org/pick"; intent.type = "image/*"; window.navigator.startActivity( intent, function(intentData) { ……

呼び出しは、同じ.

Page 9: Web intents addendum

デモ

Copyright 2012, Sony Corporation November 20, 2012 9

Page 10: Web intents addendum

デモ構成

Copyright 2012, Sony Corporation November 20, 2012 10

デジタルカメラ ノートパソコン パソコン

Service(HTML)提供 Service(HTML)提供

Service 発見

Webブラウザ Web Service Home network Service

HTTP Server HTTP Server

HTML JavaScript

CSS

HTML JavaScript

CSS SSDP

HTTP Client Service Discovery

SSDP mDNS

Service Discovery

*web intentsはshimで実現

Page 11: Web intents addendum

機器連携に対応したWeb Intents

ユーザーがHome Network Device(家庭内の機器)も呼び出せるようにする

Copyright 2012, Sony Corporation November 20, 2012 11

写真追加

Webブラウザ

Pick W/

Webサービス選択ダイアログ

マイ デジカメ デジタルカメラ

Home Network (家)

Web

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

何か仕組みが必要! Local Service Discovery SSDP / mDNSを利用

WebストアからInstallされた アプリが表示

Page 12: Web intents addendum

Local Service Discovery

• 「Web Intents Addendum - Local Services」では、以下、2つのLocal Service Discoveryを利用。

• SSDP

• mDNS + DNS-SD

Copyright 2012, Sony Corporation November 20, 2012 12

Page 13: Web intents addendum

通知・検索 - SSDP

• SSDP - Simple Service Discovery Protocol • Home Network(家)のServiceの通知・検索が可能

• DLNA(UPnP)で使われているDiscoveryの仕組み

• マルチキャスト アドレスに、UDPの通知や検索の

パケットをブロードキャストして、機器やサービスを発見するプロトコル

• 詳しくは • UPnP Device Architecture 1.0

Copyright 2012, Sony Corporation November 20, 2012 13

Page 14: Web intents addendum

SSDP 詳細 • HTTPU

• HTTP over UDP • HTTP Headerを利用

• HTTP Method • NOTIFY : 通知

• 入場・退場 • M-SEARCH : 検索

• NOTIFYは、機器・サービスから • M-SEARCHは、コントローラから送信

Copyright 2012, Sony Corporation November 20, 2012 14

NOTIFY * HTTP/1.1 NT: urn:schemas-webintents-org:service:WebIntent:1 …… LOCATION: http:/192.168.1.3:57735/ NTS : ssdp:alive …… Content-Length: 0

NOTIFY * HTTP/1.1 NT: urn:schemas-webintents-org:service:WebIntent:1

……

NTS: ssdp:byebye ……

Content-Length: 0

NOTIFY / ssdp:alive – 入場の通知

NOTIFY / ssdp:byebye – 退場の通知

M-SEARCH * HTTP/1.1 ST: urn:schemas-webintents-org:service:WebIntent:1 MAN: "ssdp:discover" HOST: 239.255.255.250:1900 MX: 10

M-SEARCH – 検索

Notification Type

Notification Sub Type

Search Target

Page 15: Web intents addendum

通知

November 20, 2012 15 Copyright 2012, Sony Corporation

Webブラウザ デジタルカメラ

PC

ホームネットワーク

通知 Web Intents 対応機器

Multicast address 239:255:255:250 Port number : 1900

Share w/

マイ デジカメ

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

追加 1

Page 16: Web intents addendum

SSDP パケット – 通知

Copyright 2012, Sony Corporation November 20, 2012 16

NOTIFY * HTTP/1.1 NT: urn:schemas-webintents-org:service:WebIntent:1 …… LOCATION: http:/192.168.1.3:57735/ NTS : ssdp:alive action.webintents.org: http://webintents.org/pick registration.webintents.org: /registration.html Content-Length: 0

Web Intents 対応機器対応を示す. Web Intents Action (Option)

<html> <head><title></title></head> <body> <intent action=http://webintents.org/pick type=image/* href= /control.html” disposition=“window” /> <body> </html>

SSDP 通知パケット 1

UDP Multicast

Web Intents registration 情報が書かれているページへのリンク (HTTPを使って、別に取得する)

registration.html

赤 : 新たに拡張

デジタルカメラ

Page 17: Web intents addendum

検索

November 20, 2012 17 Copyright 2012, Sony Corporation

Webブラウザ PC

ホームネットワーク

検索 Web Intents 対応機器

Multicast address 239:255:255:250 Port number : 1900

Share w/

マイ デジカメ

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

追加

Unicastで返信

1

2

デジタルカメラ

Page 18: Web intents addendum

SSDP パケット – 検索

Copyright 2012, Sony Corporation

November 20, 2012 18

HTTP/1.1 200 OK Cache-Control: max-age=1800 EXT: Location: http://192.168.11.3:5735/ ST: urn:schemas-webintents-org:service:WebIntents:1 USN: uuid:TestDevice::urn:schemas-webintents-org:service:WebIntents:1 action.webintents.org: http://webintents.org/pick registration.webintents.org:/registration.html

M-SEARCH * HTTP/1.1 ST: urn:schemas-webintents-org:service:WebIntent:1 MAN: "ssdp:discover" HOST: 239.255.255.250:1900 MX: 10

SSDP 検索パケット

SSDP 検索返信パケット

1

2

Webブラウザ

UDP Multicast

UDP Unicast

赤 : 新たに拡張

デジタルカメラ

Page 19: Web intents addendum

mDNS + DNS-SD • mDNS : Multicast DNS

• Multicast(UDP)を用いて、Home network(家)にDNS(Domain Name System)を提供.

• Multicast Address: 224.0.0.251 • Port Number: 5353

• DNS-SD : DNS Service Discovery • DNSのSRV, TXT, PTRレコードを用いて、Serviceを検索、通知する. • TXTレコードに、web intentsの情報を追加.

• Bonjour(AirPlay)で使われている.

Copyright 2012, Sony Corporation November 20, 2012 19

Page 20: Web intents addendum

mDNS + DNS-SD 検索 – Service

Copyright 2012, Sony Corporation November 20, 2012 20

Answers _webintents._tcp.local: type PTR, class IN, DSCWebService._webintents._tcp.local

Queries _webIntents._tcp.local: type PTR, class IN, "QM" question

mDNS + DNS-SD 検索

mDNS + DNS-SD 検索返信

1

2

Webブラウザ

UDP Multicast(224.0.0.251:5353)

UDP Unicast

赤 : 新たに定義

デジタルカメラ

domain service name

PTRレコードから、サービスを検索

Page 21: Web intents addendum

mDNS + DNS-SD 検索 – Instance

Copyright 2012, Sony Corporation November 20, 2012 21

Answers DSCWebService._webintents._tcp.local: type PTR, class IN, cache flush, priority 0, weight 0, port 3639, DSCamera.local Additional Records DSCamera.local: Type A, class IN, cache flush, addr 192.168.1.47

Queries DSCWebService._webIntents._tcp.local: type SRV, Class IN, “QM” question

mDNS + DNS-SD 検索

mDNS + DNS-SD 検索返信

1

2

Webブラウザ

UDP Multicast(224.0.0.251:5353)

UDP Unicast

赤 : 新たに定義

デジタルカメラ

domain name

SRVレコードからホスト名、AレコードからIPアドレスを検索

Page 22: Web intents addendum

mDNS + DNS-SD 検索 – 付加情報

Copyright 2012, Sony Corporation November 20, 2012 22

Answers Type: TXT (Text String) …… Text: location= http://192.168.1.47:4004/registration.html Text: action= http://webintents.org/pick

Queries DSCWebService._webIntents._tcp.local: type TXT, class IN, cache flush

mDNS + DNS-SD 検索

mDNS + DNS-SD 検索返信

1

2

Webブラウザ

UDP Multicast(224.0.0.251:5353)

UDP Unicast

赤 : 新たに定義

デジタルカメラ

TXTレコードから、Web Intentsの付加情報を検索

Web Intents Action (Option) Web Intents registration 情報が書かれているページへのリンク

(HTTPを使って、別に取得する)

Page 23: Web intents addendum

マルチキャスト範囲

• TTL(Time to Live)で、家庭内だけにマルチキャスト

• パケットの有効期間、ルータを超えると1つ減る.

• 0でパケットは破棄

Copyright 2012, Sony Corporation November 20, 2012 23

SSDPパケット

Vers

ion IHL Total length

Type-of-

Service

Identification Fragment offset Flag

Time-to-live Protocol Header checksum

Source address

Destination address

Options(+ padding)

Data(variable)

IP v4 header

Page 24: Web intents addendum

機器連携に対応したWeb Intents

Copyright 2012, Sony Corporation November 20, 2012 24

Webブラウザ

Web

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

写真追加

デジタルカメラ

Home Network (家)

選択

Page 25: Web intents addendum

機器連携に対応したWeb Intents

Copyright 2012, Sony Corporation November 20, 2012 25

Webブラウザ

Web

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

写真追加

デジタルカメラ

Home Network (家)

Webサービス選択ダイアログ (Picker)

Share w/

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

マイ デジカメ

WebストアからInstallされたアプリが表示

Local Discoveryで登録 SSDP or mDNS + DNS-SD

選択

Page 26: Web intents addendum

写真選択

写真撮影

マイ デジカメ

ズーム

機器連携に対応したWeb Intents

Copyright 2012, Sony Corporation November 20, 2012 26

Webブラウザ

Web

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

デジタルカメラ

Home Network (家)

デジタルカメラが提供したService

HTMLページを提供

制御

自分のServiceなので、制御プロトコルは自由 DLNA(SOAP)でも、RESTでも 今回はただのRESTで制御

選択

Page 27: Web intents addendum

機器連携に対応したWeb Intents

Copyright 2012, Sony Corporation November 20, 2012 27

Webブラウザ

Web

写真共有サービス

写真共有サービス

写真共有サービス

A

B

C

写真追加

デジタルカメラ

Home Network (家)

写真を提供

呼び出し元のサービスに戻る

Page 28: Web intents addendum

hiddenについて - 提案中

• 呼び出し側のUIで、細かい制御や制御したいとき

Copyright 2012, Sony Corporation November 20, 2012 28

呼び出し元のPage

制御

-UIのないHTML pageをデジタルカメラが提供 -呼び出し元の Pageは、High level APIで制御

High level API

Webブラウザ

デジタルカメラ

Home Network (家)

UIなしHTML を提供

制御プロトコルは自由

<html> <head><title></title></head> <body> <intent action=http://webintents.org/pick type=image/* href= /control.html” disposition=“background” /> <body> </html>

registration.html

APIは業界等で決める

Web messaging

Page 29: Web intents addendum

まとめ

• 呼び出し側は、Web serviceもLocal Serviceも、簡単に呼び出せる.

• WebブラウザとLocal Serviceが対応.

• Service側のUIなので、Service制御Protocolは自由.

• Service Discoveryは、SSDPとmDNS+DNS-SDを利用.

• Web Intents RegistrationとAction(Option)の情報を従来のDiscoveryに追加、提供.

Copyright 2012, Sony Corporation June 13, 2012 29

Page 30: Web intents addendum

Copyright 2012, Sony Corporation June 13, 2012 30

Webブラウザ

エアコン

Web

Webサービス

Webサービス

Webサービス

A

B

C

ホームネットワークからインターネットまで、つながる世界

テレビ

プリンタ

Home Network

デジタルカメラ

これにより

Page 31: Web intents addendum

おわり

Copyright 2012, Sony Corporation June 13, 2012 31