Hi!

I'm still reading the docs, and just made a simple test with qooxdoo... Now 
it's time to start a real
project. But I need advice!

My goal is to make a home automation client interface to control a KNX-based 
system. The server part
will be based on my python framework, pKNyX¹.

I would like to make something a little bit different than existing clients: 
the GUI will be
automatically built using a config sent by the server (json format).

The client interface will be mobile/tablet oriented, and will be very simple, 
based on pages/lists. Some
widgets in the lists will be as simple as buttons, but some others can be a 
little more complex
(button+icon with light state handling, spinbutton...).

Here is a little example of a json file sent by the server (first draft):

{
  "objects": [
    {
      "id": "light_1_paul_bedroom",
      "type": "light",
      "room": "Paul bedroom",
      "dptid": "1.001",
      "gad": "1/1/0",
      "listener": "1/2/0",
      "label": "Light 1"
    },
      "id": "light_2_paul_bedroom",
      "type": "light",
      "room": "Paul bedroom",
      "dptid": "1.001",
      "gad": "1/1/1",
      "listener": "1/2/1",
      "label": "Light 2"
    }
  ]
}

The idea is to give all informations needed to build the GUI. There will be a 
main page:

  Main
    Rooms
    Lights

The 'Rooms' button will drive to a sub-page:

  Rooms
    Paul bedroom

The 'Paul bedroom' button will drive to another sub-page:

  Paul bedroom
    Light 1

Here, 'Light 1' is a custom button to toggle the light, with a nice feedback 
icon.

The 'Lights' button of the main page will drive to another sub-page:

  Lights
    Light 1 Paul bedroom

And so on. This is just an example; it will be possible to dynamically build 
any kind of tree, with more
or less deep.

All widgets (buttons, here), will send orders to the KNX bus, through the 
server, and should be updated
as soon as a change occurs on the bus (polling is OK).

This is my first javascript framework use, and I'm a bit lost with all 
available tools and ways to do
it :o/ So, I would like to have some advice about the global architecture I 
should use to have something
clean, easy to improve (adding new composite widgets for list entries), and 
easy to maintain.

Thanks for reading.

¹ http://www.pknyx.org

-- 
    Frédéric

------------------------------------------------------------------------------
Dive into the World of Parallel Programming. The Go Parallel Website,
sponsored by Intel and developed in partnership with Slashdot Media, is your
hub for all things parallel software development, from weekly thought
leadership blogs to news, videos, case studies, tutorials and more. Take a
look and join the conversation now. http://goparallel.sourceforge.net/
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to