KNX IP BAOS 771 / 772 / 777



Similar documents
MATCHDAY September 2014

Academic Calendar for Faculty

International University of Monaco 27/04/ :55 - Page 1. Monday 30/04 Tuesday 01/05 Wednesday 02/05 Thursday 03/05 Friday 04/05 Saturday 05/05

International University of Monaco 21/05/ :01 - Page 1. Monday 30/04 Tuesday 01/05 Wednesday 02/05 Thursday 03/05 Friday 04/05 Saturday 05/05

WebNMS Go SNMP API. Help Documentation. Created: Monday, March 16, Copyright Zoho Corp.. All Rights Reserved.

Cluster APIs. Cluster APIs

Trading Calendar - East Capital UCITS Funds

SMTP-32 Library. Simple Mail Transfer Protocol Dynamic Link Library for Microsoft Windows. Version 5.2

Technical Support Bulletin Nr.18 Modbus Tips

Documentation to use the Elia Infeed web services

The Answer to the 14 Most Frequently Asked Modbus Questions

WebEx Integration to Outlook. User Guide

IntesisBox KNX Modbus TCP master

Passcreator API Documentation

SPARROW Gateway. Developer API. Version 2.00

International University of Monaco 11/06/ :27 - Page 1. Monday 30/04 Tuesday 01/05 Wednesday 02/05 Thursday 03/05 Friday 04/05 Saturday 05/05

Using the VMRC Plug-In: Startup, Invoking Methods, and Shutdown on page 4

Riverbed Cascade Shark Common REST API v1.0

Interworking. KNX Association

HP Service Virtualization

IoT-Ticket.com. Your Ticket to the Internet of Things and beyond. IoT API

07/04/2014 NOBIL API. Version 3.0. Skåland Webservice Side 1 / 16

Magento Dhru Fusion Integration Extension. IMEI Profile Configuration

ModBus Server - KNX. Gateway for integration of KNX equipment into Modbus (RTU and TCP) control systems.

GSM. Quectel Cellular Engine. GSM TCPIP Application Notes GSM_TCPIP_AN_V1.1

ODBC Client Driver Help Kepware, Inc.

Cisco Unity Express 8.5 Voic System User s Guide for Advanced Features

Pemrograman Dasar. Basic Elements Of Java

DataLogger Kepware, Inc.

International University of Monaco 12/04/ :50 - Page 1. Monday 30/01 Tuesday 31/01 Wednesday 01/02 Thursday 02/02 Friday 03/02 Saturday 04/02

iglobe CRM SharePoint App Documentation Version Thursday, January 30, 2014 Support contact iglobe:

Lecture 9 Chrome Extensions

µtasker Document FTP Client

No. SIM-KNX is powered from KNX. So it needs the connection to KNX to work.

php-crypto-params Documentation

Bitcoin Payment Gateway API

Cloud Elements! Marketing Hub Provisioning and Usage Guide!

Spring Design ScreenShare Service SDK Instructions

Micro800 Programmable Controllers: Getting Started with CIP Client Messaging

FORT LAUDERDALE INTERNATIONAL BOAT SHOW BAHIA MAR IN-WATER SET-UP SCHEDULE

REST Webservices API Tutorial

HOMEWORKS. RS-232 Protocol. Data Protocol for Communicating with Lutron's HOMEWORKS System

WhatsUpGold. v12. Database Schema

REST Webservices API Reference Manual

Urchin Demo (12/14/05)

.OR.AT.ATTORNEY.AUCTION.BARGAINS.BAYERN.BERLIN.BLACKFRIDAY.BOUTIQUE.BRUSSELS.BUILDERS

Storing Measurement Data

FINAL SCHEDULE YEAR 1 AUGUST WEEK 1

Virtual PBX Planning Instructions

How to Configure the Workflow Service and Design the Workflow Process Templates

API documentation - 1 -

Tebis application software

IDDERO HCx-KNX TOUCH PANELS. User Guide

UG102 EMBER APPLICATION FRAMEWORK DEVELOPER GUIDE

IntesisBox KNX Modbus RTU master

CANnes PC CAN Interface Manual

Programming Against Hybrid Databases with Java Handling SQL and NoSQL. Brian Hughes IBM

Flexible Engineering Process Automation Process: Continuous Integration & Test

