EWD.js Architecture. Rob Tweed M/Gateway Developments Ltd. Saturday, 23 November 13

Size: px
Start display at page:

Download "EWD.js Architecture. Rob Tweed M/Gateway Developments Ltd. Saturday, 23 November 13"

Transcription

1 EWD.js Architecture Rob Tweed M/Gateway Developments Ltd

2 EWD.js Architecture 2

3 EWD.js Architecture Child Process removed from available pool as soon as a request is sent to it 3

4 EWD.js Architecture Child Process returned to available pool as soon as processing is completed 4

5 EWD.js Architecture Each Child process handles only one request at a time 5

6 EWD.js Development 100% JavaScript 6

7 EWD.js Messaging Event Occurs 7

8 EWD.js Messaging JSON Message Created 8

9 EWD.js Messaging Message Sent 9

10 EWD.js Messaging Message Received at back-end 10

11 EWD.js Messaging Message Handler fired 11

12 EWD.js Messaging _setdocument() 12

13 EWD.js Messaging _getdocument() 13

14 EWD.js Messaging Message sent by back-end 14

15 EWD.js Messaging Message Received by browser 15

16 EWD.js Messaging Event Handler Fires JSON Message 16

17 EWD.js Messaging Modify UI 17

18 Send message from browser EWD.sockets.sendMessage({ type: "sendhelloworld", params: { text: 'Hello World!', sender: 'Rob', date: new Date().toUTCString() } }); 18

19 Send message from browser EWD.sockets.sendMessage({ type: "sendhelloworld", params: { text: 'Hello World!', sender: 'Rob', date: new Date().toUTCString() } }); User-defined type 19

20 Send message from browser EWD.sockets.sendMessage({ type: "sendhelloworld", params: { text: 'Hello World!', sender: 'Rob', date: new Date().toUTCString() } }); JSON payload 20

21 Back-end Module module.exports = { onsocketmessage: function(ewd) { var wsmsg = ewd.websocketmessage; var type = wsmsg.type; var params = wsmsg.params; var sessid = ewd.session.$('ewd_sessid')._value; } }; 21

22 Back-end Module module.exports = { onsocketmessage: function(ewd) { var wsmsg = ewd.websocketmessage; var type = wsmsg.type; var params = wsmsg.params; var sessid = ewd.session.$('ewd_sessid')._value; } }; Message Handler: fires whenever a message is received 22

