Life Made Easy With Home Automation For Me and a Smarter Planet. www.nexahome.se 2011-05-16



Relevanta dokument
Michael Q. Jones & Matt B. Pedersen University of Nevada Las Vegas

Swedbank Mobile Loadtesting. LoadRunner Mobile App protocol

Översättning av galleriet. Hjälp till den som vill...

Support Manual HoistLocatel Electronic Locks

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

Föreläsning 4 IS1300 Inbyggda system

Datasäkerhet och integritet

Isolda Purchase - EDI


Annonsformat desktop. Startsida / områdesstartsidor. Artikel/nyhets-sidor. 1. Toppbanner, format 1050x180 pxl. Format 1060x180 px + 250x240 pxl.

electiaprotect GSM SEQURITY SYSTEM Vesta EZ Home Application SMART SECURITY SYSTEMS! SVENSKA ios Android

Quick Start Guide Snabbguide

Beijer Electronics AB 2000, MA00336A,

Wi-Fi travel router for ipad and mobile devices

Vad kännetecknar en god klass. Vad kännetecknar en god klass. F12 Nested & Inner Classes

Sparbankerna PDF. ==>Download: Sparbankerna PDF ebook By 0

Hur man skyddar sig på internet

Problem som kan uppkomma vid registrering av ansökan

InstalationGuide. English. MODEL:150NHighGain/30NMiniUSBAdapter

LARS. Ett e-bokningssystem för skoldatorer.

Nya möjligheter med M3 Technology. Björn Svensson, Björn Torold

Styrteknik 7.5 hp distans: E-1000 och E-Designer

Taking Flight! Migrating to SAS 9.2!

JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?

Mobile Cross Development

2.1 Installation of driver using Internet Installation of driver from disk... 3

Creo Customization. Lars Björs

Examensarbete Introduk)on - Slutsatser Anne Håkansson annehak@kth.se Studierektor Examensarbeten ICT-skolan, KTH

Testramverk och Model based testing med java i praktiken

Reguljära uttryck. Reguljära uttryck. Nu kommer en siffra78 och en till SIFFRA(78) men utan 7kstuga SIFFRA(89)

Webbregistrering pa kurs och termin

Webbreg öppen: 26/ /

A metadata registry for Japanese construction field

Introduktion till programmering SMD180. Föreläsning 1: Programmets väg

Styrteknik: Binära tal, talsystem och koder D3:1

Recitation 4. 2-D arrays. Exceptions

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

DVG C01 TENTAMEN I PROGRAMSPRÅK PROGRAMMING LANGUAGES EXAMINATION :15-13: 15

This work by. Fredrik Wendt. is licensed under a. Creative Commons

Stad + Data = Makt. Kart/GIS-dag SamGIS Skåne 6 december 2017

Översikt 732G11 PROGRAMMERING 1. Personal. Kursens mål. Litteratur. Kursens innehåll

Välkommen in på min hemsida. Som företagsnamnet antyder så sysslar jag med teknisk design och konstruktion i 3D cad.

BREDBAND MBIT REGISTRERA DIG IDAG. Din guide till Karlshamnsporten

RADIATION TEST REPORT. GAMMA: 30.45k, 59.05k, 118.8k/TM1019 Condition D

Fakulteten för ekonomi, kommunikation och IT. Corba. Datum: Mathias Andersson

Viktig information för transmittrar med option /A1 Gold-Plated Diaphragm

REGISTRERA DIG IDAG Din guide till Ronnebyporten

2.45GHz CF Card Reader User Manual. Version /09/15

Schenker Privpak AB Telefon VAT Nr. SE Schenker ABs ansvarsbestämmelser, identiska med Box 905 Faxnr Säte: Borås

VAD SKULLE DU HA VALT PDF

Urban Runoff in Denser Environments. Tom Richman, ASLA, AICP

Information technology Open Document Format for Office Applications (OpenDocument) v1.0 (ISO/IEC 26300:2006, IDT) SWEDISH STANDARDS INSTITUTE

Chapter 4: Writing Classes/ Att skriva egna klasser.

