webRemote/Housebot WebServer - March Release

HouseBot Plugin Development Discussions.
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

webRemote/Housebot WebServer - March Release

Post by Timoh »

Hi folks,
Here is the latest webremote.
If you have previously used the plugin, drop the updated plugin into your devices folder and you should be good to go. If not, follow the instructions at the end of the post. (Please ensure there is only 1 hbwebserver DLL in your plugins folder.)

As always, consider this release alpha code. That being said, it's getting pretty stable and useful. Also, as usual, this has only been tested on Firefox, use on other browsers may or may not work. I will make it fully functional on all browsers, including mobile devices, at some point, but for now just want to focus on getting it working on one.

Things fixed/available in this version.
- Better support for Dynamic images using the %%HB_Themes%% PV substitution variable
- Better support for Dynamic images using the full path to the image
- Better support for multi-state buttons
- Transparencies (woohooo)
- Buttons affecting properties actually change the property (you will only see the change on next webremote refresh)
- JSON set property value (setPV) via http get or post

Usage has not changed... ?Theme=<your theme>&Refresh=<time in milliseconds>

As always, feedback is appreciated. Screenshots of themes/remotes are ideal. And I absolutely need bug issue feedback to continue to improve and work on the webremote.

Next on the todo list...
- Edit boxes
- Slider controls
- Expanded browser support

Thanks
Tim

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

If this is the first time trying the plugin, follow these instructions...
Download the zip file...
1) Copy the dll to Housebot plugins/devices directory.
2) Copy the help file (.chm) to the Housebot help directory.
3) Restart Housebot.
4) Add a device, you should see the HB Web Server.
5) Set the "Server Running" property to yes.

If you now point your browser to the your IP and specified port (5025) you should get a directory listing.

Most errors are logged in the device log. The exception to this, are errors where the web server won't start. Those are logged in the file only. The Access Log property will show you every web page/resource accessed.

If you are having trouble, double check the IP Access Control list. The default is to deny the internet/every IP, then add in 192.168 networks (typically home network addressing) and the local PC/loopback (127.0.0.1).

All of the properties are described in the help.
Attachments
hbwebserver0327.zip
HB Web Server & webRemote March v7
(176.53 KiB) Downloaded 1454 times
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

Downloaded, replaced DLL in Devices folder, Help file in the help folder. Using Firefox, accessed my "primary" theme. It consistently crashed the HB server. Tried two other themes - they never loaded (displayed), but did not crash the HB Server. Accessing the 5025 port only does display the dir listing. The "killer" theme/panel does have a dynamic image on it, as well as transparency. Attached is the error log file.
Attachments
hbWebServer_errors.zip
(1.74 KiB) Downloaded 1417 times
Steve
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

Re: webRemote/Housebot WebServer - March Release

Post by Timoh »

Hi Steve,
Did it get past the dependencies load page?
Do you get your xml when you try &ThemeXML=<theme name>

Typically I'm seeing crashes because of bad theme XML processing. Trying to access a node or value that doesn't exist... ie: Bad checking on my part.

Edit: I've reproduced your issue. I still had you xml from last debug session in January. It crashes my server too.... I'll take a look.

Edit #2: The last xml you sent me was just a snippet. After some proper structuring, it renders the xml ok. That being said.... it still points me in the right direction that my xml processing is not great.

Edit #3: Can you try running the xml straight through firefox? ie: click on the <yourtheme.xml> file in directory listing via the webserver.

Tim
maze42
Member
Posts: 28
Joined: Sat Aug 07, 2004 11:30 am
Location: Sweden

Re: webRemote/Housebot WebServer - March Release

Post by maze42 »

Just added the March release of WebServer on a fresh HouseBot installation. The webserver are running and I am trying to connect to the only themes I have at the moment, the "Sample Themes". I am using Chrome and get the error below . The rest of the page is blank.
Error when opening Sample Theme
Error when opening Sample Theme
ScreenDump.JPG (21.26 KiB) Viewed 17892 times
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