How To Configure A Network Monitor Probe On A Network Wire On A Microsoft Ipv6 (Networking) Device (Netware) On A Pc Or Ipv4 (Network) On An Ipv2 (Netnet) Or Ip

How To Understand The Error Codes On A Crystal Reports Print Engine

Nuance Mobile Developer Program. HTTP Services for Nuance Mobile Developer Program Clients

ANDROID APPS DEVELOPMENT FOR MOBILE GAME

CIA405.lib. Contents. WAGO-I/O-PRO 32 Library

Maintaining the Central Management System Database

PingFederate. Windows Live Cloud Identity Connector. User Guide. Version 1.0

JAVAMAIL API - SMTP SERVERS

CS 326e F2002 Lab 1. Basic Network Setup & Ethereal Time: 2 hrs

Engagement Analytics Configuration Reference Guide

Service for checking whether an is operative or not. Validate ids in your databases.

District 4 Deployment Report

xstation API Communication Protocol Documentation v. 2.2

X-ROAD 6 SIGNER CONSOLE USER GUIDE

GSM. Quectel Cellular Engine. HTTP Service AT Commands GSM_HTTP_ATC_V1.2

MONETA.Assistant API Reference

DNP Master Ethernet Driver Help Kepware Technologies

ICC. NetLink Version Info INDUSTRIAL CONTROL COMMUNICATIONS, INC.

Hands-On Lab. Client Workflow. Lab version: Last updated: 2/23/2011

RMCS Installation Guide

Abstract. Description

Installation and Administration Guide

Still Aren't Doing. Frank Kim

iridium for Weinzierl KNX IP BAOS

Export of audit trail events from Salto software. Version 2.0

FAQs. This material is built based on. Lambda Architecture. Scaling with a queue. 8/27/2015 Sangmi Pallickara

Section 29. Real-Time Clock and Calendar (RTCC)

HwDevComm.dll User Manual

General principles and architecture of Adlib and Adlib API. Petra Otten Manager Customer Support

AN833. The Microchip TCP/IP Stack INTRODUCTION STACK ARCHITECTURE REFERENCE MODEL

MASTERTAG DEVELOPER GUIDE

Automating SQL Injection Exploits

Fairsail REST API: Guide for Developers

Specific API Usage Limitations... 6 Daily Limitation... 6 Concurrency Limitation API Description... 7 Site Data API... 7

Bob's Place Media Engineering's ISY Insteon Plug-in User Guide Version 4.0

MORAY HOUSE SCHOOL OF EDUCATION ADDITIONAL SUPPORT FOR LEARNING & INCLUSIVE AND SPECIAL EDUCATION COURSES

Merchant Implementation Guide

Chapter 46 Terminal Server

Advanced Web Development SCOPE OF WEB DEVELOPMENT INDUSTRY

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

Programming Autodesk PLM 360 Using REST. Doug Redmond Software Engineer, Autodesk

Transcription:

KNX IP BAOS 771 / 772 / 777 Web Services Note: The KNX IP BAOS 777 supports in addition RESTful web services which are specified in a separate document. DE-84508 Burgkirchen E-Mail: info@weinzierl.de Web: www.weinzierl.de 2013-08-16 Seite 1/47

