Presentation is loading. Please wait.

Presentation is loading. Please wait.

Paragon The Platform and Message Broker. Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage.

Similar presentations


Presentation on theme: "Paragon The Platform and Message Broker. Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage."— Presentation transcript:

1 Paragon The Platform and Message Broker

2 Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage -Notifications -Instrumentation -Device Services( GPS, Camera, USB, … ) -Security/Authentication -Device Info -Kernel Info -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage -Notifications -Instrumentation -Device Services( GPS, Camera, USB, … ) -Security/Authentication -Device Info -Kernel Info Apps (HTML, CSS, Javascript) Apps (HTML, CSS, Javascript) Kernel (Javascript) Kernel (Javascript) Paragon Container (WebKit Core: Standalone/Embedded) Paragon Container (WebKit Core: Standalone/Embedded) Paragon Kernel Plug-In’s (Native Code: C#, Objective C, Java) Paragon Kernel Plug-In’s (Native Code: C#, Objective C, Java) OS (Windows, Chrome, IOS, Android) OS (Windows, Chrome, IOS, Android) Device (Desktop and Mobile) Device (Desktop and Mobile)

3 Paragon: Application Development Workflow 1.Develop app using HTML, CSS, and Javascript 2.Package App. a.Select Container type (eg Windows Standalone, Embedded Control, IOS, etc) b.Sign App. 3.Publish App to App Store 4.Entitle Users 5.App Store deploys app to user’s device. a.Push model: auto push install apps on to user’s device. b.Pull model: user selects app to install on device.

4 Paragon: Application Package Types Two types: Hosted App and Packaged App 1.Native App Container Installed on user’s device. 2.Associated Icon displayed on launcher/home screen/landing page. 3.The app manifest and additional app specific plug-in’s are deployed on the user’s device in a signed package. 4.App launched in Native App Container window with full access to the kernel, and additional functionality exposed by app specific plug-in’s. Hosted App 1.The app contents (HTML, CSS, Javascript) are served up to user’s device from a web server indicated in either the manifest or the background.js javascript file. 2.Connection bound. Packaged App 1.The app contents (HTML, CSS, Javascript) are in the signed package. 2.Offline resilient.

5 Paragon: Desktop App Package and Deployment Your App Native Plug-in’s JavaScript HTML, CSS Windows Packaged App Android Packaged App Apple IOS Packaged App App Store Package and Sign Publish HTML, CSS, JavaScript, and Native Plug-In’s Deploy User’s Device Hosted Web App

6 Paragon: Message Broker The Paragon Message Broker is… a Java process designed to be deployed on the desktop. based on Vert.x (http://vertx.io/).http://vertx.io/ a http, and websocket server that only listens on localhost, default port 65534. a service that exposes pub/sub and rpc messaging in a json formatted protocol over websockets. designed for the purpose of providing a language agnostic solution for decoupled communication between desktop apps written in any language. started / resurrected by existence of at least one running Paragon app.

7 Paragon Message Broker Paragon Message Broker(localhost:65534) WebSocket Server Verticle WebSocket Server Verticle VertX Event Bus ? Verticle ? Verticle HTTP Server Verticle HTTP Server Verticle Native App Any garden variety websock and json lib Native App Paragon Embedded Any garden variety websock and json lib Your Web App (HTML, CSS, JavaScript Your Web App (HTML, CSS, JavaScript MessageBroker Plugin Paragon Your Web App (HTML, CSS, JavaScript Your Web App (HTML, CSS, JavaScript MessageBroker Plugin var mb = Paragon.MessageBus("ws://localhost:8000/paragon/messagebus"); mb.send(“topicA”, “Hello World”); … mb.subscribe(“topicB”, function(envelope){ var strMsg = JSON.stringify(envelope); var replyAddress = envelope.replyaddress; alert("Incoming message: " + strMsg); if (replyAddress){ var reply = "Got your message(" + envelope.message.content + "). Thx!"; mb.send(replyAddress, reply); } }, function(responseMessage){ alert("Response message: " + JSON.stringify(responseMessage)); }); … Web Browser Your Web App (html, CSS,Javascript) Your Web App (html, CSS,Javascript) meow.js Websocket

8 Paragon: Symphony Interop via Paragon Message Broker Native App (eg Aladdin Java App) Native App (eg Aladdin Java App) Any garden variety websock and json lib Web Browser Your Web App (html, CSS,Javascript) Your Web App (html, CSS,Javascript) meow.js Websocket Paragon Message Broker(localhost:65534) Paragon Symphony MessageBroker Plugin SymphonyInterop.js

9 Paragon: Symphony Interop via Paragon Message Broker Paragon Message in.chat.symphony.com out.chat.appid.symphony.com in.chatroom.symphony.com out.chatroom.appid.symphony.com in.presence.symphony.com out.presence.appid.symphony.com in.intents.symphony.com out.intents.appid.symphony.com in.system.symphony.com out.system.appid.symphony.com Symphony Native App Browser Native App Pub/Sub + RPC Pub/Sub + RPC Pub/Sub + RPC


Download ppt "Paragon The Platform and Message Broker. Paragon: The Platform Stack -Window Management -Messaging -App Lifecycle Management -App Store -Workspaces -Storage."

Similar presentations


Ads by Google