Device Properties
The properties of a device in the LaRoomy context could be considered as the capabilities of a device which can be remote controlled. Such a property could be simple, like a light that could be switched on or off. Or it is more complex, like a time control which turns the light on or off if the current time is in a specific time frame.
In consequence, the available device properties of the LaRoomy system are divided in simple property types and complex property types.
Along with the device properties there are containers to arrange the items. These containers are called device property groups. Arranging the properties in groups enables the possibility to combine the functionalities of individual properties to a superordinate functionality context.
For example: With the above mentioned device properties a group could be constructed, containing a switch and a time frame selector. With the switch the time control could be enabled or disabled and with the time frame selector the enable time is adjustable.
Here an UI example with some single properties is shown. Each of the properties is displayed as a single element in the list of available device properties. Simple properties can be controlled directly through the control elements in the list item. Complex properties have their own page. If the complex property element is clicked, the respective property page will be opened.
In this UI example the properties are arranged in groups. The device property groups come with a description header to summarize the functionality scope of the properties inside the group. All elements in the group are drawn together in a frame to indicate that they belong to each other.
Simple Properties
The presented property elements below are only examples how an element could look like. Note that the content of the elements like image, text and layout(type) can be freely defined in the firmware of the remote device. The resources of the remote device determine the content of the device property. More info and implementation examples are provided in the API Documentation.
Button Property
The button element consists of an image, a description text and a button(with text). The button property has no state, that means there is no indication if a respective hardware element on the remote side is on or off.
Switch Property
The switch element consists of an image, a description text and a switch. It is indended to be bound to a hardware element which has a particular dual state.
Level Selector Property
The level selector element consists of an image, a description text and also a button which carries the current level value in percent. If the button is clicked, a popup with a slider opens. In this popup the level value could be selected.
Level Indicator Property
The level indicator element consists of an image, a description text and a level text field where a level is displayed. This is a none input property, that means the app user cannot interact with it. It is only intended to show a value.
Text Display Property
The text display element consists of an image and a text field. This element also accepts no input. It is intended to show a message or a status.
Option Selector Property
The option selector element consists of an image, a description text and a button which carries the current selected option from a list of available options. If the button is clicked, a popup with a selector opens. In this popup another option could be selected.
Complex Properties
Complex Property Element
The complex property element consists of an image and a description text. The whole element works as a navigation button since all complex property elements have their own page. If the element is clicked, the respective complex property page is opened.
Beside that, a complex property can also run in standalone mode. This means if the remote device has only one property and this property is a complex property, the standalone mode could be activated. If this is done, the property page will be directly shown when the device gets connected. Read more about the standalone property mode in the API Documentation.
RGB Selector Property
The RGB Selector page provides all necessary elements to set up and control a RGB light: an On/Off switch, a mode selector to switch between single color mode and color transition mode, the color selector itself, a lightness slider to select the intensity of the light and a transition mode switch to set up how the transition between the colors should be occur. The page is not static, if elements are not used, they can be hidden.
Extended Level Selector Property
The Extended Level Selector provides an On/Off switch and the level selector itself. The On/Off switch can be hidden when there is no need for it. The difference to the simple level selctor is that the range is freely selectable and the update transmission behaviour can be customized.
Time Selector Property
With the Time Selector property a simple time can be selected.
Time Frame Selector Property
The Time-Frame Selector provides two time selectors. One for the start time and one for the end time, so that a time frame can be selected.
Date Selector Property
With the Date Selector a simple date can be selected.
Unlock Control Property
The Unlock Control Property provides a number pad to unlock something with a pin. Also an pin change interface is supported.
Navigator Control Property
With the Navigator Control Property movement can be controlled. It provides arrow buttons in all directions and a center button for confirmation.
Bar Graph Property
The Bar Graph Property is intended to visualize recorded measured data or live data. It is only a viewer, the user cannot interact with it.
Line Graph Property
The Line Graph Property is intended to visualize recorded measured data or live data. Like the Bar Graph, this property is only a viewer too. The user cannot interact with it.
String Interrogator Property
The purpose of the String Interrogator is to request a string from the app to use it inside of the device. There are two input fields available and a confirmation button. Not all elements must be used, unused can be hidden. The input type and the text resources are also freely customizable.
Text-List Presenter Property
The Text List Presenter property can be used to display text based elements in a list. This could be used to implement a log list or a device internal event list. List elements can have different severity states: info, warning and error.