[dss-developer] questions api

Dieter Beck beck.m2m at googlemail.com
Tue Feb 16 23:59:10 CET 2010


Hi,

Thank you very, very much for this info!!!

The system is getting clearer and clearer....

I will ask to open questions to Digitalstrom directly.

Dieter

Am 16. Februar 2010 17:40 schrieb Patrick Stählin <pstaehlin at futurelab.ch>:
> Hi!
>
> On Feb 15, 2010, at 11:23 PM, Dieter Beck wrote:
>
>> 1) The apartmentGetDevices function, as far as I understood this
>> right, should return the id of an set with all devices in it. But it
>> doesnt return an id. It always return a " ." Anyone the same problem?
>
> This means all devices in our "Set-Syntax" (see the very sparse documentation at [1]). To get the list of the devices out of the dSS call SetGetContainedDevices(token, ".").
>
>> 2) How can I get the name of the Zones? I get all Zones with the
>> function apartmentGetZoneIDs. I can get the id of a zone with the help
>> of the name with the function: apartmentGetDeviceIDbyName - But how
>> can I get the name when I have the ID?
>
> You're right such a call is missing. I've added a ticket[2] for that.
>
>> 3) There are no functions for ZoneSetName. There are only the get
>> functions. I think this also would be useful.
>
> I suppose you mean DeviceSetName? I've added another ticket to check all getters/setters of names in the SOAP interface [3].
>
>> 4) There is a function deviceSetValue (also for apartment, zone, ...)
>> It takes an parameter for value and one for parameterID. When I set
>> the value 1.5 and parameterID 1 for example. And then read it again
>> with deviceGetValue, I always get the double 0.0 as an answer. It
>> doesnt work. Why? Is this value the value for dimming the light? What
>> are the other values (which I can set with the parameterID) good for?
>
> Parameters are a virtual concept as of now, it should work if you pass an integer value from 1 to 255 to it.
>
>> 5) As far as I understood, you turn all the light the way you want
>> them and then call saveScene. When you want to load the scene you call
>> LoadScene. This also doesnt work. Why? Is there a possiblity to look
>> at this values somewhere in the simulation software?
>
> The values should be stored for one run of the dSS but are not made persistent over multiple runs. You can recall those values using callScene.
>
>> 6) Although I disable devices they still react to commands.
>
> Our simulated devices don't simulate that behaviour. As far as I know it's unknown if those calls will even make it in the chip. I'll check with the guys from aizo.
>
>> 7) What exactly are userGroups? (AllocateUserGroup)
>
> Every device is in a default group which corresponds to its color. There are ten different colours and thus there are ten predefined groups (see [4]). User-Groups are freely programmable groups. But we're not relaying those calls as of now.
>
>> 8) In the Javascript API you can set the location for the devices. How
>> can I do this with the SOAP API? Is there a special unit the x,y,z
>> coordinates have to be, so that the different apss (iPhone ...) can
>> understand it. meters? centimeters? relatives?
>
> Which version of the dSS are you using? Those calls were removed some months ago. For an explanation see 11).
>
>> 9) How can I get the powerConsumption of an device?
>
> That's not possible right now as we're missing some lower-level concepts for that.
>
>> 10) Can I figure out with the help of the dsID what kind of the device
>> the device is? For example the first octect for the company, second
>> for device or something similar. What is the function getFunctionID
>> good for? Is it to figure out what kind of device it is? Or is there
>> an other possiblity to figure out if the device is an light, an radio
>> a washingmachine or something else?
>
> The function-id of a device should provide you with the capabilities a device has. E.g. if it has a dimmer installed or not. I don't have a current copy of the value/flag mappings, maybe someone from aizo can chip in here?
>
>> 11) What are the property functions good for? (propertySetInt,
>> propertySetBool...)
>
> Those are accessors to get values out of our internal value-tree. You can store arbitrary values in there and use it to communicate between different applications. You can browse the tree int the setup-interface [5] or the simple browser at [6].
> Nodes under /apartment/zones/zonexy/device/... can be made persistent by setting an "archive"-flag on them. So properties like location would be best re-implemented using persistent properties.
>
>> 12) Did I understand this right:
>> I am not quite sure about the different kinds of categories and how it
>> is the right way to use them.
>> Zones: are kinds of rooms - all devices that are at the samd dsM
>> Groupes: are groups that can contain devices - for example all lights
>> in the corridor. Devices of different zones can be in one zone.
>> Groups and Zones are stored at the server and are the same for all Apps.
>> Sets are temporary groups of devices to communicate with them and for
>> example swich them off.
>
> It's almost like that.
> - Zones can span over different dSMs (but don't have to)
> - One device is in only one Zone
> - One device is at least in one Group
>
> The rest is correct.
>
>> 13)  How can I create new groups, zones and name them, to add devices?
>
> As explained in 7) we can't create groups right now.
>
>> 14) How can I communicate with the binary pins, usart interface,
>> sensors, analog pins on the chip?
>
> Please contact digitalstrom.org directly at info(at)digitalstrom(dot)org with questions regarding the hardware.
>
>> 15) How can I receive envents (new Device plugged in, bell, ...) with
>> the help of the soap interface or in an other way? Is there
>> apossibility to receive an event when a pin on the chip changed, or
>> when you received something from the usart interface?
>> There are the functions in the api: eventraise, eventweitfor, eventsubscribeto
>> Hoe do I use them? As far as I understand I send an soap request and
>> then I have to wait and get an answer as soon as the event rises. Is
>> there an other possiblity. Its clear that I will have to have a soap
>> server in the app or something else listening to the dSS.
>
> You tell the dSS which events you'd like to receive (EventSubscribeTo) and wait for them using EventWaitFor. If timeout is zero, you'll wait forever, if it equals -1 you'll poll the event-queue and if you pass a positive integer you'll wait for timeout milliseconds.
>
>> 16) Is there a possiblity to buy an dsID, Server, dsM?
>
> Again, please contact digitalstrom.org directly.
>
> [1] http://developer.digitalstrom.org/redmine/wiki/dss/Set_syntax
> [2] http://developer.digitalstrom.org/redmine/issues/show/303
> [3] http://developer.digitalstrom.org/redmine/issues/show/304
> [4] http://www.digitalstrom.org/uploads/pics/dS_colour_scheme_english_01.jpg
> [5] http://yourdss:8080/setup.html
> [6] http://yourdss:8080/browse/
>
> Patrick
> --
> Patrick Stählin         Hardware Wrangler
> futureLAB AG            tel: +41 (0)52 260 22 22
> Schwalmenackerstr. 4    fax: +41 (0)52 260 22 23
> CH-8400 Winterthur      mission: delivering tomorrow's applications today
>
>
> _______________________________________________
> dss-developer mailing list
> dss-developer at forum.digitalstrom.org
> http://forum.digitalstrom.org/cgi-bin/mailman/listinfo/dss-developer
>
>


More information about the dss-developer mailing list