Tim, this is what was returned when I clicked on the XML in the dir listing:

XML Parsing Error: not well-formed
Location: http://192.168.1.120:5025/June06-2.xml
Line Number 428, Column 310: <Button ACT_PRESS="0" D_ID="173" FNT="Wingdng3" FNT_CLR="00ffffff" FNT_CSET="2" FNT_IT="0" FNT_SZ="22" FNT_UL="0" FNT_WT="400" I_FILE="THC Jukebox\THC-button-blue-plastic-small.png" L_POS="" L_TYPE="Rectangular Button" P_ID="452" P_VALUE="PlaylistPageDown" REP_DELAY="0" REP_INT="0" REP_P_VALUE="" TEXT="�" TP_CLR="00ff00ff" TYPE="SPC" X="120" X_OFFSET="9" Y="228" Y_OFFSET="1" ZORDR="54"/>
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------^

Have not tried the "&ThemeXML=<theme name>", I don't know where that fits in the URL and cannot - yet - access the help file. Apparently a local browser security issue.

edit: I can send you the entire XML if you think that'll help.
Steve
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

Re: webRemote/Housebot WebServer - March Release

Post by Timoh »

Thanks Maze42. Only Firefox is supported for testing right now, so no surprise Chrome throws an error. It would have been nice if it did work though. Once I get over the bug fixes for this release, I'll probably start to look at expanded browser support.

Thanks Steve. I suspect that XML is enough to trigger a crash in my HB. I'll confirm later. The ?themeXML=... can go instead of ?Theme...&Refresh... I made type before between & and ?. So to test your XML it is 12.168.1.120:5025/?ThemeXML=....

But... I have just replaced the zip file in the first post... It should now throw a similar error for XML parsing as FireFox, the erroneous line, and not crash HB.


Thanks in advance.
Tim
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

I downloaded the updated March 7 DLL. True - no HB crash. Just this: Housebot JS client 2012016 then nothing.

Also, tried the ThemeXML=<theme file>. It delivers essentially the same msg as clicking on the XML file in the dir listing.

Keep up the good fight.
Steve
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

Re: webRemote/Housebot WebServer - March Release

Post by Timoh »

Found the problem. It had to do with the character encoding for your Wingding font. Fixed the problem, but...

Wingdings won't be supported. Wingdings is very Windows centric font... Most other OSes will not have wingdings installed. Reading some blogs about it, even firefox on windows will have trouble displaying wingdings withoutchanging some settings. And pretty much forget it working on phones & tablets.

It's going to be one of those limitations of the webRemote. Best bet is to design a webRemote only theme with no wingdings, or remove them from the theme. It's a bit of testament as to the age of HB... Born in an era when web apps didn't exist, IE was king of the browsers, and you could get away with stuff like that.

Tim
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

I'll find (?) and remove the wingdings, re-try and report back. Thanks for investigating.
Steve
maze42
Member
Posts: 28
Joined: Sat Aug 07, 2004 11:30 am
Location: Sweden

Re: webRemote/Housebot WebServer - March Release

Post by maze42 »

New test, this time with Firefox (ver 10.0.2). I get the same "error" as Steve Horn but my HouseBot also crash....
ScreenDump.JPG
ScreenDump.JPG (30.89 KiB) Viewed 17875 times
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

Re: webRemote/Housebot WebServer - March Release

Post by Timoh »

Maze42 & Steve... I've added in some more debugging into the webRemote client. Download the file from the original post again and drop the dll into the right folder. (Steve, help file is HB web device help, not web help.)

Try your theme with &Debug=true at the end. It will open another window and give you reasons for theme load failure or success... As well as how the javascript is drawing the theme.

Let me know.

Thanks
Tim
maze42
Member
Posts: 28
Joined: Sat Aug 07, 2004 11:30 am
Location: Sweden

Re: webRemote/Housebot WebServer - March Release

Post by maze42 »