SOA One Year Later and With a Business Perspective. BEA Education VNUG 2006

Workplan Food. Spring term 2016 Year 7. Name:

MBIT BREDBAND VI ÄGS AV INVÅNARNA I KARLSHAMN REGISTRERA DIG IDAG. Din lokala elleverantör. Starka på hemmaplan. Din guide till Karlshamnsporten

Vässa kraven och förbättra samarbetet med hjälp av Behaviour Driven Development Anna Fallqvist Eriksson

Lösenordsportalen Hosted by UNIT4 For instructions in English, see further down in this document

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

SAS VIYA JOHAN ELFMAN ROLAND BALI

EDA095 HTML. Per Andersson. April 26, Lund University Innehåll: HTML, CSS, DOM, JavaScript

Användarhandbok. MHL to HDMI Adapter IM750

Syns du, finns du? Examensarbete 15 hp kandidatnivå Medie- och kommunikationsvetenskap

SOLAR LIGHT SOLUTION. Giving you the advantages of sunshine. Ningbo Green Light Energy Technology Co., Ltd.

Make a speech. How to make the perfect speech. söndag 6 oktober 13

Föreläsning 3. Stack

INSTALLATION INSTRUCTIONS

12.6 Heat equation, Wave equation

Windows 8 och det nya arbetslivet. Magnus Holmér IT strategisk rådgivare

Denna vecka. Idag. Grafiskt användarsnitt. Vi kommer att se

JAG AR INTE GALEN PDF

Kulturarw 3 SVENSKA WEBBEN BEVARANDE & TILLGÄNGLIGGÖRANDE #FAI2016

Preschool Kindergarten

LULEÅ TEKNISKA UNIVERSITET

Mobila applikationer och trådlösa nät

l uppgiftsformulering l algoritmkonstruktion l verifikation l kodning l testning och avlusning l validering l dokumentering l underhœll Kapitel 2

Get Instant Access to ebook Ta Betalt PDF at Our Huge Library TA BETALT PDF. ==> Download: TA BETALT PDF

Ett hållbart boende A sustainable living. Mikael Hassel. Handledare/ Supervisor. Examiner. Katarina Lundeberg/Fredric Benesch

Day 1: European Cooperation Day 2017

WhatsApp finns för dessa plattformar:

Övning 1: Skapa virtuell maskin för utveckling.

SERVERLESS ARCHITECTURE. är det nya svarta. CADEC 2017 Peter Larsson

Invest Living Smart controller M

Consumer attitudes regarding durability and labelling

Lights in Alingsås Nordens största workshop inom ljussättning i offentlig miljö.

SI-pass 4. Johan Brook och Jesper Persson. 25 september Diskutera och svara på om påståendena nedan är äkta sanningar eller listiga lögner.

How to format the different elements of a page in the CMS :

Övning 5 ETS052 Datorkommuniktion Routing och Networking

F1 SBS EC Utbildning AB

What Is Hyper-Threading and How Does It Improve Performance

Om oss DET PERFEKTA KOMPLEMENTET THE PERFECT COMPLETION 04 EN BINZ ÄR PRECIS SÅ BRA SOM DU FÖRVÄNTAR DIG A BINZ IS JUST AS GOOD AS YOU THINK 05

Materialplanering och styrning på grundnivå. 7,5 högskolepoäng

English Svenska. Installation. Guide. XG6846 Broadband Switch

xperia p manual svenska

Introduk+on +ll programmering i JavaScript

Exemple på Tentauppgifter Webbprogrammering

1. Varje bevissteg ska motiveras formellt (informella bevis ger 0 poang)

Transkript:

Life Made Easy With Home Automation For Me and a Smarter Planet www.nexahome.se 2011-05-16

Vad är NexaHome? Programvara för styrning av fjärrströmbrytare. Kompatibla fabrikat: Nexa, Proove, Sartano, Waveman www.nexa.se www.jula.se

Vilken hårdvara behövs i datorn? USB ansluten radiosändare, 433.92 MHz. www.telldus.se www.kjell.com