Index 1 Web-Services... 5 1.1 GetServerItem... 5 1.2 SetServerItem... 6 1.3 GetDatapointDescription... 7 1.4 GetDescriptionString... 8 1.5 GetDatapointValue... 9 1.5.1 Example RAW-Format... 10 1.5.2 Example DPT1-Format (Boolean)... 10 1.5.3 Example DPT2-Format (Control, 2 Bit)... 11 1.5.4 Example DPT3-Format (Control Dimming, Control Blinds, 3 Byte)... 12 1.5.5 Example DPT4-Format (Character Set, 1 Byte)... 14 1.5.6 Example DPT5-Format (Unsigned Value, 1 Byte)... 14 1.5.7 Example DPT6-Format (Signed Value, 1 Byte)... 15 1.5.8 Example DPT7-Format (Unsigned Value, 2 Byte)... 15 1.5.9 Example DPT8-Format (Signed Value, 2 Byte)... 16 1.5.10 Example DPT9-Format (Float, 2 Byte)... 16 1.5.11 Example DPT10-Format (Time, 3 Byte)... 17 1.5.12 Example DPT11-Format (Date, 3 Bytes)... 17 1.5.13 Example DPT12-Format (Unsigned Value, 4 Byte)... 18 1.5.14 Example DPT13-Format (Signed Value, 4 Byte)... 18 1.5.15 Example DPT14-Format (Float. 4 Byte)... 19 1.5.16 Example DPT15-Format (Access, 14 Byte)... 19 1.5.17 Example DPT16-Format (String, 14 Byte)... 20 1.5.18 Example DPT17-Format (Scene Number, 1 Byte)... 20 1.5.19 Example DPT18-Format (Scene Control, 1 Byte)... 21 1.6 SetDatapointValue... 22 1.6.1 Example RAW-Format (hexadecimal)... 23 1.6.2 Example RAW-Format (decimal)... 24 1.6.3 Example DPT1-Format (Boolean, 1Bit)... 25 1.6.4 Example DPT2-Format (Control, 2Bit)... 26 1.6.5 Example DPT3-Format (Control Dimming, Control Blinds, 4 Bit)... 27 1.6.6 Example DPT4-Format (Character Set, 1 Byte)... 28 1.6.7 Example DPT5-Format (Unsigned Value, 1 Byte)... 29 1.6.8 Example DPT6-Format (Signed Value, 1 Byte)... 29 1.6.9 Example DPT7-Format (Unsigned Value, 2 Byte)... 30 1.6.10 Example DPT8-Format (Signed Value, 2 Byte)... 30 1.6.11 Example DPT9-Format (Float, 2 Byte)... 31 1.6.12 Example DPT10-Format (Time, 3 Byte)... 32 1.6.13 Example DPT11-Format (Date, 3 Byte)... 32 1.6.14 Example DPT12-Format (Unsigned Value, 4 Byte)... 33 1.6.15 Example DPT13-Format (Signed Value, 4 Byte)... 33 1.6.16 Example DPT14-Format (Float, 4 Byte)... 34 1.6.17 Example DPT15-Format (Access, 4 Byte)... 35 1.6.18 Example DPT16-Format (String, 14 Byte)... 36 1.6.19 Example DPT17-Format (Scene Number, 1 Byte)... 37 1.6.20 Example DPT18-Format (Scene Control, 1 Byte)... 37 1.7 GetParameterByte... 38 1.8 StartIndicationSession... 39 2015-07-30 Seite 2/47

1.9 StopIndicationSession... 40 1.10 GetIndication... 41 1.11 Error messages... 43 1.11.1 Unsupported Service... 43 1.11.2 Invalid Parameter... 43 1.11.3 No Data Available... 43 1.11.4 Unknown Error... 43 1.11.5 Internal Error... 43 1.11.6 Item Not Supported... 43 1.11.7 Buffer Too Small... 44 1.11.8 Item Not Writable... 44 1.11.9 Bad Service Parameter... 44 1.11.10 Bad Object ID... 44 1.11.11 Bad Object Command... 44 1.11.12 Bad Length... 44 1.11.13 No Free Session... 44 1.11.14 Session ID Not Found... 44 1.11.15 Link To Session Failed... 45 1.11.16 Release Session Failed... 45 1.11.17 Indication Timeout... 45 1.11.18 Indication Stopped... 45 2 API... 46 2.1 API_SetIpAddress(strIpAddr)... 46 2.2 API_SetCallbackRespRcvd(strCallback)... 46 2.3 API_SetCallbackIndicationUpdate(strCallback)... 46 2.4 API_SetCallbackInvalidSettings(strCallback)... 46 2.5 API_SetCallbackTransmitError(strCallback)... 46 2.6 API_GetServerItem(strStartItem, stritemcount)... 46 2.7 API_GetDatapointDescription(strDatapointStart, strdatapointcount)... 46 2.8 API_GetDescriptionString(strDatapointStart, strdatapointcount)... 47 2.9 API_GetDatapointValue(strDatapointStart, strdatapointcount, strformat)... 47 2.10 API_SetDatapointValue(strDatapoint, strformat, strcommand, strlength, strvalue)... 47 2.11 API_GetParamByte(strByteStart, strbytecount)... 47 2.12 API_IsIpAddrValid(strIpAddrToValidate)... 47 2.13 API_StartIndicationListener(strFormat)... 47 2.14 API_StopIndicationListener()... 47 2015-07-30 Seite 3/47