HouseBot didn´t crash this time :-) but there are still errors when i try to connect. See screen dump below. Hope this will help.
ScreenDump.JPG
ScreenDump.JPG (50.42 KiB) Viewed 17862 times
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

After removing wingding fonts:

Requesting XML
Error reading Attributes. <Button ACT_PRESS="0" ADJ_CLR="00000080" D_ID="173" FNT="Arial" FNT_CLR="001a1a1a" FNT_CSET="0" FNT_IT="0" FNT_SZ="16" FNT_UL="0" FNT_WT="700" I_FILE="THC Jukebox\THC-button-blue-plastic-med.png" L_POS="" L_TYPE="Rectangular Button" P_ID="452" P_VALUE="Delete Playlist Item" Q"" TP_CLR="00ff00ff" REP_DELAY="0" REP_INT="0" REP_P_VALUE="" TEXT="Delete" TP_CLR="00000001" TRAN_CT="0" TYPE="SPC" X="7" X_OFFSET="-1" Y="331" Y_OFFSET="-1" ZORDR="51"/>
-----END LOAD-----

Note the Q""
I located that in the source XML with an external editor, deleted it, and reran. Got the same error.So I deleted the actual button and reran. Got the above. It was found on another button. It looks out of context for XML in the theme. i.e. no parameter=value syntax. Seems to be being created by the theme editor, but what do I know...

edit: I added the deleted button control back in and then checked the XML. Same Q"" there. Have no idea what it means or whether it affects your webserver code parsing.
Steve
Timoh
Advanced Member
Posts: 260
Joined: Thu Feb 02, 2006 12:56 pm
Location: Montreal - Canada

Re: webRemote/Housebot WebServer - March Release

Post by Timoh »

Maze42,Steve, Both are running into the same issue, and I suspect the right way to fix it is with a call out to Scott for dive into the theme editor code/bug fix. The current windows Remote is a forgiving on the XML theme file, and can tolerate badly formed controls to certain degree. The webRemote can not.

Maze42, specifically, that is bug in the sample theme that exists in all new HB installs. I fixed it manually with a text editor. I did try modifying the text in theme editor for the control and re-saving to no avail. You need to remove the Main1" button."

Steve, same kind of thing... Somewhere along the line, the theme XML has gotten mangled. The webRemote only reads. HB theme editor writes, so I'm not sure if that was/is the source. Maybe Scott can shed some light. The only way to fix it I know of, is to go through and fix manually with text editor. There could be multiple instances of Q"" (or some other malformation) which is why the webRemote gave you the error even after deleting the button.

I will take a look/think about it over the weekend, to see if there is a way I can be less strict on the XML tools and/or automatically clean up the xml before sending it out to the webRemote.

Tim
Steve Horn
HouseBot Guru
Posts: 757
Joined: Wed Apr 02, 2003 8:10 pm
Location: Pelham AL

Re: webRemote/Housebot WebServer - March Release

Post by Steve Horn »

After deleting the Q"" entries (3) with a text editor and saving, I got this:

Requesting XML
Error parsing Element. <Button ACT_PRESS="0" ADJ_CLR="00000080" D_ID="173" FNT="Arial" FNT_CLR="001a1a1a" FNT_CSET="0" FNT_IT="0" FNT_SZ="16" FNT_UL="0" FNT_WT="700" I_FILE="THC Jukebox\THC-button-blue-plastic-med.png" L_POS="" L_TYPE="Rectangular Button" P_ID="452" P_VALUE="Delete Playlist Item" TP_CLR="00ff00ff" REP_DELAY="0" REP_INT="0" REP_P_VALUE="" TEXT="Delete" TP_CLR="00000001" TRAN_CT="0" TYPE="SPC" X="7" X_OFFSET="-1" Y="331" Y_OFFSET="-1" ZORDR="51"/>
-----END LOAD-----


I can't see any offending non-XML code (i.e. no Q"")... can you?
Steve
Post Reply