Vad är fördelen med en datorlösning jämfört med vanliga tidur i vägguttagen? Slipper gå runt och justera tiduren beroende på årstidernas växlingar. Bekvämt med överskådlig central administration av belysningsschemat. Brottsförebyggande: huset ser bebott ut kan koppla in webkameror och med hjälp av dessa hålla koll på besökande Kunna sätta på motorvärmaren redan då man är påväg hem efter jobbet och ska ut på en åktur med bilen.

Programfunktioner 1(2) Schemaläggning, på/av för enheter som har definierats med hjälp av programvaran TelldusCenter. Kan köras under olika moder (Hemma, Party, Borta osv). Slumpmässig justering av angivna tider. Klockslag kan anges i förhållande till solens upp & nedgång. Yttre sensorer kan användas för att bestämma när det är dags att slå på/av enheter (temperatur, solinstrålning W/m²). Möjligt att skapa sin egen hemsida med egendefinierad navigering och valfri bakgrund samt klickbara bilder.

Programfunktioner 2(2) Manuell styrning via internet med hjälp av webläsare i dator eller mobiltelefon (WAP/HTML, Android). Två applikationer på Android Market kopplar upp sig mot den inbyggda webservern: NexaHome - Web Browser NexaHome - Big Brother TvGuide är ytterligare en applikation som kan använda sig av NexaHome för att tända/släcka lampor. På så sätt kan man uppmärksammas på att ett sevärt tv-program snart börjar. http://skapandedata.se/tvguide/

Hur ser programmet ut när det körs?

Default websida: WAP/HTML

Egendefinierad websida

Programutveckling pågår...

Android apps: Web Browser styr fjärrmottagare Big Brother närvarokontroll

FAQ (frequently Asked Questions) 1(2)

FAQ (frequently Asked Questions) 2(2)

Motorvärmarfunktion 1(3) Tanken med motorvärmarfunktionen är att man ska slippa fundera på hur lång tid i förväg motorvärmaren ska slås på. Programmet använder sig av yttertemperaturen samt en formel för att beräkna rätt tidpunkt. Användaren talar bara om när han har tänkt att åka iväg och hur länge bilen ska hållas varm.

Motorvärmarfunktion 2(3) Devices/Groups Function sensor - Max HH 03 Max MM 00 Sensor Default -5 ON Sensor Formula < -20 # 02:00, < -15 # 01:30, < -10 # 01:20, < -5 # 01:10, < 0 # 01:00, < 5 # 00:45, < 10 # 00:20, >= 10 # 00:00 Sensor Path C:\apps\nexahome\weather_msn.bat http://nexahome.se/weather_msn.bat http://nexahome.se/weatherdatamsn.class http://nexahome.se/weatherdatamsn.java

Motorvärmarfunktion 3(3) Bor man i Stockholm så är weather_msn.bat som finns på programmets hemsida redan färdig att användas. Om man bor på någon annan ort så är det enklaste sättet att ta reda på just "din" parameter att utföra följande: 1) klistra in parametern för Stockholm i din webläsare http://vader.se.msn.com/local.aspx?wealocations=wc:swxx0031&q=stockholm 2) sök på websidan efter din egen ort 3) kopiera den uppdaterade länken från websidan 4) lägg in den nya parametern i bat filen (mellan dubbelfnuttarna) Exempel, om man bor i Lund ska följande parameter användas: http://vader.se.msn.com/local.aspx?wealocations=wc:19469&q=lund%2c+sk%c3%a5ne Om inte programmet lyckas gå ut på Internet och hämta den aktuella temperaturen så används ett fördefinierat temperaturvärde som användaren själv har angivit. Man bör även ange en maximal inkopplingstid.

Under vilka operativsystem kan NexaHome köras? Java applications are typically compiled to bytecode (class file) that can run on any Java Virtual Machine (JVM) regardless of computer architecture. http://en.wikipedia.org/wiki/java_(programming_language) http://java.com

Installationsanvisning http://nexahome.se/manual/

