Browser client, OS independant
Re: Browser client, OS independant
Another HouseBot Web Server version has been released!
This version will actually render the theme in your browser. It is available in the plugins forum... Along with a long list of stuff it doesn't do... yet.
Tim
This version will actually render the theme in your browser. It is available in the plugins forum... Along with a long list of stuff it doesn't do... yet.
Tim
Re: Browser client, OS independant
Sigh... One step forward... About 6 steps back!
It turns out I have used very very very bad javascript thinking. The code is OK, but the overall way I'm asking js to draw the remote is very bad. I'm in the process of rewriting just about all the javascript for the remote....
Tim
It turns out I have used very very very bad javascript thinking. The code is OK, but the overall way I'm asking js to draw the remote is very bad. I'm in the process of rewriting just about all the javascript for the remote....
Tim
-
- Member
- Posts: 8
- Joined: Sun Dec 12, 2010 7:09 pm
Re: Browser client, OS independant
This looks like an excellent idea and I'm really excited to see the final output - well done so far. I just wondered how easy it will be to customise in the future? For example if I want to change the way the XML is rendered into HTML + JS? The reason I was asking is that a version for iOS devices would have different requirements, for example may be a HTML5 app, and would use the touchstart event for button presses rather than onclick (which has a delay on iOS devices). I suppose I could just code my own custom HTML5 app and then integrate against your API, but this doesn't seem as elegant.
Regards,
Chris
Regards,
Chris
Re: Browser client, OS independant
There are a couple of ways we could customize the JS to render better HTML.
The first one is to save the javascript from the page, do your modifications, and put the file on the hbWebServer. Point your browser to the page and you should be good to go.
The second option would be to send the file back to me, I'll compile it back into the plugin and re-release it.
The *only* reason why the current JS page is served from within the plugin is to make it simple to install. Drop in the dll and you are good to go. I didn't want to have to get folks to drop in the plugin, then add this file here and that file there, etc.
I suspect I will have to make it more browser aware at some point. I know it is common in js pages to check the browser/OS and run the appropriate code. I have none of that in my code at the moment, and hence it does not work on all browsers.
Tim
The first one is to save the javascript from the page, do your modifications, and put the file on the hbWebServer. Point your browser to the page and you should be good to go.
The second option would be to send the file back to me, I'll compile it back into the plugin and re-release it.
The *only* reason why the current JS page is served from within the plugin is to make it simple to install. Drop in the dll and you are good to go. I didn't want to have to get folks to drop in the plugin, then add this file here and that file there, etc.
I suspect I will have to make it more browser aware at some point. I know it is common in js pages to check the browser/OS and run the appropriate code. I have none of that in my code at the moment, and hence it does not work on all browsers.
Tim
Re: Browser client, OS independant
Folks,
Apologies.... I have slowed waaay down on this. I know lots of folks are looking forward to it for all sorts of reasons... Whether they want an exact copy of there theme in a browser, whether they just want the xml swremote protocol, whether they don't know how to design or integrate a web-server or ???
I have not dropped the project, but as with life, all things wax and wane. Work is really busy... And add in a new baby boy, who at 15 days old, is too young to write code :s , and there is just not much time left for other stuff.
I am still working on writing the xml/ajax protocol for the web swremote, so I am back into the C++ code in a big way, and on a very steep learning curve with C++ XML and various XML libraries.
I will get something out... One day. But I know & appreciate the patience of the group!
Thanks
Tim
Apologies.... I have slowed waaay down on this. I know lots of folks are looking forward to it for all sorts of reasons... Whether they want an exact copy of there theme in a browser, whether they just want the xml swremote protocol, whether they don't know how to design or integrate a web-server or ???
I have not dropped the project, but as with life, all things wax and wane. Work is really busy... And add in a new baby boy, who at 15 days old, is too young to write code :s , and there is just not much time left for other stuff.
I am still working on writing the xml/ajax protocol for the web swremote, so I am back into the C++ code in a big way, and on a very steep learning curve with C++ XML and various XML libraries.
I will get something out... One day. But I know & appreciate the patience of the group!
Thanks
Tim
-
- Member
- Posts: 30
- Joined: Sun May 23, 2010 6:45 pm
Re: Browser client, OS independant
Thanks,Timoh wrote: I will get something out... One day. But I know & appreciate the patience of the group!
I'm sure there are many of us waiting to see your progress.
Please keep up the great work.
Gene
Re: Browser client, OS independant
Folks,
Getting back on the horse on this... With good progress in the past few weeks.
The webserver now has JSON interface to Housebot. Right now it's query only... ie: To get property values.
You give it device & property in JSON and it gives you back, device, property & value in JSON.
You give something like...
{
"Devices":[{
"Device":"extern",
"Property":"Server IP Port"
},
{
"Device":"System Time",
"Property":"Date"
},
{
"Device":"Sample Theme Device",
"Property":"Volume"
}
]
}
And get back something like...
{
"Devices" : [
{
"Device" : "extern",
"Property" : "Server IP Port",
"Value" : "5020"
},
{
"Device" : "System Time",
"Property" : "Date",
"Value" : "9/17/2011"
},
{
"Device" : "Sample Theme Device",
"Property" : "Volume",
"Value" : "54"
}
]
}
I'm now back to working on the javascript client to update the values it receives back from the server. Hopefully that won't be too bad as I've written many of the update routines into the client already.
More to come... The project is not dead!
Tim
Getting back on the horse on this... With good progress in the past few weeks.
The webserver now has JSON interface to Housebot. Right now it's query only... ie: To get property values.
You give it device & property in JSON and it gives you back, device, property & value in JSON.
You give something like...
{
"Devices":[{
"Device":"extern",
"Property":"Server IP Port"
},
{
"Device":"System Time",
"Property":"Date"
},
{
"Device":"Sample Theme Device",
"Property":"Volume"
}
]
}
And get back something like...
{
"Devices" : [
{
"Device" : "extern",
"Property" : "Server IP Port",
"Value" : "5020"
},
{
"Device" : "System Time",
"Property" : "Date",
"Value" : "9/17/2011"
},
{
"Device" : "Sample Theme Device",
"Property" : "Volume",
"Value" : "54"
}
]
}
I'm now back to working on the javascript client to update the values it receives back from the server. Hopefully that won't be too bad as I've written many of the update routines into the client already.
More to come... The project is not dead!
Tim
Re: Browser client, OS independant
That is great news Timoh! so glad you are finding the time again and I am very excited to see this develop!
This will be an awesome complement to Housebot!
v/r
Kevin
This will be an awesome complement to Housebot!
v/r
Kevin
-
- HouseBot Guru
- Posts: 757
- Joined: Wed Apr 02, 2003 8:10 pm
- Location: Pelham AL
Re: Browser client, OS independant
Agreed. Without the ability to interact with a browser or iPad-like devices, I suspect HB will be left in the dust (or dust bin) of other HA systems.edgar wrote:That is great news Timoh! so glad you are finding the time again and I am very excited to see this develop!
This will be an awesome complement to Housebot!
Steve
Re: Browser client, OS independant
Hi folks,
Hopefully in the next few days, I'll have another set of alpha (ie not even beta) code posted. The reason for the timing is I will be off on family vacation and definitely there will be no work for the month of October.
The latest version of the server will support JSON get property values (http GET & POST supported) which I think will be useful to some folks. The latest version of the client will update the web remote text controls, indicator controls and image controls + maybe a few others time permitting in the next few days.
This could be an interesting release for some folks as it means they can design a "passive" remote for displaying their HB status. I say "passive" because buttons, input boxes, etc will not work in this release.
I'll leave a note here when it makes it to the plugin forum.
Tim
Hopefully in the next few days, I'll have another set of alpha (ie not even beta) code posted. The reason for the timing is I will be off on family vacation and definitely there will be no work for the month of October.
The latest version of the server will support JSON get property values (http GET & POST supported) which I think will be useful to some folks. The latest version of the client will update the web remote text controls, indicator controls and image controls + maybe a few others time permitting in the next few days.
This could be an interesting release for some folks as it means they can design a "passive" remote for displaying their HB status. I say "passive" because buttons, input boxes, etc will not work in this release.
I'll leave a note here when it makes it to the plugin forum.
Tim
Re: Browser client, OS independant
Hi folks,
Update on the slow slow progress... (I doubt that anyone is holding their breath waiting for my client at this point)
We came back from family vacation to find my XP development machine completely toast... With a DNR (Do not resuscitate) sticker on it.
Unfortunately, my new dev box is Win 7. I don't know how this will affect development, Visual Studio, Housebot, + + +. I should hopefully get a bit of time this weekend to get my dev setup running again, and then be able to release something.
Tim
Update on the slow slow progress... (I doubt that anyone is holding their breath waiting for my client at this point)
We came back from family vacation to find my XP development machine completely toast... With a DNR (Do not resuscitate) sticker on it.
Unfortunately, my new dev box is Win 7. I don't know how this will affect development, Visual Studio, Housebot, + + +. I should hopefully get a bit of time this weekend to get my dev setup running again, and then be able to release something.
Tim
-
- HouseBot Guru
- Posts: 757
- Joined: Wed Apr 02, 2003 8:10 pm
- Location: Pelham AL
Re: Browser client, OS independant
Actually, I AM holding my breath (figuratively speaking). The ability to interface with HB via a browser client I think is critical to the success of HB.
(And what does that say about taking a vacation I wonder? )
(And what does that say about taking a vacation I wonder? )
Steve
Re: Browser client, OS independant
Hi Timoh,
Welcome back from vacation. I too, am glad to know you are getting things back going! Thanks so much for all your work and I totally agree with Steve!
Welcome back from vacation. I too, am glad to know you are getting things back going! Thanks so much for all your work and I totally agree with Steve!
Re: Browser client, OS independant
Hi folks,
There's a new release of the server and client in over in the plugin development forum.
The details are in the post, but in brief, you should be able to display most of your remote accurately in your browser.... You just won't be able to interact with it. The JSON protocol has been implemented and you can get values from any HB device. Some layout & browser caching/dependency loading improvements.
I'm mostly looking for layout issues at this point, so please send me feedback.
Thanks
Tim
There's a new release of the server and client in over in the plugin development forum.
The details are in the post, but in brief, you should be able to display most of your remote accurately in your browser.... You just won't be able to interact with it. The JSON protocol has been implemented and you can get values from any HB device. Some layout & browser caching/dependency loading improvements.
I'm mostly looking for layout issues at this point, so please send me feedback.
Thanks
Tim