AllJoyn BASE SERVICES

25 篇文章 3 订阅
21 篇文章 3 订阅

 

https://allseenalliance.org/developers/learn/base-services

 

BASE SERVICES

基本服务是很多设备经常使用的服务,它提供一套不同设备间互动和互操作的接口。下面是目前支持的基本服务。随着新的贡献加入AllSeen联盟项目,这份名单会不断继续扩展。

·        Onboarding.为新设备加入Wi-Fi网络提供一个一致的方式。

·        Configuration.允许配置应用程序/设备的某些属性,例如更友好的名称。

·        Notification.允许AllJoyn®网络上的设备发送和接收基于文本的通知。还支持通过URL表示的音频和图像。

·        Control Panel.允许设备广告一个虚拟控制面板,可以利用它远程控制设备。

·        Audio Streaming.允许一个或多个接收端同步的音频播放。

 

 

https://allseenalliance.org/developers/learn/base-services/onboarding

 

ONBOARDING SERVICE

入职服务提供一个将新设备加入到Wi-Fi网络的公共和简单的方法。这对于象SmartPlug这样具有有限的用户接口的设备特别有用。

How Does it Work?

目前入职机制仅限Wi-Fi,不过随着某类设备的流行,系统可以利用额外的硬件(如BTLE:低功耗蓝牙)演进到支持新的技术。

支持两个角色:

·        Onboardee:该设备是未配置的,需要加入到Wi-Fi网络。

·        Onboarder:该装置是来配置Onboardee的设备,典型的例子是移动设备上的应用程序或PC。

The following are the steps toonboard a device. 下面是入职的步骤。

1. Onboardee broadcasts its SSID Onboardee广播其SSID

当Onboardee设备第一次上电时,它将通过Wi-Fi通告其SSID。 为了表明该设备支持AllJoyn®入职服务,规定Onboardee 设备的SSID的前缀为“AJ_”或后缀为“_AJ”

2. Onboarder connects to Onboardee Onboarder连接到Onboardee

Onboarder通过寻找“AJ_”或“_AJ”SSID名称来扫描未配置的AllJoyn设备。然后,用户选择将某个Onboardee设备加入Wi-Fi网络。第一步是连接到Onboardee设备的SSID。取决于Onboarder平台,这可以由应用程序自动完成。

3. Onboarder发送WiFi凭据

连接到Onboardee的SSID后,Onboarder将监听AllJoyn About公告(AllJoyn About announcements)。然后,Onboarder将使用入职服务接口来发送目标Wi-Fi网络的凭据(例如SSID,KEY等)给Onboardee设备。

4.切换到目标Wifi网络

然后这两个设备将转换到目标Wifi网络。

5. Onboarder监听Onboardee设备

作为最后一步,Onboader会监听接收来自Onboardee设备的About公告。当收到后,Onboarder认为Onboardee设备完全加入到目标Wi-Fi网络,整个入职服务过程完成。

Learn More

·        Learn more about the Onboarding Interface Definition

·        Download the SDKbuild and run the sample apps

·        Learn more about the Onboarding APIs

 

 

https://allseenalliance.org/developers/learn/base-services/configuration

CONFIGURATION SERVICE

配置服务提供配置设备的能力,例如它的设备名称或密码

Concepts andTerminology

存在两个角色:

·        配置服务器(Config Server):它运行在要配置的设备上,也就是说该设备提供配置服务。

·        配置客户端(Config Client):它运行在用于配置远程设备的设备或应用程序上。

以下配置项目可供配置:

·        恢复出厂设置。将设备恢复到出厂设置。所有的配置数据被恢复;如果设备支持入职服务,则该设备将进入原始出厂状态。

·        设置密码。设置设备的密码,访问安全接口时使用它。

·        默认语言。设置装置使用的默认语言。

·        设备名称。设置该设备的名称。

配置服务暴露了一个简单的安全接口来提供这项服务。更多细节请参见配置接口定义(Configuration Interface Definition)。

Learn More

·        Learn more about the Configuration Interface Definition

·        Download the SDK and build

·        Learn more about the Configuration APIs

 

 

https://allseenalliance.org/developers/learn/base-services/notification

NOTIFICATION