Teknikfrågor Vilka programpaket (lib) används förutom det som medföljer i standard java, samt av vilken anledning: Java Native Access (JNA) http://jna.java.net BeanShell - Lightweight Scripting for Java http://www.beanshell.org

What is JNA? JNA provides Java programs easy access to native shared libraries (DLLs on Windows) without writing anything but Java code no JNI or native code is required. This functionality is comparable to Windows' Platform/Invoke and Python's ctypes. Access is dynamic at runtime without code generation. JNA allows you to call directly into native functions using natural Java method invocation. The Java call looks just like it does in native code. Most calls require no special handling or configuration; no boilerplate or generated code is required. The JNA library uses a small native library stub to dynamically invoke native code. The developer uses a Java interface to describe functions and structures in the target native library. This makes it quite easy to take advantage of native platform features without incurring the high overhead of configuring and building JNI code for multiple platforms. While some attention is paid to performance, correctness and ease of use take priority. JNA includes a platform library with many native functions already mapped as well as a set of utility interfaces that simplify native access.

import com.sun.jna.library; import com.sun.jna.native; public class JnaDemo { public static String library = null; public interface CLibrary extends Library { CLibrary INSTANCE = (CLibrary)Native.loadLibrary((library), CLibrary.class); } boolean devturnon(int intdeviceid); boolean devturnoff(int intdeviceid); public static void main(string[] args) { System.setProperty("jna.library.path", args[0]); String dll = args[1]; if (dll.tolowercase().endswith(".dll")) { dll = dll.substring(0, dll.length() - 4); } JnaDemo.library = dll; boolean cmdon = args[2].equalsignorecase("-on"); int id = Integer.parseInt(args[3]); boolean result = false; if (cmdon) { System.out.print("Turning on device: "); result = CLibrary.INSTANCE.devTurnOn(id); } else { System.out.print("Turning off device: "); result = CLibrary.INSTANCE.devTurnOff(id); } System.out.println(id + " - " + (result? "ok" : "failed")); } }

What is BeanShell? BeanShell is a small, free, embeddable Java source interpreter with object scripting language features, written in Java. BeanShell dynamically executes standard Java syntax and extends it with common scripting conveniences such as loose types, commands, and method closures like those in Perl and JavaScript. You can use BeanShell interactively for Java experimentation and debugging as well as to extend your applications in new ways. Scripting Java lends itself to a wide variety of applications including rapid prototyping, user scripting extension, rules engines, configuration, testing, dynamic deployment, embedded systems, and even Java education. BeanShell is small and embeddable, so you can call BeanShell from your Java applications to execute Java code dynamically at run-time or to provide extensibility in your applications. Alternatively, you can use standalone BeanShell scripts to manipulate Java applications; working with Java objects and APIs dynamically. Since BeanShell is written in Java and runs in the same VM as your application, you can freely pass references to "live" objects into scripts and return them as results. In short, BeanShell is dynamically interpreted Java, plus a scripting language and flexible environment all rolled into one clean package.

usr = put userid here"; psw = put password here"; timeout = 4 * 60; // 4 minutes addclasspath("c:/apps/nexahome/bshaddon.jar"); // set location for the BshAddOn code page = BshAddOn.fetchWebContent("https://mail.google.com/mail/feed/atom", usr, psw); if (page!= null && page.indexof("<fullcount>")!= -1) { if (page.indexof("<fullcount>0</fullcount>")!= -1) { echo("sorry, no unread mail found..."); hideoutput(); // prevent output to be visible on console if (deviceison("5")) { deviceoff("5"); } } else { echo("you've got mail!"); if (!deviceison("5")) { deviceon("5"); } else { timeout *= 3; // 12 minutes } } } else { echo("unable to check the gmail account!"); } starttimer("gmail", timeout);

Programutveckling Download the Android SDK http://developer.android.com/sdk/index.html Android Development Tools is a plugin for the Eclipse IDE http://developer.android.com/sdk/eclipse-adt.html Developing Android Applications, Workshop One http://www.youtube.com/watch?v=m-c-qpgr2pm Learn how to develop for Android, Beyond HelloWorld http://www.youtube.com/watch?v=rm-hnltd1h0