History Status of the document Date Editor Creation (based on document 2010-11-30 Hl BAOS_IP_Erweiterung_EN_2010_11_15_001.doc) Fixed 2010-12-10 Hl Examples of GetDatapointValue: Format was missing in some examples Fixed: 2011-06-15 Hl Example of GetServerItem Added: Infos for KNX IP BAOS 777 2015-07-30 Wz 2015-07-30 Seite 4/47

1 Web-Services To simplify the access on data-point level of the KNX IP BAOS (KNX application layer), web services are available as an alternative possibility. These web services are based on JSON (JavaScript Object Notation). The parameter values in the URL are case sensitive. 1.1 GetServerItem /baos/getserveritem?itemstart=1&itemcount=18, : GetServerItem, Data : HardwareType : 0, 0, 197, 7, 0, 0, HardwareVersion : 16, FirmwareVersion : 16, KnxManufacturerCodeDev : 197, KnxManufacturerCodeApp : 197, ApplicationId : 1796, ApplicationVersion : 16, SerialNumber : 0, 197, 7, 4, 0, 0, TimeSinceReset : 28143, BusConnectionState : 1, MaximalBufferSize : 255, LengthOfDescriptionString : 0, Baudrate : 2, CurrentBufferSize : 255, ProgrammingMode : 0, ProtocolVersion : 32, IndicationSending : 1 ProtocolVersionWebServices : 32,, 2015-07-30 Seite 5/47

1.2 SetServerItem /baos/setserveritem?programmingmode=0 /baos/setserveritem?programmingmode=1 /baos/setserveritem?indicationsending=0 /baos/setserveritem?indicationsending=1 /baos/setserveritem?baudrate=2 /baos/setserveritem?buffersize=255, : SetServerItem 2015-07-30 Seite 6/47

1.3 GetDatapointDescription /baos/getdatapointdescription?datapointstart=1&datapointcount=1, Data : : GetDatapointDescription, Datapoint : 1, ValueType : 0, ConfigurationFlags : 223, DatapointType : 1 2015-07-30 Seite 7/47

1.4 GetDescriptionString /baos/getdescriptionstring?datapointstart=1&datapointcount=1, Data : : GetDescriptionString, Datapoint : 1, Description : Switch 2015-07-30 Seite 8/47

1.5 GetDatapointValue /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=raw "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "RAW", "Length": 1, "State": 0, "Value": 0 The desired format of the datapoint value is chosen by changing the parameter Format. The following formats are supported: Raw RAW-Format: Data as array (byte-by-byte) Default Datapoint type (DPT), like the definition in Parameter The following DPTs are supported: DPT1 1 Bit (Boolean) DPT2 2 Bit (Control) DPT3 4 Bit (control Dimming, Control Blinds) DPT4 8 Bit (Character Set) DPT5 8 Bit Unsigned Value DPT6 8 Bit Signed Value DPT7 2 Byte Unsigned Value DPT8 2 Byte Signed Value DPT9 2 Byte Float Value DPT10 3 Byte (Time) DPT11 3 Byte (Date) DPT12 4 Byte Unsigned Value DPT13 4 Byte Signed Value DPT14 4 Byte Float Value DPT15 4 Byte (Access) DPT16 14 Byte (String) DPT17 1 Byte (Scene Number) DPT18 1 Byte (Scene Control) 2015-07-30 Seite 9/47

1.5.1 Example RAW-Format /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=raw "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "RAW", "Length": 4, "State": 0, "Value": 0, 50, 200, 3 1.5.2 Example DPT1-Format (Boolean) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT1", "Length": 1, "State": 0, "Value": false 2015-07-30 Seite 10/47

1.5.3 Example DPT2-Format (Control, 2 Bit) /baos/getdatapointvalue?datapointstart=2&datapointcount=1&format=default "Result" "Service" "Data": : true, : "GetDatapointValue", "Datapoint": 2, "Format": "DPT2", "Length": 1, "State": 0, "Value": "Control": false, "Code": false 2015-07-30 Seite 11/47

1.5.4 Example DPT3-Format (Control Dimming, Control Blinds, 3 Byte) Relative Dim: brighter, step 3 /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT3", "Length": 1, "State": 0, "Value": "Control": true, "StepCode": 3 Relative dim: darker, step 2 /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT3", "Length": 1, "State": 0, "Value": "Control": false, "StepCode": 2 2015-07-30 Seite 12/47

