[RELEASE] HousePanel Dashboard for SmartThings and Hubitat

Honestly, I’m not sure how I would do that on my local server. I don’t need to putty into it (SSH) or FTP since it is local. After Googling I have found a source that says that I don’t need to set permissions on the htdocs folder because they are already set. If this isn’t the case, how would I go about setting the proper permissions on a local server for that folder?

Navigate to the folder.

From command line

chmod 777 +R I believe.

Unfortunately, chmod appears to be an invalid function in Windows 10. However, I did use:
icacls “C:\Apache24\htdocs\HousePanel” /grant Users:F

which apparently takes the place of chmod but still no change in behavior in HousePanel.

Mm thought you said you we’re setup on a pi. My bad. You are chmod will not do you any good in windows.

I am sure kewashi will chime in to help when he has a minute.

It will work great if you add a Unix-like-shell to Windows (there are several… I’m working fine with http://www.mingw.org).

Good point. If I am not mistaken is there not some sort of Linux baked in with windows 10?

Yes… Ever since NT, actually.

It’s an optional Feature to install: Unix Services for Windows… Though perhaps renamed / packaged in Windows 10

https://support.microsoft.com/en-us/help/323966/how-to-install-services-for-unix

Thanks, I went ahead and installed a Unix-like-shell, changed directory to C:\Apache24\htdocs\HousePanel and then used the command chmod 777 +R and I no longer get a message that it is an invalid function. However, now it says cannot access +R because no such file or directory. I also tried to
chmod 777 C:\Apache24\htdocs\HousePanel and it didn’t throw an error but doesn’t appear that it helped any with HousePanel and the issue I am having.

Enter: chmod --help or chmod -? to possibly get specific usage information for the variation of chmod included in the Unix shell you are using.

I think I might have gotten it backwards. Chmod -R 777?

1 Like

That is more correct. Options go before the desired mode(s) and directories / files (if any).

Thanks, that helped and now I am confident that the proper permissions are given to the folder. However, I went ahead and rebooted everything and HousePanel still looks the same and no ST devices showing up. Is there somewhere I can/should look on the server to see if changes are getting saved over or a file for config that I might be missing?

Try to authorize again?

Glad you have it working and that you are happy with it.

I haven’t tried since I updated my hub. Quite honestly I haven’t tried too hard since I’m so deeply invested in SmartThings apps and I have so many devices the thought of switching over more than 120 makes my head spin. One day I will tackle it.

I haven’t been good about staying in touch on the Hubitat forum. That will be something I will work on doing more of in the future.

Your assumption is correct. These are the only tokens you need to set in the clientinfo.php file. You also have to have the ST_WEB set properly if you are not in the US. I will respond to your other posts separately.

For starters, thanks so much for your patience working through the file permissions. This however is not the problem because the permissions are only needed to save your tiles from session to session in the hmoptions.cfg file. Without it the tiles should still show up. So the problem may be that the default tile setup feature isn’t working properly anymore. It has been ages since I have had to try it out. I will test it tonight and report back. In the mean time, here are a few things to try.

  • First - confirm that you do in fact have the settings right. Navigate in Windows to where your html documents are stored and go to the housepanel subdirectory. Check to see if a file is there named “hmoptions.cfg”. Right click on it to see if the security settings are set to read/write.

  • Next open a web browser to the SmartThings API and navigate to the Logs tab. Keep this window open and visible while you refresh your housepanel page. Don’t just reload the page - hit the “Refresh” button. Let me know here what if any errors you see.

  • If you have an hmoptions.cfg file, examine its contents. It should contain a multi-dimensional json array that includes a listing of all authorized things in your smart home.

  • Finally, edit your HousePanel.groovy file in the API and uncomment the log.debug statement in the getThings and getSwitches routine so you can see what that is doing. These are lines 366 and 470 in the latest release. Repeat the log experiment above. This will now show you more information. Report what you see here.

After seeing what this reports I will help you get it going. Thanks again for trying HousePanel and for your patience.

I just tested it by deleting my hmoptions.cfg file and it worked fine. The code re-created a default file and included all of my authorized tiles. I should also note that the code now sets the chmod using the php built-in chmod command that works perfectly well on windows and Linux. The only requirement is that the web browser has permission to set the file mode, which means the folder needs to be owned by the web browser user or it needs to have a 777 mode. The owner of the default file will be set to the web browser user and the mode set to 644 (owner = read/write), so it is no longer required to be 777. Anyway, it won’t hurt to do this.

You don’t have to do this anymore. Just grab the latest version. i added it back in as the default behavior because it doesn’t hurt to have more debug info than less.

yea, but I wouldn’t use chmod -R
This sets everything recursively in the directory, which isn’t needed. At most you need these two commands:

 chmod 777 .
 chmod 777 hmoptions.cfg
 chmod 777 customtiles.cfg

The “dot” sets the current directory permissions.

1 Like

Thank you all for the assistance so far. Here are my findings to your questions:

  • I do indeed have an hmoptions.cfg file in the directory

  • While I am in Live Logging in the ST API and I go ahead and authorize a couple of devices in HousePanel, no errors are thrown for HousePanel:
    68763700-ef03-4f4c-83aa-ecae98c76ac7 5:33:41 PM: debug Installed with settings: [myswitches:[On Call, Coffee Pot Plug]]
    However, one gets thrown for Webcore so I’m not sure if that is part of this issue or I have a piston that is wonky.
    Hitting the “Refresh” button in HousePanel does not create an error in LiveLogging

  • hmoptions.cfg file does not contain any of the two authorized things in my SmartHome. I tried to authorize everything yesterday with no results and just trying to work a smaller subset today (a smartplug and a switch)

  • No problem. I went ahead and did this but where should the additional logging be? In ST IDE? If so, I don’t see anything different in there than what I saw before, other than another Webcore error so I’m thinking HousePanel is stumbling over my Webcore as well.

Additionally, I did set the ST_WEB property to “graph-na04-useast2.api.smartthings.com”. Let me know if I should change that back. I changed it because I have had issues with the general ST web address in the past. However, I did test this without changing the ST_WEB property last night and same result.

I think this recaps everything so we are down to one post for answering now.