MoSIG/ACS

Homeworks of the ACS module (MoSIG Master)

=WSDL= Inspect the Web service
 * http://www.webservicex.net/New/
 * http://www.webservicex.net/New/Home/ServiceDetail/56
 * http://www.webservicex.net/globalweather.asmx/GetCitiesByCountry
 * http://www.webservicex.net/globalweather.asmx?WSDL

=UPnP=

Kody Media Server
Install Kody Media Server https://kodi.tv/ (and activate DLNA/UPnP)

UPnP inspect
Discover UPnP devices and associated services with Node UPnP Client https://www.npmjs.com/package/node-upnp-client

Edit and save upnp-sniffer.js

var upnpClient = require('node-upnp-client'); var cli = new upnpClient;

//start search

cli.searchDevices;

// listen for search terminated

cli.on('searchDevicesEnd', function {	console.log('Servers'+ JSON.stringify(cli._servers)) });

// listen for added / removed devices

cli.on('updateUpnpDevice', function {	console.log('Servers'+ JSON.stringify(cli._servers)) });

node install node-upnp-client node upnp-sniffer.js

UPnP node for Node-RED
Design a UPnP node for Node-RED platform

Choose the configurable properties

Choose the payload

Implement it (optional)

Try it (optional)

Contribute it (optional)

=OSGi=


 * http://www.openhab.org/getting-started/downloads.html


 * http://felix.apache.org/downloads.cgi


 * http://karaf.apache.org/download.html


 * https://maven.apache.org/download.cgi

Install and test Felix
Download the latest distribution of Felix

unzip org.apache.felix.main.distribution-5.6.1.zip cd felix-framework-5.6.1/ java -jar bin/felix.jar

help lb stop 1 lb help

start 1 lb help

What's happen ?

Install and test OpenHAB

 * Install and run Eclipse Smarthome demo https://www.eclipse.org/smarthome
 * Launch the OSGi console
 * Inspect bundles
 * Inspect services
 * Listen to events (Event Admin)

Install and test Glassfish
wget http://download.java.net/glassfish/4.1.1/release/glassfish-4.1.1.zip unzip glassfish-4.1.1*zip cd glassfish4 ./bin/asadmin start-domain

Browse http://localhost:4848

Enable Gogo shell through telnet ./bin/asadmin create-jvm-options --target server -Dglassfish.osgi.start.level.final=3 ./bin/asadmin restart-domain

Edit the Felix config file vi glassfish/osgi/felix/conf/config.properties

TBC

telnet localhost 6666

Getting started
=iPOJO=

Follow the tutorial http://felix.apache.org/documentation/subprojects/apache-felix-ipojo/apache-felix-ipojo-gettingstarted/ipojo-hello-word-maven-based-tutorial.html

Source code : http://repo1.maven.org/maven2/org/apache/felix/org.apache.felix.ipojo.distribution.maventutorial/1.12.1/org.apache.felix.ipojo.distribution.maventutorial-1.12.1.zip

=UPnP and OSGi=

Build UPnP samples
git clone https://github.com/apache/felix.git cd felix cd upnp mvn clean install cd samples ls -al

Deployment
unzip org.apache.felix.main.distribution-5.6.1.zip cd felix-framework-5.6.1/ java -jar bin/felix.jar

First commands help lb inspect capability service 1 inspect requirement service 1

inspect capability service 0 inspect requirement service 0

help log log info

Deployement with OBR: OBR is an OSGi service for automate the déployment of a bundle and its (explicit) dependencies. Bundles are downloaded, installed and started from repositories indexed in this document http://felix.apache.org/obr/releases.xml obr:list obr:info "Apache Felix UPnP Base Driver" obr:deploy -s "Apache Felix UPnP Base Driver" lb

How many bundles has been deployed by OBR ?

Uninstall the installed bundles with the command uninstall (argument is the bundle id/number).

Remark: Change /Users/donsez with your home directory echo $HOME. start file:/Users/donsez/.m2/repository/org/apache/felix/org.apache.felix.upnp.sample.binaryLight/0.2.0-SNAPSHOT/org.apache.felix.upnp.sample.binaryLight-0.2.0-SNAPSHOT.jar start file:/Users/donsez/.m2/repository/org/apache/felix/org.apache.felix.upnp.sample.clock/0.2.0-SNAPSHOT/org.apache.felix.upnp.sample.clock-0.2.0-SNAPSHOT.jar start file:/Users/donsez/.m2/repository/org/apache/felix/org.apache.felix.upnp.sample.tv/0.2.0-SNAPSHOT/org.apache.felix.upnp.sample.tv-0.2.0-SNAPSHOT.jar

What's happen ?

obr:list help obr:deploy obr:deploy "Servlet 2.1 API" obr:deploy "Apache Felix UPnP Extra" obr:deploy -s "Apache Felix UPnP Base Driver" obr:deploy -s "Apache Felix UPnP Tester" lb

start 6 start 7 start 8 lb

What's happen ?