Relative Dim: stop /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format= Default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT3", "Length": 1, "State": 0, "Value": "Control": false, "StepCode": 0 2015-07-30 Seite 13/47

1.5.5 Example DPT4-Format (Character Set, 1 Byte) /baos/getdatapointvalue?datapointstart=4&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 4, "Format": "DPT4", "Length": 1, "State": 0, "Value": "A" 1.5.6 Example DPT5-Format (Unsigned Value, 1 Byte) /baos/getdatapointvalue?datapointstart=5&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 5, "Format": "DPT5", "Length": 1, "State": 0, "Value": 20 2015-07-30 Seite 14/47

1.5.7 Example DPT6-Format (Signed Value, 1 Byte) /baos/getdatapointvalue?datapointstart=6&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 6, "Format": "DPT6", "Length": 1, "State": 0, "Value": -123 1.5.8 Example DPT7-Format (Unsigned Value, 2 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT7", "Length": 2, "State": 0, "Value": 8415 2015-07-30 Seite 15/47

1.5.9 Example DPT8-Format (Signed Value, 2 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT8", "Length": 2, "State": 0, "Value": -837 1.5.10 Example DPT9-Format (Float, 2 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT9", "Length": 2, "State": 0, "Value": 22.5 2015-07-30 Seite 16/47

1.5.11 Example DPT10-Format (Time, 3 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT10", "Length": 3, "State": 0, "Value": "Weekday": "Monday", "Hour": 10, "Minute": 45, "Second": 30 1.5.12 Example DPT11-Format (Date, 3 Bytes) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" "Data" : : "GetDatapointValue", "Datapoint": 1, "Format": "DPT11", "Length": 3, "State": 0, "Value": "Day": 31, "Month": 12, "Year": 2009 2015-07-30 Seite 17/47

1.5.13 Example DPT12-Format (Unsigned Value, 4 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 12, "Length": 3, "State": 0, "Value": 12345 1.5.14 Example DPT13-Format (Signed Value, 4 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 13, "Length": 4, "State": 0, "Value": -12345 2015-07-30 Seite 18/47

1.5.15 Example DPT14-Format (Float. 4 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 14, "Length": 4, "State": 0, "Value": 22.157 1.5.16 Example DPT15-Format (Access, 14 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" : "GetDatapointValue", "Data" : "Datapoint": 1, "Format": "DPT15", "Length": 4, "State": 0, "Value": "Code": 45615, "Index": 5, "FlagError": true, "FlagPermission": false, "FlagReadDirection": false, "FlagEncrypted": true 2015-07-30 Seite 19/47

1.5.17 Example DPT16-Format (String, 14 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" : "GetDatapointValue", "Data" : "Datapoint": 1, "Format": "DPT16", "Length": 14, "State": 0, "Value": "Test" 1.5.18 Example DPT17-Format (Scene Number, 1 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" "Service" "Data" : : true, : "GetDatapointValue", "Datapoint": 17, "Length": 14, "State": 0, "Value": 0 2015-07-30 Seite 20/47

1.5.19 Example DPT18-Format (Scene Control, 1 Byte) /baos/getdatapointvalue?datapointstart=1&datapointcount=1&format=default "Result" : true, "Service" : "GetDatapointValue", "Data" : "Datapoint": 18, "Length": 1, "State": 0, "Value": "Control": false, "Scene": 0 2015-07-30 Seite 21/47

1.6 SetDatapointValue /baos/setdatapointvalue?datapoint=1&format=raw&length=1&value=0 /baos/setdatapointvalue?datapoint=1&format=raw&command=setsendval&length=1 &Value=0 This service is limited to one data point. If the parameter Command is not stated in the request, Set new value and send on bus is executed. Commands: SetVal Set new value SendVal Send value on bus SetSendVal Set new value and send on bus ReadVal Read new value via bus ClrState Clear datapoint transmission state 2015-07-30 Seite 22/47

1.6.1 Example RAW-Format (hexadecimal) RAW-Format (hexadecimal) length 1 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=1&value=0xa2 RAW-Format (hexadecimal) length 2 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=2&value=0x0055 RAW-Format (hexadecimal) length 4 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=4&value=0x12345678 RAW-Format (hexadecimal) length 14 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=14&value=0x11223344556 6778899AABBCCDDEE 2015-07-30 Seite 23/47

1.6.2 Example RAW-Format (decimal) RAW-Format (hexadecimal) length 1 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=1&value=25 RAW-Format (decimal) length 2 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=2&value=42910 RAW-Format (decimal) length 4 Byte: /baos/setdatapointvalue?datapoint=1&format=raw&length=4&value=1575185641 2015-07-30 Seite 24/47

1.6.3 Example DPT1-Format (Boolean, 1Bit) /baos/setdatapointvalue?datapoint=1&format=dpt1&length=1&value=true /baos/setdatapointvalue?datapoint=1&format=dpt1&length=1&value=false 2015-07-30 Seite 25/47

1.6.4 Example DPT2-Format (Control, 2Bit) /baos/setdatapointvalue?datapoint=1&format=dpt2&length=1&value=true&control=tru e /baos/setdatapointvalue?datapoint=1&format=dpt2&length=1&value=false&control=fa lse 2015-07-30 Seite 26/47

1.6.5 Example DPT3-Format (Control Dimming, Control Blinds, 4 Bit) Relative Dim: lighter, step 3 /baos/setdatapointvalue?datapoint=1&format=dpt3&length=1&control=true&stepcod e=3 Relative Dim: darker, step 1 /baos/setdatapointvalue?datapoint=1&format=dpt3&length=1&control=false&stepcod e=1 Relative Dim: stop /baos/setdatapointvalue?datapoint=1&format=dpt3&length=1&control=false&stepcod e=0 2015-07-30 Seite 27/47

1.6.6 Example DPT4-Format (Character Set, 1 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt4&length=1&value=t 2015-07-30 Seite 28/47

1.6.7 Example DPT5-Format (Unsigned Value, 1 Byte) UINT-Format length 1 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt5&length=1&value=123 1.6.8 Example DPT6-Format (Signed Value, 1 Byte) INT-Format length 1 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt6&length=1&value=-25 2015-07-30 Seite 29/47

1.6.9 Example DPT7-Format (Unsigned Value, 2 Byte) UINT-Format length 2 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt7&length=2&value=45201 1.6.10 Example DPT8-Format (Signed Value, 2 Byte) INT-Format length 2 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt8&length=2&value=-25301 2015-07-30 Seite 30/47

1.6.11 Example DPT9-Format (Float, 2 Byte) Float-Format length 2 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt9&length=2&value=23.1 2015-07-30 Seite 31/47

1.6.12 Example DPT10-Format (Time, 3 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt10&length=3&weekday=monday&h our=10&minute=45&second=30 The following values are possible: Weekday: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday & Sunday Hour: 0 23 Minute: 0 59 Second: 0 59 1.6.13 Example DPT11-Format (Date, 3 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt11&length=3&day=31&month=12&y ear=2009 2015-07-30 Seite 32/47

1.6.14 Example DPT12-Format (Unsigned Value, 4 Byte) UINT-Format length 4 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt12&length=4&value=45201 1.6.15 Example DPT13-Format (Signed Value, 4 Byte) INT-Format length 4 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt13&length=4&value=-25301 2015-07-30 Seite 33/47

1.6.16 Example DPT14-Format (Float, 4 Byte) Float-Format length 4 Byte: /baos/setdatapointvalue?datapoint=1&format=dpt14&length=4&value=23.1 2015-07-30 Seite 34/47

1.6.17 Example DPT15-Format (Access, 4 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt15&length=4&code=45615&index=5 &FlagError=true&FlagPermission=false&FlagReadDirection=false&FlagEncrypted=true 2015-07-30 Seite 35/47

1.6.18 Example DPT16-Format (String, 14 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt16&length=14&value=test Using the parameter Value a string with a maximum length of 14 bytes can be given to the BAOS. 2015-07-30 Seite 36/47

1.6.19 Example DPT17-Format (Scene Number, 1 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt17&length=1&scene=60 Scene numbers from 0 to 63 can be used. 1.6.20 Example DPT18-Format (Scene Control, 1 Byte) /baos/setdatapointvalue?datapoint=1&format=dpt18&length=1&scene=60&control=tr ue Scene numbers from 0 to 63 can be used. 2015-07-30 Seite 37/47

1.7 GetParameterByte /baos/getparameterbyte?bytestart=1&bytecount=15, : GetParameterByte, Data : 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 2015-07-30 Seite 38/47

1.8 StartIndicationSession /baos/startindicationsession, : StartIndicationSession, Data : SessionId : 1 To draw a link between these two connections (Requ-Resp and Ind.), an unique session ID is used. This Session-ID is generated by the BAOS and has of length of 2 bytes. Session IDs in the range of 1 to 65535 are assigned. An inactive indication session will be terminated after 30 seconds. 2015-07-30 Seite 39/47

1.9 StopIndicationSession /baos/stopindicationsession&sessionid=1, : StopIndicationSession 2015-07-30 Seite 40/47

1.10 GetIndication This service is used to request Indications. A feature of this service is that it remains open for a certain time (Timeout, in seconds). This means, the service waits for the Indication after a is posted. The timeout is limited to 30 seconds. If there is no Indication within the defined period of time, a response containing the value FALSE in the Parameter Result is posted. The desired format of the datapoint value is chosen by changing the parameter Format. The following formats are supported: Raw RAW-Format: Data as array (byte-by-byte) Default Datapoint type (DPT), like the definition in Parameter If no format is set, the RAW-Format will be used for datapoint values. This service is used to get indications of server items and of datapoint values. Example for receiving a bus connection change: /baos/getindication?sessionid=1&timeout=30&format=raw or /baos/getindication?sessionid=1&timeout=30 "Result" : true, "Service" : "GetIndication", "Type" : "ServerItem" "Data" : "BusConnectionState": 1 The parameter Format has no influence on a server item indication. 2015-07-30 Seite 41/47

Example for receiving datapoint value indications: /baos/getindication?sessionid=1&timeout=30&format=raw or /baos/getindication?sessionid=1&timeout=30 "Result" "Service" "Type" "Data" : : true, : "GetIndication", : "DatapointValue" "Datapoint": 1, "Length": 1, "State": 0, "Value": 0 /baos/getindication?sessionid=1&timeout=30&format=default, "Type" Data : : GetIndication, : "DatapointValue" Datapoint : 1, Format : DPT1, Length : 1, State : 0, Value : false 2015-07-30 Seite 42/47

1.11 Error messages In case of an error the answer with an error description is returned. Result : false, : GetParameterByte, Error : ErrorMessage, 1.11.1 Unsupported Service Error : UnsupportedService This error message is returned, if an unsupported web service is sent to the KNX IP BAOS device. Example: /baos/illegalservice 1.11.2 Invalid Parameter Error : InvalidParam This error message is returned, if an invalid parameter is sent to the KNX IP BAOS device. Example: /baos/getdatapointvalue?datapointstart=-1000&datapointcount=1&format=raw 1.11.3 No Data Available Error : NoDataAvailable This error is returned, if no data is available, e.g. when asking for a description string and no strings are set via ETS. 1.11.4 Unknown Error Error : UnknownError This error is returned, if no specific error code is available. 1.11.5 Internal Error Error : InternalError This is an unspecified internal error of the KNX IP BAOS device. 1.11.6 Item Not Supported Error : ItemNotSupported 2015-07-30 Seite 43/47

This error is returned, if the requested server item is not available. 1.11.7 Buffer Too Small Error : BufferTooSmall This error is returned, if the internal buffer of the object server is not sufficient. 1.11.8 Item Not Writable Error : ItemNotWritable This error is returned, if a server item, which is not write enabled, shall be written. 1.11.9 Bad Service Parameter Error : BadServiceParameter This error is returned, if an object server parameter is out of range 1.11.10 Bad Object ID Error : BadObjectId This error is returned, if a non-existing object shall be set. 1.11.11 Bad Object Command Error : BadObjectCommand This error is returned, if an object shall be set with an invalid command. 1.11.12 Bad Length Error : BadLength This error is returned, if the length in the request does not match with the object length. 1.11.13 No Free Session Error : NoFreeSession This error is returned, if no indication session could be started, as no free sessions are available. 1.11.14 Session ID Not Found Error : SessionIdNotFound This error is returned, if the indication session could not be stopped, as the session ID could not be found. 2015-07-30 Seite 44/47

1.11.15 Link To Session Failed Error : LinkToSessionFailed This error is returned, if an indication could not be retrieved, as the link to a session, which should exist, failed. 1.11.16 Release Session Failed Error : ReleaseSessionFailed This error is returned, if the releasing of an indication session failed (e.g. at timeout). 1.11.17 Indication Timeout Error : IndTimeout This error is returned, if a timeout of an existing indication session occurred. 1.11.18 Indication Stopped Error : IndStopped This error is returned, if an existing indication session has been stopped. Example: /baos/stopindicationsession&sessionid=1 2015-07-30 Seite 45/47

2 API To simplify the use of the web services provided by the KNX IP BOAS, an API (application programming interface) for Javascript is available. This API is based on jquery JavaScript Library (http://jquery.com/) and jquery JSONP Core Plugin (http://code.google.com/p/jquery-jsonp/). The API provides the following functionality: - API_SetIpAddress(strIpAddr) - API_SetCallbackRespRcvd(strCallback) - API_SetCallbackIndicationUpdate(strCallback) - API_SetCallbackInvalidSettings(strCallback) - API_SetCallbackTransmitError(strCallback) - API_GetServerItem(strStartItem, stritemcount) - API_GetDatapointDescription(strDatapointStart, strdatapointcount) - API_GetDescriptionString(strDatapointStart, strdatapointcount) - API_GetDatapointValue(strDatapointStart, strdatapointcount, strformat) - API_SetDatapointValue(strDatapoint, strformat, strcommand, strlength, strvalue) - API_GetParamByte(strByteStart, strbytecount) - API_IsIpAddrValid(strIpAddrToValidate) - API_StartIndicationListener(strFormat) - API_StopIndicationListener() 2.1 API_SetIpAddress(strIpAddr) This function gives the IP address information to the API. 2.2 API_SetCallbackRespRcvd(strCallback) This function sets the callback handler for processing the responses. 2.3 API_SetCallbackIndicationUpdate(strCallback) This function sets the callback handler for processing the indication updates. 2.4 API_SetCallbackInvalidSettings(strCallback) This function sets the callback handler for processing invalid settings. The callback function is called, if an API with invalid parameters is called. 2.5 API_SetCallbackTransmitError(strCallback) This function sets the callback handler for processing transmission errors. 2.6 API_GetServerItem(strStartItem, stritemcount) This API is called by the client to get one or more server items (properties). The start item (strstartitem) and the item count (stritemcount) have to be passed to the API. 2.7 API_GetDatapointDescription(strDatapointStart, strdatapointcount) This API is called by the client to get one or more description(s) of the datapoint(s). The start datapoint (strdatapointstart) and the datapoint count (strdatapointcount) have to be passed to the API. 2015-07-30 Seite 46/47

2.8 API_GetDescriptionString(strDatapointStart, strdatapointcount) This API is called by the client to get the human-readable description string(s) of the datapoint(s). The start datapoint (strdatapointstart) and the datapoint count (strdatapointcount) have to be passed to the API. 2.9 API_GetDatapointValue(strDatapointStart, strdatapointcount, strformat) This API is called by the client to get the value(s) of the datapoint(s). The start datapoint (strdatapointstart), the datapoint count (strdatapointcount) and the format of the value (strformat) have to be passed to the API. 2.10 API_SetDatapointValue(strDatapoint, strformat, strcommand, strlength, strvalue) This API is called by the client to set the new value(s) of the datapoint(s) or to request/transmit the new value on the bus. The datapoint to set (strdatapoint), the format of the value (strformat), the command (strcommand), the length of the datapoint (strlength) and its value (strvalue) have to be passed to the API. 2.11 API_GetParamByte(strByteStart, strbytecount) This API is called by the client to get the parameter byte(s). A parameter is a free-defined variable of the 8-bits length, which can be set and programmed by the Engineering Tool Software (ETS). The start index (strbytestart) and the parameter byte count (strbytecount) have to be passed to the API. 2.12 API_IsIpAddrValid(strIpAddrToValidate) This API checks, if a given IP address (stripaddrtovalidate) is valid. Return: TRUE, if IP address is valid. FALSE, in case of error 2.13 API_StartIndicationListener(strFormat) This API is called to start the indication listener. The format of the datapoint value has to be passed to the API. TRUE, if indication listener could be started successfully FALSE, in case of error 2.14 API_StopIndicationListener() This API is called to stop the indication listener. TRUE, if indication listener could be stopped successfully FALSE, in case of error 2015-07-30 Seite 47/47