Programming IoT Gateways With macchina.io
|
|
|
- Amberly Marsh
- 10 years ago
- Views:
Transcription
1 Programming IoT Gateways With macchina.io Günter Obiltschnig Applied Informatics Software Engineering GmbH Maria Elend Maria Elend Austria This article shows how to program IoT Gateway devices in macchina.io, a new open source software platform. IoT Gateways play a central role in many Internet of Things applications. They are the link between (wireless and low-power) sensor and fieldbus networks, as well as legacy devices (typically connected via RS-232, RS-485 or USB interfaces) on the one side, and cloud or enterprise systems on the other side. Typically, an IoT Gateway device is based on a powerful ARM Cortex or Intel SoC and running a Linux operating system. Some devices include high-speed cellular network interfaces. IoT Gateways are often used in highly customer-specific environments, so easy programmability is an important feature. The application-specific code running on these devices in many cases is neither very complex nor performance-critical. Typically, it has to acquire some data from connected sensors or devices, preprocess this data, and send it to a cloud or enterprise server for further processing and/or storage. In the last few years JavaScript has become one of the most popular programming languages. While having its roots in client-side web development, JavaScript is now also a very popular programming language for server-side development, due to projects like node.js. Furthermore, the competition among the Firefox, Chrome and Safari browsers has brought with it a race for the fastest JavaScript engine. Most modern JavaScript engines like Google s V8 now compile JavaScript into machine code, resulting in good performance even for non-trivial applications, or on resource constrained systems. On the other hand, C++ has also seen a renaissance in recent years, mostly driven by two factors: the new C++11 and C++14 standards, bringing modern features like lambdas to the language, and the need for maximum efficiency and performance, which, despite years of promises, are still not matched by virtual machine based languages like Java or the.net family of languages. A new open source platform, macchina.io, combines the flexibility of JavaScript for rapid application development with the power and performance of native C++ code. macchina.io is mostly implemented in C++, for maximum performance and efficiency. Although JavaScript plays a big role in macchina.io as the preferred language for high-level application development, it is not used much in the implementation of macchina.io itself, except for some parts of the web user interface. The combination of JavaScript for rapid high-level development, with C++ for
2 performance critical, or low-level code, makes macchina.io a perfect platform for IoT gateway devices. Furthermore, a unique bridging system and a code generator make it easy to consume services written in C++ from JavaScript, without the need to manually write awkward glue code required to make C++ objects accessible from JavaScript. The foundation of macchina.io is the so-called "Platform" (see Figure 1). It consists of the POCO C++ Libraries, the Remoting framework, the Open Service Platform (OSP) and the JavaScript environment, based on the V8 JavaScript engine. Figure 1: macchina.io Overview The POCO C++ Libraries are modern, powerful open source C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems. They provide essential features such as platform abstraction, multithreading, XML and JSON processing, filesystem access, logging, stream, datagram and multicast sockets, HTTP server and client, SSL/TLS, etc. Virtually everything implemented in macchina.io (except some integrated third-party open source projects) is based on the POCO C++ Libraries. The Open Service Platform (OSP) enables the creation, deployment and management of dynamically extensible, modular applications, based on a powerful plug-in and services model. Applications built with OSP can be extended, upgraded and managed even when deployed in the field. At the core of OSP lies a powerful software component (plug-in) and services model based on the concept of bundles. A bundle is a deployable entity, consisting of both executable code (shared libraries or JavaScript) and the required configuration, data and resource files (e.g., HTML documents, images and stylesheets required for a web site). Bundles extend the
3 functionality of an application by providing certain services. A central Service Registry allows bundles to discover services provided by other bundles. Bundles can be installed, upgraded, started, stopped or removed from an application (programmatically, or using a web- or console based administration utility) without the need to terminate and restart the application. Remoting is a distributed objects and web services framework for C++. The framework enables distributed applications, implementing high-level object-based inter-process communication (IPC), remote method invocation (RMI) or web services based on SOAP/WSDL. In macchina.io, Remoting is used for the C++-to- JavaScript bridging mechanism. It can also be used for efficient RPC-based interprocess communication, using the TCP transport. The JavaScript environment in macchina.io is based on the Google V8 engine. V8 is the JavaScript engine used in the Google Chrome browser and node.js, a well-known server-side JavaScript platform. V8 compiles JavaScript directly into optimized machine code, ensuring good performance. There are bindings that enable using certain features of the POCO C++ Libraries and OSP in JavaScript code. Examples are database access (SQLite), HTTP(S) client, access to application configuration and environment, OSP service registry, etc. JavaScript can also be used to write servlets and server pages for the built-in web server. This makes it easy to visualize sensor data on a web page hosted by macchina.io s built in web server. The IoT Components are the "heart" of macchina.io. Various OSP bundles and services implement features such as interfaces to devices and sensors, network protocols such as MQTT, interfaces to cloud services (e.g., for sending SMS or Twitter messages), and the web-based user interface of macchina.io. All this is available to JavaScript and C++ code. macchina.io defines generic interfaces for various kinds of sensors and devices. Based on these interfaces, different implementations are available that make specific sensors and devices available in macchina.io. There are interfaces and implementations for generic sensor types such as temperature or humidity sensors, GNSS/GPS receivers, accelerometers, triggers, GPIO ports, serial port devices, barcode readers, etc. Additional sensor types and implementations can be easily added as well. macchina.io implements various protocols for talking to sensor networks, automation systems, or cloud services. One such protocol is MQTT, a publish-subscribe based "light weight" messaging protocol for use on top of the TCP/IP protocol, which is popular for building cloud-connected IoT applications. The user interface of macchina.io is entirely web-based (Figure 2). Some parts of the web interface (e.g., System Information, Sensors and Devices, GNSS Tracking, MQTT Clients) are built entirely in JavaScript, both on the client and on the server side. Other parts combine JavaScript on the client side with C++ REST services on the server side. A highlight of the web user interface is the "Playground" app (Figure 3). It provides a comfortable browser-based JavaScript editor and allows running JavaScript code on the device. This allows for very easy prototyping and experimentation. Instead of having to compile code on a host system, then transfer the resulting binary to the device, the code can be edited directly on the device and run with the simple click of a button.
4 Figure 2: The macchina.io Web User Interface The Playground comes pre-loaded with the macchina.io variant of the "Hello, world!" program - a short script that finds a temperature sensor and obtains the current temperature from the sensor. The script is shown in the following. // Search for temperature sensors in the Service Registry var temperaturerefs = serviceregistry.find( 'io.macchina.physicalquantity == "temperature"'); if (temperaturerefs.length > 0) // Found at least one temperature sensor resolve it. var temperaturesensor = temperaturerefs[0].instance(); // Get current temperature. var temperature = temperaturesensor.value(); logger.information('current temperature: ' + temperature); else logger.error('no temperature sensor found.'); Example 1: The macchina.io Hello, world! JavaScript program The program shows two things: how to obtain a sensor service object from the Service Registry, and how to write logging output. To find available sensors in the system, the macchina.io Service Registry is used. All available sensors and devices will be represented as service objects using that registry. In order to find a specific object, the service registry supports a simple query expression language that allows finding services based on their properties. In the example above, we specifically look for a temperature sensor. In macchina.io, sensors always have a property named io.macchina.physicalquantity that can be
5 used to search for sensors that measure a specific physical quantity. The find method will return an array of service references. Service references are different from actual service objects. Their purpose is to store service properties (like the mentioned io.macchina.physicalquantity), as well as a reference to the actual service object. The actual service object can be obtained by calling the instance() function, like we do in the sample. Once we have the temperature sensor object, we can use it to obtain the current value by calling the value() function. Figure 3: The macchina.io Playground App In the Playground app, the script can be run on the device by clicking the "Run" button above the editor. As a next step, the program can be modified so that it will periodically output the current temperature. This is done by setting up a timer, using the setinterval() function. Here's the modified code: var temperaturerefs = serviceregistry.find( 'io.macchina.physicalquantity == "temperature"'); if (temperaturerefs.length > 0) var temperaturesensor = temperaturerefs[0].instance(); logger.information('found temperature sensor.'); setinterval( function() logger.information('current temperature: ' + temperaturesensor.value());, 1000 ); else
6 logger.error('no temperature sensor found.'); Example 2: Periodically querying sensor data. Sensor objects also support events, so scripts can be notified when a sensor measurement changes. A script can register a callback function to be notified as follows: temperaturesensor.on('valuechanged', function(event) logger.information('temperature changed: ' + event.data); ); Example 3: Events and callback functions JavaScript code can also invoke web services. The final code example shows how to invoke a HTTPS based web service from JavaScript. If the temperature exceeds a certain limit, we'll send a SMS message using the Twilio SMS cloud service. First, the JavaScript function to send a SMS message: function sendsms(message) var username = 'username'; var password = 'password'; var from = ' '; var to = ' '; var twiliohttprequest = new HTTPRequest( 'POST', ' + username + '/SMS/Messages'); twiliohttprequest.authenticate(username, password); twiliohttprequest.contenttype = 'application/x-www-form-urlencoded'; twiliohttprequest.content = 'From=' + encodeuricomponent(from) + '&To=' + encodeuricomponent(to) + '&Body=' + encodeuricomponent(message); var response = twiliohttprequest.send(function(result) logger.information('sms sent with HTTP status: ' + result.response.status); logger.information(result.response.content); ); Example 4: Sending a SMS message using the Twilio cloud service And finally the code to check the temperature, and to send the message if a temperature limit (30 C) is exceeded: var smssent = false; var temperaturerefs = serviceregistry.find( 'io.macchina.physicalquantity == "temperature"'); if (temperaturerefs.length > 0) var temperaturesensor = temperaturerefs[0].instance(); temperaturesensor.on('valuechanged', function(event) if (event.data > 30 &&!smssent)
7 ); sendsms('temperature limit exceeded!'); smssent = true; Example 5: Monitoring a temperature and alerting via SMS In this article we have introduced macchina.io, a new open source toolkit for programming IoT Gateway devices, combining JavaScript for rapid high-level application development with C++ for high performance low-level development. Beside being a great platform for manufacturers of IoT Gateway devices, macchina.io is also great for prototyping, e.g. using a Raspberry Pi combined with Tinkerforge. macchina.io is licensed under the Apache 2.0 license and available from GitHub. More information and downloads can be found at
Automatic Configuration and Service Discovery for Networked Smart Devices
Automatic Configuration and Service Discovery for Networked Smart Devices Günter Obiltschnig Applied Informatics Software Engineering GmbH St. Peter 33 9184 St. Jakob im Rosental Austria Tel: +43 4253
Synapse s SNAP Network Operating System
Synapse s SNAP Network Operating System by David Ewing, Chief Technology Officer, Synapse Wireless Today we are surrounded by tiny embedded machines electro-mechanical systems that monitor the environment
Building Internet of Things applica5ons with COMPOSE and JavaScript Charalampos Doukas @buildingiot
Building Internet of Things applica5ons with COMPOSE and JavaScript Charalampos Doukas @buildingiot Building Internet of Things applica5ons with COMPOSE and JavaScript PART A Some Basics IoT: The main
How To Understand The Architecture Of An Ulteo Virtual Desktop Server Farm
ULTEO OPEN VIRTUAL DESKTOP V4.0.2 ARCHITECTURE OVERVIEW Contents 1 Introduction 2 2 Servers Roles 3 2.1 Session Manager................................. 3 2.2 Application Server................................
SysPatrol - Server Security Monitor
SysPatrol Server Security Monitor User Manual Version 2.2 Sep 2013 www.flexense.com www.syspatrol.com 1 Product Overview SysPatrol is a server security monitoring solution allowing one to monitor one or
KonyOne Server Prerequisites _ MS SQL Server
KonyOne Server Prerequisites _ MS SQL Server KonyOne Platform Release 5.0 Copyright 2012-2013 Kony Solutions, Inc. All Rights Reserved. Page 1 of 13 Copyright 2012-2013 by Kony Solutions, Inc. All rights
MEGA Web Application Architecture Overview MEGA 2009 SP4
Revised: September 2, 2010 Created: March 31, 2010 Author: Jérôme Horber CONTENTS Summary This document describes the system requirements and possible deployment architectures for MEGA Web Application.
AdRadionet to IBM Bluemix Connectivity Quickstart User Guide
AdRadionet to IBM Bluemix Connectivity Quickstart User Guide Platform: EV-ADRN-WSN-1Z Evaluation Kit, AdRadionet-to-IBM-Bluemix-Connectivity January 20, 2015 Table of Contents Introduction... 3 Things
Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf
1 The Web, revisited WEB 2.0 [email protected] Credits: Some of the slides are based on material adapted from www.telerik.com/documents/telerik_and_ajax.pdf 2 The old web: 1994 HTML pages (hyperlinks)
CARRIOTS TECHNICAL PRESENTATION
CARRIOTS TECHNICAL PRESENTATION Alvaro Everlet, CTO [email protected] @aeverlet Oct 2013 CARRIOTS TECHNICAL PRESENTATION 1. WHAT IS CARRIOTS 2. BUILDING AN IOT PROJECT 3. DEVICES 4. PLATFORM
Web Conferencing Version 8.3 Troubleshooting Guide
System Requirements General Requirements Web Conferencing Version 8.3 Troubleshooting Guide Listed below are the minimum requirements for participants accessing the web conferencing service. Systems which
IBM Rational Web Developer for WebSphere Software Version 6.0
Rapidly build, test and deploy Web, Web services and Java applications with an IDE that is easy to learn and use IBM Rational Web Developer for WebSphere Software Version 6.0 Highlights Accelerate Web,
Prototyping Connected-Devices for the Internet of Things. Angus Wong
Prototyping Connected-Devices for the Internet of Things Angus Wong Agenda 1) Trends of implementation of IoT applications REST Cloud 2) Connected-device Prototyping Tools Arduino Raspberry Pi Gadgeteer
How To Write A Web Server In Javascript
LIBERATED: A fully in-browser client and server web application debug and test environment Derrell Lipman University of Massachusetts Lowell Overview of the Client/Server Environment Server Machine Client
Troubleshooting BlackBerry Enterprise Service 10 version 10.1.1 726-08745-123. Instructor Manual
Troubleshooting BlackBerry Enterprise Service 10 version 10.1.1 726-08745-123 Instructor Manual Published: 2013-07-02 SWD-20130702091645092 Contents Advance preparation...7 Required materials...7 Topics
BarTender Print Portal. Web-based Software for Printing BarTender Documents WHITE PAPER
BarTender Print Portal Web-based Software for Printing BarTender Documents WHITE PAPER Contents Overview 3 Installing Print Portal 4 Configuring Your Installation 4 Supported Printing Technologies 5 Web
OnCommand Performance Manager 1.1
OnCommand Performance Manager 1.1 Installation and Setup Guide For Red Hat Enterprise Linux NetApp, Inc. 495 East Java Drive Sunnyvale, CA 94089 U.S. Telephone: +1 (408) 822-6000 Fax: +1 (408) 822-4501
IUCLID 5 Guidance and Support
IUCLID 5 Guidance and Support Web Service Installation Guide July 2012 v 2.4 July 2012 1/11 Table of Contents 1. Introduction 3 1.1. Important notes 3 1.2. Prerequisites 3 1.3. Installation files 4 2.
Author: Gennaro Frazzingaro Universidad Rey Juan Carlos campus de Mostòles (Madrid) GIA Grupo de Inteligencia Artificial
Simple Implementation of a WebService using Eclipse Author: Gennaro Frazzingaro Universidad Rey Juan Carlos campus de Mostòles (Madrid) GIA Grupo de Inteligencia Artificial Contents Web Services introduction
Building Java Servlets with Oracle JDeveloper
Building Java Servlets with Oracle JDeveloper Chris Schalk Oracle Corporation Introduction Developers today face a formidable task. They need to create large, distributed business applications. The actual
IRF2000 IWL3000 SRC1000 Application Note - Develop your own Apps with OSGi - getting started
Version 2.0 Original-Application Note ads-tec GmbH IRF2000 IWL3000 SRC1000 Application Note - Develop your own Apps with OSGi - getting started Stand: 28.10.2014 ads-tec GmbH 2014 IRF2000 IWL3000 SRC1000
Open Source building blocks for the Internet of Things. Benjamin Cabé JFokus 2013
Open Source building blocks for the Internet of Things Benjamin Cabé JFokus 2013 Who I am Benjamin Cabé Open Source M2M Evangelist at Sierra Wireless Long-time Eclipse lover M2M? IoT? Technology that supports
BarTender Web Print Server
The World's Leading Software for Label, Barcode, RFID & Card Printing White Paper BarTender Web Print Server Web-based Software for Printing Barcodes, Labels, ID Cards and more. Contents Introduction to
Integrating Mobile apps with your Enterprise
Integrating Mobile apps with your Enterprise Jonathan Marshall [email protected] @jmarshall1 Agenda Mobile apps and the enterprise Integrating mobile apps with Enterprise Applications Mobile apps and
Integrating with BarTender Integration Builder
Integrating with BarTender Integration Builder WHITE PAPER Contents Overview 3 Understanding BarTender's Native Integration Platform 4 Integration Builder 4 Administration Console 5 BarTender Integration
Load and Performance Load Testing. RadView Software October 2015 www.radview.com
Load and Performance Load Testing RadView Software October 2015 www.radview.com Contents Introduction... 3 Key Components and Architecture... 4 Creating Load Tests... 5 Mobile Load Testing... 9 Test Execution...
APPLICATION DEVELOPMENT FOR THE IOT ERA. Embedded Application Development Moves to the Cloud
APPLICATION DEVELOPMENT FOR THE IOT ERA Embedded Application Development Moves to the Cloud EXECUTIVE SUMMARY The emergence of the Internet of Things (IoT) is opening up the complex world of embedded systems
Apache Server Implementation Guide
Apache Server Implementation Guide 340 March Road Suite 600 Kanata, Ontario, Canada K2K 2E4 Tel: +1-613-599-2441 Fax: +1-613-599-2442 International Voice: +1-613-599-2441 North America Toll Free: 1-800-307-7042
WIND RIVER INTELLIGENT DEVICE PLATFORM XT
WIND RIVER INTELLIGENT DEVICE PLATFORM XT The Foundation for Building Devices That Connect to the Internet of Things The opportunities presented by the burgeoning Internet of Things (IoT) may be new, but
Elluminate Live! Access Guide. Page 1 of 7
This guide is provided to Elluminate Live! users to assist them to make a successful connection to an Elluminate Live! session through a proxy firewall. In some cases settings discussed in this document
Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper
WP2 Subject: with the CRYPTO-BOX Version: Smarx OS PPK 5.90 and higher 0-15Apr014ks(WP02_Network).odt Last Update: 28 April 2014 Target Operating Systems: Windows 8/7/Vista (32 & 64 bit), XP, Linux, OS
Spectrum Technology Platform
Spectrum Technology Platform Version 8.0.0 SP2 RIA Getting Started Guide Information in this document is subject to change without notice and does not represent a commitment on the part of the vendor or
The Future of IoT. Zach Shelby VP Marketing, IoT Feb 3 rd, 2015
The Future of IoT Zach Shelby VP Marketing, IoT Feb 3 rd, 2015 1 Internet of (really nerdy) People 1980s 2 Internet of (content silo) People 1990s 3 Internet of (Web) People 2000s 4 Internet of (really
Cross-Platform Software Considerations for Internet of Things
Cross-Platform Software Considerations for Internet of Things Tuukka Ahoniemi Technical Product Marketing Manager [email protected] 10th Central and Eastern European Software Engineering
How do I Install and Configure MS Remote Desktop for the Haas Terminal Server on my Mac?
Enterprise Computing & Service Management How do I Install and Configure MS Remote Desktop for the Haas Terminal Server on my Mac? In order to connect remotely to a PC computer from your Mac, we recommend
Zend Server 4.0 Beta 2 Release Announcement What s new in Zend Server 4.0 Beta 2 Updates and Improvements Resolved Issues Installation Issues
Zend Server 4.0 Beta 2 Release Announcement Thank you for your participation in the Zend Server 4.0 beta program. Your involvement will help us ensure we best address your needs and deliver even higher
Preface. Motivation for this Book
Preface Asynchronous JavaScript and XML (Ajax or AJAX) is a web technique to transfer XML data between a browser and a server asynchronously. Ajax is a web technique, not a technology. Ajax is based on
XML Processing and Web Services. Chapter 17
XML Processing and Web Services Chapter 17 Textbook to be published by Pearson Ed 2015 in early Pearson 2014 Fundamentals of http://www.funwebdev.com Web Development Objectives 1 XML Overview 2 XML Processing
DeskNow. Ventia Pty. Ltd. Advanced setup. Version : 3.2 Date : 4 January 2007
Ventia Pty. Ltd. DeskNow Advanced setup Version : 3.2 Date : 4 January 2007 Ventia Pty Limited A.C.N. 090 873 662 Web : http://www.desknow.com Email : [email protected] Overview DeskNow is a computing platform
DNS REBINDING DENIS BARANOV, POSITIVE TECHNOLOGIES
DNS REBINDING DENIS BARANOV, POSITIVE TECHNOLOGIES TABLE OF CONTENTS 1 Bypassing The Restrictions 3 2 Putting It into Practice 5 3 Actual Load 7 4 Detection Of The Application Version 5 Guessing A/The
IBM Digital Experience. Using Modern Web Development Tools and Technology with IBM Digital Experience
IBM Digital Experience Using Modern Web Development Tools and Technology with IBM Digital Experience Agenda The 2015 web development landscape and IBM Digital Experience Modern web applications and frameworks
HP Process Automation v6 Architecture/Technologies
HP Process Automation v6 Architecture/Technologies OVERVIEW... 3 Components... 3 1. STORAGE... 4 1.1. Static Elements... 4 1.2. Dynamic Elements... 7 2. COMMUNICATION... 9 2.1. Client-Tier Web Server
SyncThru TM Web Admin Service Administrator Manual
SyncThru TM Web Admin Service Administrator Manual 2007 Samsung Electronics Co., Ltd. All rights reserved. This administrator's guide is provided for information purposes only. All information included
Skynax. Mobility Management System. System Manual
Skynax Mobility Management System System Manual Intermec by Honeywell 6001 36th Ave. W. Everett, WA 98203 U.S.A. www.intermec.com The information contained herein is provided solely for the purpose of
KURA M2M/IoT Gateway. reducing the distance between embedded and enterprise technologies. Tiziano Modotti, October 28 th, 2014
KURA M2M/IoT Gateway reducing the distance between embedded and enterprise technologies Tiziano Modotti, October 28 th, 2014 IoT Architecture @ M2M/IoT Integration Platform on Cloud Business Applications
BlackBerry Enterprise Service 10. Version: 10.2. Configuration Guide
BlackBerry Enterprise Service 10 Version: 10.2 Configuration Guide Published: 2015-02-27 SWD-20150227164548686 Contents 1 Introduction...7 About this guide...8 What is BlackBerry Enterprise Service 10?...9
Monitor Your Home With the Raspberry Pi B+
Monitor Your Home With the Raspberry Pi B+ Created by Marc-Olivier Schwartz Last updated on 2015-02-12 03:30:13 PM EST Guide Contents Guide Contents Introduction Hardware & Software Requirements Hardware
An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0
An introduction to creating Web 2.0 applications in Rational Application Developer Version 8.0 September 2010 Copyright IBM Corporation 2010. 1 Overview Rational Application Developer, Version 8.0, contains
Elluminate Live! Access Guide. Page 1 of 7
This guide is provided to Elluminate Live! users to assist them to make a successful connection to an Elluminate Live! session through a proxy firewall. In some cases settings discussed in this document
How do I Install and Configure MS Remote Desktop for the Haas Terminal Server on my Mac?
How do I Install and Configure MS Remote Desktop for the Haas Terminal Server on my Mac? In order to connect remotely to a PC computer from your Mac, we recommend the MS Remote Desktop for Mac client.
M2M, IoT, DEVICE MANAGEMENT: ONE PROTOCOL TO RULE THEM ALL? Julien Vermillard, Sierra Wireless
M2M, IoT, DEVICE MANAGEMENT: ONE PROTOCOL TO RULE THEM ALL? Julien Vermillard, Sierra Wireless Software Engineer at Sierra Wireless, implementing various protocols for AirVantage cloud service. Apache
Building native mobile apps for Digital Factory
DIGITAL FACTORY 7.0 Building native mobile apps for Digital Factory Rooted in Open Source CMS, Jahia s Digital Industrialization paradigm is about streamlining Enterprise digital projects across channels
File S1: Supplementary Information of CloudDOE
File S1: Supplementary Information of CloudDOE Table of Contents 1. Prerequisites of CloudDOE... 2 2. An In-depth Discussion of Deploying a Hadoop Cloud... 2 Prerequisites of deployment... 2 Table S1.
DreamFactory & Modus Create Case Study
DreamFactory & Modus Create Case Study By Michael Schwartz Modus Create April 1, 2013 Introduction DreamFactory partnered with Modus Create to port and enhance an existing address book application created
Preinstallation Requirements Guide
Preinstallation Requirements Guide Synergy 3.4.9 June 2015 Synergy 2015 TOC 1: Introduction 4 Synergy platform modules 4 Synergy install procedure - your responsibilities 4 Further information about Synergy
Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT
Dynamic Web Programming BUILDING WEB APPLICATIONS USING ASP.NET, AJAX AND JAVASCRIPT AGENDA 1. Introduction to Web Applications and ASP.net 1.1 History of Web Development 1.2 Basic ASP.net processing (ASP
BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2. Feature and Technical Overview
BlackBerry Enterprise Server for Microsoft Exchange Version: 5.0 Service Pack: 2 Feature and Technical Overview Published: 2010-06-16 SWDT305802-1108946-0615123042-001 Contents 1 Overview: BlackBerry Enterprise
BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note
BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise
ARTICLE Cloud Computing more than a hype?
Author: Klaus Hübschle Created on: August 2015 Version: 1.0 Content Most IT experts predict a promising future for cloud computing also in the automation industry. However, which are the applications where
Accessing Data with ADOBE FLEX 4.6
Accessing Data with ADOBE FLEX 4.6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Accessing data services overview Data
QUICK INSTALLATION GUIDE ACTIVATE
ACTIVATE ACTIVATE ACTIVATE 1. Activate the business cloud A. Service Activation: You will receive a confirmation e-mail within 2 hours maximum BASE business Cloud: Notification/Notificatie B. Go to https://cdashboard.
Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server
Configuration Guide Configuring IBM HTTP Server as a Reverse Proxy Server for SAS 9.3 Web Applications Deployed on IBM WebSphere Application Server This document is revised for SAS 9.3. In previous versions
WISE-4000 Series. WISE IoT Wireless I/O Modules
WISE-4000 Series WISE IoT Wireless I/O Modules Bring Everything into World of the IoT WISE IoT Ethernet I/O Architecture Public Cloud App Big Data New WISE DNA Data Center Smart Configure File-based Cloud
ICE Trade Vault. Public User & Technology Guide June 6, 2014
ICE Trade Vault Public User & Technology Guide June 6, 2014 This material may not be reproduced or redistributed in whole or in part without the express, prior written consent of IntercontinentalExchange,
INUVIKA OPEN VIRTUAL DESKTOP FOUNDATION SERVER
INUVIKA OPEN VIRTUAL DESKTOP FOUNDATION SERVER ARCHITECTURE OVERVIEW AND SYSTEM REQUIREMENTS Mathieu SCHIRES Version: 1.0.0 Published March 5, 2015 http://www.inuvika.com Contents 1 Introduction 3 2 Architecture
Business Process Management with @enterprise
Business Process Management with @enterprise March 2014 Groiss Informatics GmbH 1 Introduction Process orientation enables modern organizations to focus on the valueadding core processes and increase
NetBeans IDE Field Guide
NetBeans IDE Field Guide Copyright 2005 Sun Microsystems, Inc. All rights reserved. Table of Contents Introduction to J2EE Development in NetBeans IDE...1 Configuring the IDE for J2EE Development...2 Getting
Toward a Distributed Data Flow Platform for the Web of Things
Toward a Distributed Data Flow Platform for the Web of Things Michael Blackstock Human Communication Technologies Laboratory University of British Columbia Vancouver, Canada [email protected] Rodger
Windows PCs & Servers are often the life-blood of your IT investment. Monitoring them is key, especially in today s 24 hour world!
+ Welcome to The Sentry-go Monitoring System v6 Monitoring made quick & easy! Be Proactive, Not Reactive! 3Ds (UK) Limited http://www.sentry-go.com Welcome to Sentry-go Sentry-go is a quick & easy to use
Sentinet for BizTalk Server SENTINET
Sentinet for BizTalk Server SENTINET Sentinet for BizTalk Server 1 Contents Introduction... 2 Sentinet Benefits... 3 SOA and APIs Repository... 4 Security... 4 Mediation and Virtualization... 5 Authentication
Sale Grammar School Remote Desktop Services User Instructions
Sale Grammar School Remote Desktop Services User Instructions Sale Grammar School Remote Desktop Services allows Staff and Students access to a virtual school computer while connected to the internet at
Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013
Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone
Alliance Key Manager A Solution Brief for Technical Implementers
KEY MANAGEMENT Alliance Key Manager A Solution Brief for Technical Implementers Abstract This paper is designed to help technical managers, product managers, and developers understand how Alliance Key
Adobe ColdFusion 11 Enterprise Edition
Adobe ColdFusion 11 Enterprise Edition Version Comparison Adobe ColdFusion 11 Enterprise Edition Adobe ColdFusion 11 Enterprise Edition is an all-in-one application server that offers you a single platform
Enterprise Manager. Version 6.2. Installation Guide
Enterprise Manager Version 6.2 Installation Guide Enterprise Manager 6.2 Installation Guide Document Number 680-028-014 Revision Date Description A August 2012 Initial release to support version 6.2.1
Media Server Installation & Administration Guide
Media Server Installation & Administration Guide Smarter Surveillance for a Safer World On-Net Surveillance Systems, Inc. One Blue Hill Plaza, 7 th Floor, PO Box 1555 Pearl River, NY 10965 Phone: (845)
FileMaker Server 13. FileMaker Server Help
FileMaker Server 13 FileMaker Server Help 2010-2013 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and Bento are trademarks of FileMaker,
Home Automation Based on an Android and a Web Application Using Raspberry Pi
American Journal of Mobile Systems, Applications and Services Vol. 1, No. 3, 2015, pp. 174-181 http://www.aiscience.org/journal/ajmsas Home Automation Based on an Android and a Web Application Using Raspberry
Sharp Remote Device Manager (SRDM) Server Software Setup Guide
Sharp Remote Device Manager (SRDM) Server Software Setup Guide This Guide explains how to install the software which is required in order to use Sharp Remote Device Manager (SRDM). SRDM is a web-based
AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev
International Journal "Information Technologies & Knowledge" Vol.5 / 2011 319 AUTOMATED CONFERENCE CD-ROM BUILDER AN OPEN SOURCE APPROACH Stefan Karastanev Abstract: This paper presents a new approach
Setting Up a Unisphere Management Station for the VNX Series P/N 300-011-796 Revision A01 January 5, 2010
Setting Up a Unisphere Management Station for the VNX Series P/N 300-011-796 Revision A01 January 5, 2010 This document describes the different types of Unisphere management stations and tells how to install
Setting Up Resources in VMware Identity Manager
Setting Up Resources in VMware Identity Manager VMware Identity Manager 2.4 This document supports the version of each product listed and supports all subsequent versions until the document is replaced
Release Notes. SonicOS 6.1.2.0 is the initial release for the Dell SonicWALL NSA 2600 network security appliance.
SonicOS SonicOS Contents Release Purpose... 1 Platform Compatibility... 1 Upgrading Information... 1 Browser Support... 1 Feature Information... 2 Known Issues... 2 Resolved Issues... 4 Release Purpose
Ekran System Help File
Ekran System Help File Table of Contents About... 9 What s New... 10 System Requirements... 11 Updating Ekran to version 4.1... 13 Program Structure... 14 Getting Started... 15 Deployment Process... 15
2X Cloud Portal v10.5
2X Cloud Portal v10.5 URL: www.2x.com E-mail: [email protected] Information in this document is subject to change without notice. Companies, names, and data used in examples herein are fictitious unless otherwise
LabVIEW Internet Toolkit User Guide
LabVIEW Internet Toolkit User Guide Version 6.0 Contents The LabVIEW Internet Toolkit provides you with the ability to incorporate Internet capabilities into VIs. You can use LabVIEW to work with XML documents,
owncloud Architecture Overview
owncloud Architecture Overview owncloud, Inc. 57 Bedford Street, Suite 102 Lexington, MA 02420 United States phone: +1 (877) 394-2030 www.owncloud.com/contact owncloud GmbH Schloßäckerstraße 26a 90443
VMware Software Manager - Download Service User's Guide
VMware Software Manager - Download Service User's Guide VMware Software Manager 1.1 This document supports the version of each product listed and supports all subsequent versions until the document is
Building A Self-Hosted WebRTC Project
Building A Self-Hosted WebRTC Project Rod Apeldoorn EasyRTC Server Lead Priologic Software Inc. [email protected] Slides will be available at: http://easyrtc.com/cloudexpo/ A Little About Priologic
FileMaker Server 12. Getting Started Guide
FileMaker Server 12 Getting Started Guide 2007 2012 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and Bento are trademarks of FileMaker,
Design for Success: Designing for the Internet of Things with TiWiConnect
Design for Success: Designing for the Internet of Things with TiWiConnect Today s presenters Scott Lederer Senior Software Architect Dave Burleton Vice President of Marketing LSR.com Today s Agenda Why
MD Link Integration. 2013 2015 MDI Solutions Limited
MD Link Integration 2013 2015 MDI Solutions Limited Table of Contents THE MD LINK INTEGRATION STRATEGY...3 JAVA TECHNOLOGY FOR PORTABILITY, COMPATIBILITY AND SECURITY...3 LEVERAGE XML TECHNOLOGY FOR INDUSTRY
QAS Pro Web Getting Started Guide Browser Typedown
Browser Typedown 1. Introduction This guide is intended to walk a Developer or Project Manager through the process of integrating the Browser Typedown implementation of QAS Pro Web into their browser-based
tibbr Now, the Information Finds You.
tibbr Now, the Information Finds You. - tibbr Integration 1 tibbr Integration: Get More from Your Existing Enterprise Systems and Improve Business Process tibbr empowers IT to integrate the enterprise
MALAYSIAN PUBLIC SECTOR OPEN SOURCE SOFTWARE (OSS) PROGRAMME. COMPARISON REPORT ON NETWORK MONITORING SYSTEMS (Nagios and Zabbix)
MALAYSIAN PUBLIC SECTOR OPEN SOURCE SOFTWARE (OSS) PROGRAMME COMPARISON REPORT ON NETWORK MONITORING SYSTEMS (Nagios and Zabbix) JANUARY 2010 Phase II -Network Monitoring System- Copyright The government
FileMaker Server 14. FileMaker Server Help
FileMaker Server 14 FileMaker Server Help 2007 2015 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and FileMaker Go are trademarks
MultiValue Dashboard. Installation Guide
MultiValue Dashboard Installation Guide Introduction to MultiValue Dashboard MultiValue Dashboard is a dynamic Web-based development tool for the creation of desktop widgets utilizing your knowledge of
The fabryq IoT prototyping platform
The fabryq IoT prototyping platform Will McGrath PhD Student Advised by Björn Hartmann Motivation Fitness Tracker Embedded Gateway Cloud Embedded Low Power device with sensors Short range wireless Gateway
FileMaker Server 13. Getting Started Guide
FileMaker Server 13 Getting Started Guide 2007 2013 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker and Bento are trademarks of FileMaker,