Hur ser det ut på Android Market? https://play.google.com

Vad kostar programmet? Gratis, dvs fritt nerladdningsbart från hemsidan! http://nexahome.se

Extra slides... Ny hårdvara från Telldus Datoransluten nummerpresentatör Motion Detector TvGuide

Ny hårdvara, sommaren 2011 www.telldus.se www.kjell.com

Produktjämförelse TellStick TellStick Duo TellStick Net Control almost any remote socket receiver Control from anywhere in the world Compatible with Android and Apple smartphones Schedule your appliances Compatible with routers from Dovado Compatible with any router Receive signals Works without a computer running Possible to develop your own application

1(7) Datoransluten nummerpresentatör Hårdvara: CallerID - NIM / Modem Display Dator / Squeezebox / Roku SoundBridge Programvara: WhosCalling NexaHome nim.se http://www.conrad.se/?article=955662 www.hasselaar.nu/projects

2(7) Datoransluten nummerpresentatör Squeezebox http://en.wikipedia.org/wiki/squeezebox_(network_music_player)

3(7) Datoransluten nummerpresentatör Roku SoundBridge http://en.wikipedia.org/wiki/soundbridge

4(7) Datoransluten nummerpresentatör WhosCalling, lookup callers from the following sources: Looks up the number by searching web directories: hitta.se eniro.se Telemarketing - Uses missatsamtal.se to identify telemarketing calls (which it can optionally block) File - Looks up phone numbers in a simple XML file Guessing (!) - For some numbers that originates from a company's switchboard only the main switchboard number is listed in the directories so if we don't get a match from Hitta or Eniro we'll keep replacing digits in the phone number with zeroes from right to left which often eventually yields the name of the company.

5(7) Datoransluten nummerpresentatör WhosCalling, plugins: TrayIconPlugin SqueezeboxPlugin RokuPlugin NexaHomePlugin Display caller ID information on a web page CallBlockerPlugin Uses a modem to automatically disconnect callers that have been identified as telemarketing companies or configured explicitly in the property file.

6(7) Datoransluten nummerpresentatör WhosCalling, nexahome.properties enabled=true # Where to store the caller ID information filename=c:/apps/nexahome/mywebserver/phone/data.html # see http://java.sun.com/j2se/1.5.0/docs/api/java/text/simpledateformat.html#simpledateformat(java.lang.string) for details dateformat=eee d HH:mm messageline=%timestamp% - %CALLER% %NUMBER% %BLOCKED% # Welcome message welcomemsg=whoscalling

7(7) Datoransluten nummerpresentatör NexaHome, C:/apps/nexahome/mywebserver/phone.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head><title>nexahome - Life Made Easy With Home Automation</title> <link rel="shortcut Icon" href="http://hem.bredband.net/hekj/nexahome/favicon32x32.ico"> <meta http-equiv="refresh" content="300;#url#?mypage=phone&psw=#psw#"> </head> <!-- dynamic="phone" url="file:///c:/apps/nexahome/mywebserver/phone/data.html" keep="60" --> <body bgcolor="#ffffff" background="/nexahome/nexahome_bg.jpg"> <div style="position: absolute; top: 5px; left: 25px;"> <form action="nexahome" method="get"> <input type=hidden name="mypage" value="phone"> <input type=hidden name="return" value="phone"> <input type=hidden name="psw" value="#psw#"> <input type=hidden name="rnd" value="#rnd#"> <input type=submit value="#timestamp#"> </form> </div> <div style="position: absolute; top: 5px; left: 195px;"> <form action="nexahome" method="get"> <input type=hidden name="mypage" value="#return#"> <input type=hidden name="psw" value="#psw#"> <input type=hidden name="rnd" value="#rnd#"> <input type=submit value="gå tillbaka"> </form> </div> <div style="position: absolute; top: 45px; left: 25px"><b> #DYNAMIC#phone# </b></div> </body> </html>

Motion Detector Principerna för hur man upptäcker rörelse i en video. Programutveckling pågår, Motion Detector funktioner kommer att läggas in i NexaHome.