23 Back-end Module module.exports = { onsocketmessage: function(ewd) { var wsmsg = ewd.websocketmessage; var type = wsmsg.type; var payload = wsmsg.params; var sessid = ewd.session.$('ewd_sessid')._value; if (type === 'sendhelloworld') { // do whatever is required with payload return {received: true}; } } }; Handle the message we sent from browser 23

24 Back-end Module module.exports = { onsocketmessage: function(ewd) { var wsmsg = ewd.websocketmessage; var type = wsmsg.type; if (type === 'sendhelloworld') { var savedmsg = new ewd.mumps.globalnode('mymessage', []); savedmsg._setdocument(wsmsg); return {savedinto: ^mymessage'}; } } }; Saves the entire message into ^mymessage 24

25 Back-end Module module.exports = { onsocketmessage: function(ewd) { var wsmsg = ewd.websocketmessage; var type = wsmsg.type; if (type === 'sendhelloworld') { var savedmsg = new ewd.mumps.globalnode('mymessage', []); savedmsg._setdocument(wsmsg); return {savedinto: ^mymessage'}; } } }; Returns a sendhelloworld message back to browser 25

26 Browser-side Handler EWD.onSocketMessage = function(messageobj) { if (messageobj.type === 'sendhelloworld') { var text = 'Your message was successfully saved into ' + messageobj.message.savedinto; document.getelementbyid('response').innerhtml = text; settimeout(function() { document.getelementbyid('response').innerhtml = ''; },2000); } }; Built-in Event Handler function 26

27 Browser-side Handler EWD.onSocketMessage = function(messageobj) { if (messageobj.type === 'sendhelloworld') { var text = 'Your message was successfully saved into ' + messageobj.message.savedinto; document.getelementbyid('response').innerhtml = text; settimeout(function() { document.getelementbyid('response').innerhtml = ''; },2000); } }; Just like at the back-end! 27

28 Browser-side Handler EWD.onSocketMessage = function(messageobj) { if (messageobj.type === 'sendhelloworld') { var text = 'Your message was successfully saved into ' + messageobj.message.savedinto; document.getelementbyid('response').innerhtml = text; settimeout(function() { document.getelementbyid('response').innerhtml = ''; },2000); } }; Modify the UI 28

29 No Polling! With WebSockets, the back-end can send a message at any time to: a specific browser all browsers running a specific EWD.js application all currently-connected browsers 29

30 Back-end sending a message var savedmsg = new ewd.mumps.globalnode('mymessage', []); ewd.sendwebsocketmsg({ type: 'savedmessage', message: savedmsg._getdocument() }); 30

31 Built-in secured Web Services Any back-end JavaScript method can be exposed as a JSON Web Service Access is automatically secured HMAC-SHA256 digital signatures required for every HTTP request The same security used by Amazon Web Services Lightweight peer-to-peer access between EWD.js systems 31

32 Example Web Service webserviceexample: function(ewd) { var patient = new ewd.mumps.globalnode('clppats', [ewd.query.id]); if (!patient._exists) return {error: 'Patient ' + ewd.query.id + ' does not exist'}; return patient._getdocument(); } id=1233& accessid=rob12kjh1i23& timestamp=wed, 19 Jun :14:35 GMT& signature=p0biaknehj2tkuadxbkrsigjcgihy1evntjdsce5xvq= Node.js EWD.js Web Service client: npm install ewdliteclient 32

33 Example Web Service webserviceexample: function(ewd) { var patient = new ewd.mumps.globalnode('clppats', [ewd.query.id]); if (!patient._exists) return {error: 'Patient ' + ewd.query.id + ' does not exist'}; return patient._getdocument(); } id=1233& accessid=rob12kjh1i23& timestamp=wed, 19 Jun :14:35 GMT& signature=p0biaknehj2tkuadxbkrsigjcgihy1evntjdsce5xvq= Node.js EWD.js Web Service client: npm install ewdliteclient The perfect architecture to support VSA 33

34 Secured Linked Systems 34

35 Node.js Custom Events addmedication({params}) 35

36 Node.js Custom Events addmedication({params}) addmedication = function(params) {... code for adding medication ewd.emit( audit, {auditparams}; ewd.emit( stockcontrol, {stockparams}); }; 36

37 Node.js Custom Events addmedication({params}) addmedication = function(params) {... code for adding medication ewd.on( audit, function(params) {... code for adding audit record possibly via WebService to remote system }; ewd.emit( audit, {auditparams}; ewd.emit( stockcontrol, {stockparams}); }; 37

38 Node.js Custom Events addmedication({params}) ewd.on( audit, function(params) {... code for adding audit record }; addmedication = function(params) {... code for adding medication ewd.emit( audit, {auditparams}; ewd.emit( stockcontrol, {stockparams}); }; ewd.on( stockcontrol, function(params {... code for changing stock record }; 38

39 EWD.js requirements Ideally browsers that support HTML5 WebSockets however, EWD.js uses Node.js socket.io library emulates websockets using other techniques if not available even works with old versions of Internet Explorer! 39

40 Licensing & Availability Apache 2 Installing on Node.js: npm install ewdgateway2 40

41 Getting Started dewdrop VM ( Mike Clayton s Ubuntu Installer Raspberry Pi! Training Courses: Watch for announcments at: 41

42 EWD.js Rob Tweed M/Gateway Developments Ltd

EWD Lite. Rob Tweed M/Gateway Developments Ltd. Tuesday, 16 July 13

EWD Lite. Rob Tweed M/Gateway Developments Ltd.   Tuesday, 16 July 13 EWD Lite Rob Tweed M/Gateway Developments Ltd Twitter: @rtweed Email: rtweed@mgateway.com 1 EWD Lite Background, History and Aims Underlying Technology & Architecture Comparison with classic EWD Benefits

More information

VistA: a first-class citizen in the JSON-centric future of Health IT

VistA: a first-class citizen in the JSON-centric future of Health IT VistA: a first-class citizen in the JSON-centric future of Health IT Rob Tweed M/Gateway Developments Ltd @rtweed What is JSON? JavaScript Object Notation A simple and compact syntax for describing Objects

More information

EWD.js on FHIR. Rob Tweed M/Gateway Developments Ltd. Wednesday, 12 March 14

EWD.js on FHIR. Rob Tweed M/Gateway Developments Ltd.     Wednesday, 12 March 14 on FHIR Rob Tweed M/Gateway Developments Ltd Twitter: @rtweed Email: rtweed@mgateway.com http://www.mgateway.com Architecture Caché Or GT.M Architecture Mumps: - Language - Database Caché Or GT.M Architecture

More information

ewd-feder8 Installation & Reference Guide

ewd-feder8 Installation & Reference Guide ewd-feder8 Installation & Reference Guide Version 1 25 July 2016 2016 M/Gateway Developments Ltd ewd-feder8 Page 1 What is ewd-feder8? ewd-feder8 is a Node.js module that allows you to create a customisable

More information

M/Gateway Developments Ltd. ewd-federator. Reference Guide. M/Gateway Developments Ltd.

M/Gateway Developments Ltd. ewd-federator. Reference Guide. M/Gateway Developments Ltd. M/Gateway Developments Ltd ewd-federator Reference Guide M/Gateway Developments Ltd http://www.mgateway.com Copyright 2015, M/Gateway Developments Ltd. All Rights Reserved Table of Contents Introduction

More information

NODE-RED An event based toolkit for devices and robots

NODE-RED An event based toolkit for devices and robots bill.reichardt@thingworx.com NODE-RED An event based toolkit for devices and robots WHAT IS NODE RED? An open source web application framework for node.js (Javascript) A web based IDE for connecting devices

More information

Adventures with BaseX and web applications. Andy Feb 2013

Adventures with BaseX and web applications. Andy Feb 2013 Adventures with BaseX and web applications Andy Bunce @apb1704 Feb 2013 BaseX and the Web GraphXQ RESTXQ + Graphviz ( Using a PaaS ) CellarXQ Angular.js + OAuth BaseX with Node.js + events RESTXQ http://docs.basex.org/wiki/restxq

More information

NODE.JS MOCK TEST NODE.JS MOCK TEST I

NODE.JS MOCK TEST NODE.JS MOCK TEST I http://www.tutorialspoint.com NODE.JS MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Node.js Framework. You can download these sample mock tests at

More information

EWD.JS INTRO WHAT IS EWD.JS AND HOW DO I USE IT? Christopher Edwards -

EWD.JS INTRO WHAT IS EWD.JS AND HOW DO I USE IT? Christopher Edwards - EWD.JS INTRO WHAT IS EWD.JS AND HOW DO I USE IT? Christopher Edwards - ChristopherEdwards@krminc.com Technical Manager @ KRM Associates, Inc. - www.krminc.com Manager, Product Certification and Release

More information

CSC443: Web Programming 2

CSC443: Web Programming 2 CSC443: Web Programming Lecture 20: Web Sockets Haidar M. Harmanani HTML5 WebSocket Standardized by IETF in 2011. Supported by most major browsers including Google Chrome, Internet Explorer, Firefox, Safari

More information

IERG 4080 Building Scalable Internet-based Services

IERG 4080 Building Scalable Internet-based Services Department of Information Engineering, CUHK MScIE 2 nd Semester, 2015/16 IERG 4080 Building Scalable Internet-based Services Lecture 9 Web Sockets for Real-time Communications Lecturer: Albert C. M. Au

More information

Networking & The Web. HCID 520 User Interface Software & Technology

Networking & The Web. HCID 520 User Interface Software & Technology Networking & The Web HCID 520 User Interface Software & Technology Uniform Resource Locator (URL) http://info.cern.ch:80/ 1991 HTTP v0.9 Uniform Resource Locator (URL) http://info.cern.ch:80/ Scheme/Protocol

More information

Developing node-mdb. SimpleDB emulation using Node.js and GT.M

Developing node-mdb. SimpleDB emulation using Node.js and GT.M Developing node-mdb SimpleDB emulation using Node.js and GT.M Rob Tweed M/Gateway Developments Ltd http://www.mgateway.com Twitter: @rtweed Could you translate that title? SimpleDB: Amazon s NoSQL cloud

More information

Kurento Real Time Media Stream Processing. Juan Ángel Fuentes Software Developer. Stream Oriented GE

Kurento Real Time Media Stream Processing. Juan Ángel Fuentes Software Developer. Stream Oriented GE Kurento Real Time Media Stream Processing Juan Ángel Fuentes Software Developer. Stream Oriented GE jafuentes@naevatec.com Introducing multimedia infrastructures Peer-to-Peer Application (without media

More information

Enabling Full-Duplex Communications in APEX

Enabling Full-Duplex Communications in APEX Enabling Full-Duplex Communications in APEX Me Curt Workman - workmancw@ldschurch.org Education University of Utah Work Micron Electronics Evans&Sutherland The Church of Jesus Christ of Latter-Day Saints

More information

Module 6 Node.js and Socket.IO

Module 6 Node.js and Socket.IO Module 6 Node.js and Socket.IO Module 6 Contains 2 components Individual Assignment and Group Assignment Both are due on Wednesday November 15 th Read the WIKI before starting Portions of today s slides

More information

A practical introduction

A practical introduction A practical introduction Felix Geisendörfer Øredev 09.11.2011 (v1) @felixge Twitter / GitHub / IRC Felix Geisendörfer (Berlin, Germany) Audience? JavaScript? Node.js? History Feb 16, 2009 Ryan Dahl starts

More information

AWS Lambda + nodejs Hands-On Training

AWS Lambda + nodejs Hands-On Training AWS Lambda + nodejs Hands-On Training (4 Days) Course Description & High Level Contents AWS Lambda is changing the way that we build systems in the cloud. This new compute service in the cloud runs your

More information

Enterprise Web Development

Enterprise Web Development Enterprise Web Development Yakov Fain, Victor Rasputnis, Anatole Tartakovsky, and Viktor Gamov Beijing Cambridge Farnham Koln Sebastopol Tokyo O'REILLY Table of Contents Preface Introduction xi xxiii Part

More information

W3bworld Bringing L3DGE to HTML5

W3bworld Bringing L3DGE to HTML5 W3bworld Bringing L3DGE to HTML5 Chris Holman 6963420@student.swin.edu.au CAIA Seminar Aug 8 th 2012 L3DGEWorld - Visualises the state of an environment through visual characteristics - Each entity is

More information

IEMS 5722 Mobile Network Programming and Distributed Server Architecture

IEMS 5722 Mobile Network Programming and Distributed Server Architecture Department of Information Engineering, CUHK MScIE 2 nd Semester, 2016/17 IEMS 5722 Mobile Network Programming and Distributed Server Architecture Lecture 10 Web Sockets for Real-time Communications Lecturer:

More information

Index. Elad Elrom 2016 E. Elrom, Pro MEAN Stack Development, DOI /

Index. Elad Elrom 2016 E. Elrom, Pro MEAN Stack Development, DOI / Index A Accessible Rich Internet Applications (ARIA), 101 Amazon AWS, 44 Amazon EC2, 28 Amazon s Relational Database Service (RDS), 28 Amazon Web Services (AWS) cloud, 28 Android SDK Manager, 272 Android

More information

Using Node-RED to build the internet of things

Using Node-RED to build the internet of things IBM Bluemix Using Node-RED to build the internet of things Ever had one of those days Where the Application works! And then Can we also get some data from the this whatchamacallit? And send the logs off

More information

Smashing Node.JS: JavaScript Everywhere

Smashing Node.JS: JavaScript Everywhere Smashing Node.JS: JavaScript Everywhere Rauch, Guillermo ISBN-13: 9781119962595 Table of Contents PART I: GETTING STARTED: SETUP AND CONCEPTS 5 Chapter 1: The Setup 7 Installing on Windows 8 Installing

More information

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise)

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) 1. Objectives Get familiar with the AJAX and JSON technologies Use a combination

More information

Connecting Max to the Internet

Connecting Max to the Internet Connecting Max to the Internet A guide to Web API s February 10, 2013 The Internet is a source of data which reflects the state of our world. Internet data can be mined, filtered, analyzed, and aggregated.

More information

Rise Technology White Paper

Rise Technology White Paper Rise Technology White Paper Posted in White paper by Justin 1. Introduction 1. What is Rise We are Rise, a Lisk-based currency and distributed application platform heavily emphasizing security and ease

More information

REST Easy with Infrared360

REST Easy with Infrared360 REST Easy with Infrared360 A discussion on HTTP-based RESTful Web Services and how to use them in Infrared360 What is REST? REST stands for Representational State Transfer, which is an architectural style

More information

Web Application Development

Web Application Development Web Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie SERVER SIDE JAVASCRIPT PART 1 Outline 1.

More information

Uber Push and Subscribe Database

Uber Push and Subscribe Database Uber Push and Subscribe Database June 21, 2016 Clifford Boyce Kyle DiSandro Richard Komarovskiy Austin Schussler Table of Contents 1. Introduction 2 a. Client Description 2 b. Product Vision 2 2. Requirements

More information

Ur/Web: A Simple Model for Programming the Web. Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015

Ur/Web: A Simple Model for Programming the Web. Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015 Ur/Web: A Simple Model for Programming the Web Adam Chlipala MIT CSAIL POPL 2015 January 15, 2015 Ur / Web Ur A new general-purpose typed functional language λ Web Tools for implementing modern three-tier

More information

DDS Connector Sept, Gianpiero Napoli, Senior Software Engineer

DDS Connector Sept, Gianpiero Napoli, Senior Software Engineer DDS Connector Sept, 2016 Gianpiero Napoli, Senior Software Engineer Agenda Goals Concept Architecture Status Demo Next Steps Connector Goals Faster ( Rapid ) Development Integration Troubleshooting Integrate

More information

Networking & The Web. HCID 520 User Interface Software & Technology

Networking & The Web. HCID 520 User Interface Software & Technology Networking & The HCID 520 User Interface Software & Technology Uniform Resource Locator (URL) http://info.cern.ch:80/ 1991 HTTP v0.9 Uniform Resource Locator (URL) http://info.cern.ch:80/ Scheme/Protocol

More information

node.js A quick tour (v4)

node.js A quick tour (v4) node.js A quick tour 15.02.2011 (v4) About Felix Geisendörfer 23 years Berlin, Germany @felixge Core Contributor & Module Author node-mysql node-formidable File uploading & processing as an infrastructure

More information

IDWedgeKB Serial Port and NodeJS

IDWedgeKB Serial Port and NodeJS IDWedgeKB Serial Port and NodeJS The IDWedgeKB is a barcode scanner that reads and parses the information encoded on the 2D barcode found on U.S. Drivers Licenses. IDWedgeKB has two modes of operation;

More information

The Panorama Framework. By Sam Habiel, Pharm.D. Technical Fellow OSEHRA Arlington, VA & Alexis Carlson Seattle, WA

The Panorama Framework. By Sam Habiel, Pharm.D. Technical Fellow OSEHRA Arlington, VA & Alexis Carlson Seattle, WA The Panorama Framework By Sam Habiel, Pharm.D. Technical Fellow OSEHRA Arlington, VA & Alexis Carlson Seattle, WA What is it? The next generation of how VistA ought to be developed Expressly written to

More information

MOdern Java(Script) Server Stack

MOdern Java(Script) Server Stack MOdern Java(Script) Server Stack Pratik Patel Pratik Patel CTO Triplingo JAVA CHAMPION PRESIDENT ATLANTA JUG POLYGLOT apple mac vintage 5" screen TURTLE MY FIRST PROGRAM TURING MY FIRST REAL PROGRAM JAVASCRIPT

More information

C H A P T E R O N L I N E

C H A P T E R O N L I N E CHAPTER ONLINE Get Programming with JavaScript by John R. Larsen Chapter 25 Copyright 2016 Manning Publications brief contents PART 1 CORE CONCEPTS ON THE CONSOLE...1 1 Programming, JavaScript, and JS

More information

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE Table of Contents Introduction... 2 Architecture Overview... 2 Supported Browser Versions and Technologies... 3 Firewalls and Login Sessions...

More information

CS 498RK FALL RESTFUL APIs

CS 498RK FALL RESTFUL APIs CS 498RK FALL 2017 RESTFUL APIs Designing Restful Apis blog.mwaysolutions.com/2014/06/05/10-best-practices-for-better-restful-api/ www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api Resources

More information

Using Messaging Protocols to Build Mobile and Web Applications. Jeff Mesnil

Using Messaging Protocols to Build Mobile and Web Applications. Jeff Mesnil Using Messaging Protocols to Build Mobile and Web Applications Jeff Mesnil Jeff Mesnil Software Engineer at Red Hat Core developer on WildFly Application Server, lead for its messaging component Developed

More information

FUSE Ajax Tutorial. 07/06 Version 1.2

FUSE Ajax Tutorial. 07/06 Version 1.2 07/06 Version 1.2 This is a tutorial for a real world example of a stock portfolio publisher using Ajax and Apache ActiveMQ (AMQ). This demonstration uses features of Ajax to show multiple interactive

More information

Copyright Descriptor Systems, Course materials may not be reproduced in whole or in part without prior written consent of Joel Barnum

Copyright Descriptor Systems, Course materials may not be reproduced in whole or in part without prior written consent of Joel Barnum Ajax The notion of asynchronous request processing using the XMLHttpRequest object has been around for several years, but the term "AJAX" was coined by Jesse James Garrett of Adaptive Path. You can read

More information

Updating web content in real time using Node.js

Updating web content in real time using Node.js Quest Journals Journal of Software Engineering and Simulation Volume1 ~ Issue 3 (2013) pp: 01-06 ISSN(Online) :2321-3795 ISSN (Print):2321-3809 www.questjournals.org Research Paper Updating web content

More information

Building Real-time Data in Web Applications with Node.js

Building Real-time Data in Web Applications with Node.js Building Real-time Data in Web Applications with Node.js Dan McGhan Oracle Developer Advocate JavaScript and HTML5 March, 2017 Copyright 2017, Oracle and/or its affiliates. All rights reserved. Safe Harbor

More information

NodeJS and JavaScripteverywhere

NodeJS and JavaScripteverywhere NodeJS and JavaScripteverywhere Matthew Eernisse YOW Conference: December 2011 Who am I? Matthew Eernisse Work at Yammer @mde on Twitter What is JavaScript- everywhere? A list of stuff Ruby JavaScript

More information

WorldSpace Attest Quick Start Guide

WorldSpace Attest Quick Start Guide WorldSpace Attest Quick Start Guide Contents What is WorldSpace Attest?... 2 What Comprises WorldSpace Attest?... 2 What do I need to get started?... 2 Prerequisites... 2 Generating your personal API key...

More information

Node.js. Mendel Rosenblum. CS142 Lecture Notes - Node.js

Node.js. Mendel Rosenblum. CS142 Lecture Notes - Node.js Node.js Mendel Rosenblum Threads versus Events request = readrequest(socket); reply = processrequest(request); sendreply(socket, reply); Implementation: Thread switching (i.e. blocking) and a scheduler

More information

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav

Catbook Workshop: Intro to NodeJS. Monde Duinkharjav Catbook Workshop: Intro to NodeJS Monde Duinkharjav What is NodeJS? NodeJS is... A Javascript RUNTIME ENGINE NOT a framework NOT Javascript nor a JS package It is a method for running your code in Javascript.

More information

EWD Custom Tag Development. Built-in Custom Tags for defining and manipulating Javascript

EWD Custom Tag Development. Built-in Custom Tags for defining and manipulating Javascript EWD Custom Tag Development Built-in Custom Tags for defining and manipulating Javascript Build 790 Introduction A number of very powerful custom tags have been added to EWD. Unlike many of the built-in

More information

The realtime web: HTTP/1.1 to WebSocket, SPDY and beyond. Guillermo QCon. November 2012.

The realtime web: HTTP/1.1 to WebSocket, SPDY and beyond. Guillermo QCon. November 2012. The realtime web: HTTP/1.1 to WebSocket, SPDY and beyond Guillermo Rauch @ QCon. November 2012. Guillermo. CTO and co-founder at LearnBoost. Creator of socket.io and engine.io. @rauchg on twitter http://devthought.com

More information

August, HPE Propel Microservices & Jumpstart

August, HPE Propel Microservices & Jumpstart August, 2016 HPE Propel s & Jumpstart Jumpstart Value Quickly build modern web applications Single page application Modular microservices architecture app generator Modularity provides better upgradeability

More information

Model-View-Control Pattern for User Interactive Systems

Model-View-Control Pattern for User Interactive Systems Model-View-Control Pattern for User Interactive Systems In various forms and guises J. Scott Hawker p. 1 Contents Key Model-View-Control (MVC) concepts Web MVC UI Controller in MVC GRASP Application Controller

More information

Copyright 2013, Oracle and/or its affiliates. All rights reserved. CON-7777, JMS and WebSocket for Lightweight and Efficient Messaging

Copyright 2013, Oracle and/or its affiliates. All rights reserved. CON-7777, JMS and WebSocket for Lightweight and Efficient Messaging 1 JMS and WebSocket for Lightweight and Efficient Messaging Ed Bratt Senior Development Manager, Oracle Amy Kang Consulting Member Technical Staff, Oracle Safe Harbor Statement please note The following

More information

Comet and WebSocket Web Applications How to Scale Server-Side Event-Driven Scenarios

Comet and WebSocket Web Applications How to Scale Server-Side Event-Driven Scenarios Comet and WebSocket Web Applications How to Scale Server-Side Event-Driven Scenarios Simone Bordet sbordet@intalio.com 1 Agenda What are Comet web applications? Impacts of Comet web applications WebSocket

More information

Elementary! Incorporating BlueMix, Node-RED and Watson in Domino applications

Elementary! Incorporating BlueMix, Node-RED and Watson in Domino applications Elementary! Incorporating BlueMix, Node-RED and Watson in Domino applications Our Amazing Sponsors MWLUG 2017 Karl-Henry Martinsson CEO, Demand Better Solutions, LLC In the IT industry for 29 years Full

More information

The Design of Real-time Display Screen Control Techniques for Mobile Devices 1

The Design of Real-time Display Screen Control Techniques for Mobile Devices 1 , pp.189-193 http://dx.doi.org/10.14257/astl.2016.133.36 The Design of Real-time Display Screen Control Techniques for Mobile Devices 1 Jungsoo Hwang 1, Ji Hee Jeong 1, Soon-Bum Lim 1, 1 Dept. of Multimedia

More information

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect

Server-Side JavaScript auf der JVM. Peter Doschkinow Senior Java Architect Server-Side JavaScript auf der JVM Peter Doschkinow Senior Java Architect The following is intended to outline our general product direction. It is intended for information purposes only, and may not be

More information

Defining New Node-RED Nodes

Defining New Node-RED Nodes Overview Node-RED is a highly graphical programming environment however there are some things which cannot be done using the out-of-the-box nodes. Using the Function Node is one way to get around this

More information

High Level Interoperability Testing

High Level Interoperability Testing High Level Interoperability Testing For the Web of Things Dave Raggett F-Interop is an international project supported by the European Union s Horizon 2020 programme under Grant Agreement

More information

REST. Web-based APIs

REST. Web-based APIs REST Web-based APIs REST Representational State Transfer Style of web software architecture that simplifies application Not a standard, but a design pattern REST Take all resources for web application

More information

Asema IoT Central Integration and migration. English

Asema IoT Central Integration and migration. English Asema IoT Central English Table of Contents 1. Introduction... 1 2. alternatives... 2 2.1. Simply move and run... 2 2.2. Asema IoT Central as a proxy for other systems... 5 2.2.1. Proxied HTTP requests...

More information

Proposal and Trial Implementation of Open Source Clicker System

Proposal and Trial Implementation of Open Source Clicker System 1,a) 2,b) 1,c) PC1 Wi-Fi PC Wi-Fi Web Wi-Fi WebSocket 10 Proposal and Trial Implementation of Open Source Clicker System Yoshihiro Ohmi 1,a) Masahiro Mizutani 2,b) Yasuo Nagai 1,c) Abstract: We propose

More information

Node.js. Node.js Overview. CS144: Web Applications

Node.js. Node.js Overview. CS144: Web Applications Node.js Node.js Overview JavaScript runtime environment based on Chrome V8 JavaScript engine Allows JavaScript to run on any computer JavaScript everywhere! On browsers and servers! Intended to run directly

More information

Manju Muralidharan Priya. CS4PM Web Aesthetics and Development WEEK 11

Manju Muralidharan Priya. CS4PM Web Aesthetics and Development WEEK 11 CS4PM Web Aesthetics and Development WEEK 11 Objective: Understand basics of JScript Outline: a. Basics of JScript Reading: Refer to w3schools websites and use the TRY IT YOURSELF editor and play with

More information

Angular 2 and Hexo. Static Meets Dynamic For the Best of Both Worlds! Copyright 2016 Code Career Academy

Angular 2 and Hexo. Static Meets Dynamic For the Best of Both Worlds! Copyright 2016 Code Career Academy Angular 2 and Hexo Static Meets Dynamic For the Best of Both Worlds! Who am I? Jeff Ammons Microsoft MVP Pluralsight Author CEO/Chief Instructor at Code Career Academy 25 Years Professional Experience

More information

Hands-On with IoT Standards & Protocols

Hands-On with IoT Standards & Protocols DEVNET-3623 Hands-On with IoT Standards & Protocols Casey Bleeker, Developer Evangelist @geekbleek Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1. Find this

More information

Cookies, sessions and authentication

Cookies, sessions and authentication Cookies, sessions and authentication TI1506: Web and Database Technology Claudia Hauff! Lecture 7 [Web], 2014/15 1 Course overview [Web] 1. http: the language of Web communication 2. Web (app) design &

More information

Web Security: Vulnerabilities & Attacks

Web Security: Vulnerabilities & Attacks Computer Security Course. Song Dawn Web Security: Vulnerabilities & Attacks Cross-site Scripting What is Cross-site Scripting (XSS)? Vulnerability in web application that enables attackers to inject client-side

More information

Corey Clark PhD Daniel Montgomery

Corey Clark PhD Daniel Montgomery Corey Clark PhD Daniel Montgomery Web Dev Platform Cross Platform Cross Browser WebGL HTML5 Web Socket Web Worker Hardware Acceleration Optimized Communication Channel Parallel Processing JaHOVA OS Kernel

More information

Server execution of JavaScript: What could possibly go wrong?

Server execution of JavaScript: What could possibly go wrong? Server execution of JavaScript: What could possibly go wrong? Brian Geffon Staff Software Engineer Hello! 2 Outline Introductions Ø Brief History The paradigm shift Problems! Where we are today Closing

More information

Mail: Web: juergen-schuster-it.de

Mail: Web: juergen-schuster-it.de Mail: j_schuster@me.com Twitter: @JuergenSchuster Web: juergen-schuster-it.de APEX-Homepage: APEX Podcast: apex.press/talkshow Dynamic Actions Examples: dynamic-actions.com Who am I Oracle (13 Years) Freelancer

More information

com.walmartlabs/lacinia-pedestal Documentation

com.walmartlabs/lacinia-pedestal Documentation com.walmartlabs/lacinia-pedestal Documentation Release 0.10.1 Walmartlabs Sep 14, 2018 Contents 1 Overview 3 2 Request Format 5 2.1 GET................................................... 5 2.2 POST (application/json).........................................

More information

JavaScript on the Command Line & PRATIK PATEL CTO TripLingo Labs

JavaScript on the Command Line & PRATIK PATEL CTO TripLingo Labs JavaScript on the Command Line & Server @prpatel TripLingo Labs PRATIK@mypatelspace.com Topics Modern JavaScript Why? Ecosystem Node Grunt Yesterday s JavaScript Today s JavaScript is cool What s changed?

More information

SRIJAN MANANDHAR MQTT BASED COMMUNICATION IN IOT. Master of Science thesis

SRIJAN MANANDHAR MQTT BASED COMMUNICATION IN IOT. Master of Science thesis SRIJAN MANANDHAR MQTT BASED COMMUNICATION IN IOT Master of Science thesis Examiner: Prof. Kari Systä Examiner and topic approved by the Faculty Council of the Faculty of Department of Pervasive Systems

More information

Xignite CloudStreaming overview

Xignite CloudStreaming overview Xignite CloudStreaming overview Objectives Terminology Zero footprint Easy to implement Open standards Sample code Simple javascript implementation Handling patch messages Including error handling Using

More information

ORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX

ORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX ORACLE APPLICATION EXPRESS, ORACLE REST DATA SERVICES, & WEBLOGIC 12C AUTHOR: BRAD GIBSON SENIOR SOLUTIONS ARCHITECT ADVIZEX AdvizeX Technologies - A Rolta Company 6/12/2015 1 AGENDA Introductions Test

More information

A Hands on Introduction to Docker

A Hands on Introduction to Docker A Hands on Introduction to Docker Len Bass A Hands on introduction Introduction to to Docker May 2017 1 4, Len 2017 Bass 2017 Len Bass 1 Setting expectations This is an introduction to Docker intended

More information

Write a FreeSWITCH GUI with React and Lua

Write a FreeSWITCH GUI with React and Lua Write a FreeSWITCH GUI with React and Lua Seven Du ClueCon 2017 Yantai Xiaoyingtao Network Technology Yantai China Yantai China Met FreeSWITCH at 2007 Start patching FreeSWITCH from 2008 FreeSWITCH coding

More information

How to Implement a Web-based Terminal with Docker

How to Implement a Web-based Terminal with Docker How to Implement a Web-based Terminal with Docker 2015-03-14 Who am I 杜万 (Vangie Du) Full-Stack Web Developer Linux fans Working on Coding@Shanghai About Coding Project Management Source Code Management

More information

5th April Installation Manual. Department of Computing and Networking Software Development Degree

5th April Installation Manual. Department of Computing and Networking Software Development Degree 5th April 2017 Installation Manual Department of Computing and Networking Software Development Degree Project name: Student: Student Number: Supervisor: MaaP (Message as a Platform) Chihabeddine Ahmed

More information

Graphing Data from MYSQL By Javier Montiel Urbina

Graphing Data from MYSQL By Javier Montiel Urbina Graphing Data from MYSQL By Javier Montiel Urbina Requirements for Local Devices (* required cdn for graphing and acquiring data, needed in the html file*)

More information

PubNub Training Webinar. Introduction to PubNub JavaScript SDK

PubNub Training Webinar. Introduction to PubNub JavaScript SDK PubNub Training Webinar Introduction to PubNub JavaScript SDK Course Agenda Participation What is PubNub? JavaScript API Resources Upcoming Events Q & A What is PubNub? Globally distributed Realtime Data

More information

Advance Mobile& Web Application development using Angular and Native Script

Advance Mobile& Web Application development using Angular and Native Script Advance Mobile& Web Application development using Angular and Native Script Objective:- As the popularity of Node.js continues to grow each day, it is highly likely that you will use it when you are building

More information

תוכנית יומית לכנס התכנסות וארוחת בוקר

תוכנית יומית לכנס התכנסות וארוחת בוקר תוכנית יומית לכנס התכנסות וארוחת בוקר 08:00-09:00 הרצאה הפסקה ראשונה הרצאה ארוחת צהריים הרצאה הפסקה מתוקה -09:00-10:30-10:30-10:45-10:45-12:30-12:30-13:30-13:30-15:00-15:00-15:15 הרצאה 15:15-16:30 לפרטים

More information

END-TO-END JAVASCRIPT WEB APPS

END-TO-END JAVASCRIPT WEB APPS END-TO-END JAVASCRIPT WEB APPS HTML5, NODE.JS AND MONGODB CADEC 2013 by Peter Larsson JAVASCRIPT IS NOT EVIL TECH. INDEX, JAN 2013 Dice Job Posts Google 20,000 2,400,000,000 15,000 1,800,000,000 10,000

More information

By Stephen Cavell, Kerry Ellwanger, and Jack Livingston

By Stephen Cavell, Kerry Ellwanger, and Jack Livingston By Stephen Cavell, Kerry Ellwanger, and Jack Livingston History PhoneGap created in 2009 by startup Nitobi. Open source way to access the native environment through an embedded WebView in a native app.

More information

November 2017 WebRTC for Live Media and Broadcast Second screen and CDN traffic optimization. Author: Jesús Oliva Founder & Media Lead Architect

November 2017 WebRTC for Live Media and Broadcast Second screen and CDN traffic optimization. Author: Jesús Oliva Founder & Media Lead Architect November 2017 WebRTC for Live Media and Broadcast Second screen and CDN traffic optimization Author: Jesús Oliva Founder & Media Lead Architect Introduction It is not a surprise if we say browsers are

More information

When learning coding, be brave

When learning coding, be brave Who am I? Web Technology Overview with a focus on JavaScript-based technologies Lawrence Yao l.yao@unsw.edu.au Lawrence Yao UNSW casual staff Developer Analyst at YTML Consulting Email me if you need technical

More information

趙庸鎭 (Cho, Yong Jin)

趙庸鎭 (Cho, Yong Jin) Evolution to OS of Everything Tizen Micro profile for low-end IoT devices 趙庸鎭 (Cho, Yong Jin) drajin.cho@samsung.com Software Center, Samsung Elec. Contents Part I. OS of Everything in IoT Part II. Tizen

More information

Ten interesting features of Google s Angular Project

Ten interesting features of Google s Angular Project Ten interesting features of Google s Angular Project - 1 Ten interesting features of Google s Angular Project Copyright Clipcode Ltd 2018 All rights reserved Ten interesting features of Google s Angular

More information

Serverless Computing and the Apache OpenWhisk Project

Serverless Computing and the Apache OpenWhisk Project Serverless Computing and the Apache OpenWhisk Project http://openwhisk.org/ #openwhisk https://openwhisk-team.slack.com/ Matt Rutkowski, STSM, IBM Cloud Open Technologies 1 Session Topics What is Serverless

More information

PAS for OpenEdge Support for JWT and OAuth Samples -

PAS for OpenEdge Support for JWT and OAuth Samples - PAS for OpenEdge Support for JWT and OAuth 2.0 - Samples - Version 1.0 November 21, 2017 Copyright 2017 and/or its subsidiaries or affiliates. All Rights Reserved. 2 TABLE OF CONTENTS INTRODUCTION... 3

More information

The SPS.Client consist of a single.net DLL (SPS.CLient.dll), henceforth referred to as the client library.

The SPS.Client consist of a single.net DLL (SPS.CLient.dll), henceforth referred to as the client library. 1 Introduction This document is the technical reference for Signaturgruppens SPS.Client library. The SPS.Client consist of a single.net DLL (SPS.CLient.dll), henceforth referred to as the client library.

More information

Internet Programming Week 10. Instructor: Paulo Fernandes Applied Computer Science University of Winnipeg

Internet Programming Week 10. Instructor: Paulo Fernandes Applied Computer Science University of Winnipeg Internet Programming Week 10 Instructor: Paulo Fernandes Applied Computer Science University of Winnipeg Web Workers Slides only Threading Ever get a slow script message? Q) How could a script be slow

More information

Lesson 5 Nimbits. Chapter-6 L05: "Internet of Things ", Raj Kamal, Publs.: McGraw-Hill Education

Lesson 5 Nimbits. Chapter-6 L05: Internet of Things , Raj Kamal, Publs.: McGraw-Hill Education Lesson 5 Nimbits 1 Cloud IoT cloud-based Service Using Server at the Edges A server can be deployed at the edges (device nodes) which communicates the feeds to the cloud service. The server also provisions

More information

Profound.js. Future of open source development on IBM i. Alex Roytman Profound Logic

Profound.js. Future of open source development on IBM i. Alex Roytman Profound Logic Profound.js Future of open source development on IBM i Alex Roytman Profound Logic What is Node.js? The most exciting technology ever to be brought over to IBM i Brings the platform forward in a way like

More information

Node Js Mongodb And Angularjs Webydo

Node Js Mongodb And Angularjs Webydo We have made it easy for you to find a PDF Ebooks without any digging. And by having access to our ebooks online or by storing it on your computer, you have convenient answers with node js mongodb and

More information

CSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design

CSS JavaScript General Implementation Preloading Preloading in the Design Thinking Process Preloading in the Summary View Android UI Design Design Table of Contents Introduction Purpose Scope Overview Design Thinking Process Description Empathy Define Ideate Prototype Test Design Thinking Requirement Analysis Empathy Define Ideate Prototype Test

More information

We are assuming you have node installed!

We are assuming you have node installed! Node.js Hosting We are assuming you have node installed! This lesson assumes you've installed and are a bit familiar with JavaScript and node.js. If you do not have node, you can download and install it

More information