AllJoyn®通知服务框架为设备或者APP提供一个通用的机制,利用该机制设备/应用发送要显示或以其他方式呈现(如文本转换成语音)的可读文本。通知在AllJoyn网络中广播,网络中所有设备/应用程序都可以接收它,通知持续由生产者定义的指定TTL。除了文字,其他元数据如音频,图像,控制面板对象,或其他自定义属性也可以被发送;由接收者来决定如何以最佳方式处理和呈现自定义属性。此外,所有的消费者可以全局地拒绝受理通知。

Concepts andTerminology

Producer and Consumer

存在两个角色:

·        生产者:发送通知者。

·        消费者:接收该通知者。

Message Types

通知可以是三种类型之一:信息,警告和紧急。信息在大部分时间被使用。警告可以用来吸引更多的关注通知。当要求极端重视时,可谨慎地使用紧急类型的消息。

Time-to-live (TTL)

每个消息发送都使用一个特定的时间生存期(TTL)发送的,以毫秒为单位。该消息将持续存在于网络上,直到其TTL过期。如果消费者在TTL内加入网络,它将收到消息。

此外,新消息将覆盖老的相同类型的消息。所以对于给定生产者,在任何时间,3个消息类型中每类最多不超过1个消息可用。例如,如果TTL是100秒,生产者发送一个消息后20秒,又发送了一个新的消息,则新的信息将覆盖以前的消息。从这个角度来说,消费者将只接收新消息,而不是旧的消息,即使旧消息的TTL还不到期。

Multiple Language Support

像所有的AllJoyn服务,通知支持多国语言。生产者将以所有支持的语言来发送通知,消费者可以选择使用它喜欢的语言。

Dismiss

拒绝处理通知可能发生的3种方式:

1.     消费者可以在用户界面移除通知,这样用户就再也看不到通知。这不会对网络上的其他消费者查看通知造成影响。

2.     消费者或者生产者可以在网络上发出一个信号给所有消费者来拒绝受理通知。消费者接收到该信号后,它会从视图中删除通知。

3.     消费者可以告诉生产者停止广播随后的通知,新的消费者将不再收到通知。

Audio and Image

通知允许属性被指定。这让通知不仅仅是文字一种类型。最常见的属性是音频和图像。该属性可以被指定为URL或作为AllJoyn对象路径。如果提供URL,用户可以选择通过指定URL获得音频和/或图像,并在本地呈现。

Control Panel Object Path

一种特殊的属性是控制面板对象路径。生产者填写该属性来给消费者提供额外的方向。当消费者收到该通知,如果它支持控制面板服务,鼓励它在对象路径上获得控制面板并将其呈现给用户。通常这样做是为了允许消费者执行与通知相关联的动作。

例子:如果烤箱已经开着留下给某个人,除了发送通知外,它可以包括一个控制面板,以提供给用户关闭烘箱的选项。

Custom Attributes

通知可以包含任意数量的自定义键/值对属性。消费者可以使用此信息来显示更丰富的通知。自定义属性是特定应用的,因此消费者需要有关于生产者的专门信息,以便正确使用自定义属性。

举个例子,假设收音机每播放一首新歌曲时就发出的一个通知。该通知包含了艺术家和标题的通知文本和专辑封面URL的自定义属性。正常的消费者将收到通知,并只显示通知文本,也就是,艺术家和标题。但某个消费者就是知道该生产者,它也可以拿到专辑封面URL,并显示它,以提供更丰富的自定义通知。

How It Works

在底层,通知使用AllJoyn无会话信号发送。无会话信号提供发送和接收通知的所需一切:

·        生产者使用某种机制广播信息给AllJoyn网络上的AllJoyn应用程序/设备。

·        一个TTL的概念。

·        种机制,让新加入网络的消费者被告知一个TTL还未过期的以前广播的通知。

无会话信号包含完整的通知,包括所有支持的语言,元数据。信号具体内容的更多细节请参阅通知接口定义(Notification Interface Definition)。

拒绝处理通知由无会话信号处理。

总之,它是如下工作的:

·        生产者发送包含该通知的无会话信号。

·        消费者得到这个信号,并显示该通知。

·        稍后加入网络的消费者也将接收该信号并显示信息。

·        当TTL过期时,Procuder将停止播放该无会话信号。消费者将停止显示该通知

·        任何时候生产者或消费者可以发送无会话信号去拒绝处理通知。接收到的消费者将停止显示通知。

·        消费者可以连接到生产者,要求它停止广播通知。

Learn More

·        Learn more about the Notification Interface Definition

·        Download the SDKbuild and run the sample apps

·        Learn more about the APIs

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值