- AllJoyn APP code
-
AllJoyn Service Frameworks
-
Basic services
-
Onboarding: provide a consistent way to bring a new device onto the Wi-Fi network
-
Configuration: allows one to configure certain attributes of an application/device, such as its friendly name
-
Notification: allows text-based notifications to be sent and received by devices on the AJ network; also supports audios and images via URLs
-
Control panel: allows devices to advertise a virtual control paneel to be controlled remotely
-
More services
- Location services
- Media delivery
-
AllJoyn Core Library: lowest level set of APIs
- Advertisements and discovery
-
Session creation
- one session consists of 1) participating devices and 2) ports of these devices
-
BusObject implements some overlay network (private channel)
- Object creation and handling
-
Interface definition of methods, properties, and signals
-
signals: sessionless and occurrs asynchronously
-
events and actions: similar to reactor
<interface name="com.example.LightBulb">
<method name="ToggleSwitch">
<description>Toggle light switch</description>
</method>
<signal name="LightOn" sessionless="true">
<description>The light has been turned on</description>
</signal>
</interface>
-
AllJoyn Router: routes AllJoyn messages between AJ routers and Applications (incl. between different transports)
-
AllSeen Core Framework: proactive, service-oriented model
-
Data-Driven API (DDAPI) : alternative API for AJ Core Framework; reactive model
- built on top of AJ Core API and is specifically tailored to use casess for the IOT. Instead of AJ Core Framework's service-oriented paradigm, it uses publish/subscribe paradigm.