iMisterhouse Installation (en)

1. Installation of the needed file Webservice.pm and the patch of „Generic_Item.pm“

patch –p0 <Generic_Item.patch
2. Set a password for remote access to your Misterhouse Server

Change to the Misterhouse Directory and create a user with:

bin/set_password –user imisterhouse –password mypass

Add the following line to your mh.private.ini (To specify which IP Ranges allowed to connect. The following sample allows the Localhost and all clients in 10.80.29.x to connect

password_allow_clients = 127\.0\.0\.1,10\.80\.29\..+

3. Create a Menu Structure for your Objects

iMisterhouse is designed to display a two level Menu structure. In a later version I will implement the option to allow deeper menu levels as well (Drilldown menu), but currently a 2-level structure is compulsory. You have to create the Group objects on your Misterhouse server and add the Objects to the Groups in your Misterhouse Code directory. Because of some System issues you have to create a Top-Level Group called „$Main“. Following you find a sample of a Group Configuration:

# mh/code/Z-Groups.pl
# Creation of Master Groups and the assignment of Sub-Groups
# The Sub-Groups can be created Manual or automatically through
# a Table file. e.g. Eibitems.mht 
#
#
# $Main |- $gEG |- $Gaestebad
#       |       |- $Heimkino
#       |       |- $Wohnzimmer  
#       |
#       |- $gKL |- $Keller
#       |
#       |- $gOG |- $Bilardzimmer
#               |- $Bad
#               |- $Buero
#               |- $Gang
#               |- $Klo
#               |- $Schlafzimmer
#               |- $Kleiderschrank
#               |- $Treppenzimmer

# Ground Floor
$gEG = new Group();
$gEG -> set_label('EG');		# Display Name for Top Group
$gEG -> set_icon("groundfloor");	# Icon for Top Group
$gEG -> add($Gaestebad);		# Assignment of Sub Group to Top Group
$gEG -> add($Heimkino);
$gEG -> add($Wohnzimmer);

$Gaestebad->set_icon("bathroom");
$Heimkino->set_icon("tv");
$Wohnzimmer->set_icon("livingroom"); 

# Upper Floor
$gOG = new Group();
$gOG -> set_label('1. Stock');
$gOG -> set_icon("upperfloor");
$gOG -> add($Bilardzimmer);
$gOG -> add($Bad);
$gOG -> add($Buero);
$gOG -> add($Gang);
$gOG -> add($Klo); 
$gOG -> add($Schlafzimmer);
$gOG -> add($Kleiderschrank);
$gOG -> add($Treppenzimmer);

$Bilardzimmer->set_icon("partyroom");
$Bad->set_icon("bathroom");
$Buero->set_icon("office");
$Gang->set_icon("floor");
$Klo->set_icon("toilet");
$Treppenzimmer->set_icon("stairs");
$Schlafzimmer->set_icon("sleepingroom");
$Kleiderschrank->set_icon("dressingroom");

# Cellar
$gKL = new Group();
$gKL -> set_label('Keller');
$gKL -> add($Temperaturen); 

$gKL->set_icon("basement");
$Temperaturen->set_icon("thermomether");

# Creation of the compulsary group $Main and assignment of the Groups (menu Level1)
$Main = new Group();
$Main -> add($gEG);
$Main -> add($gOG);
$Main -> add($gKL);

The configuration above will create a menu structure as you see in the following Screenshot:

iMisterhouse Sample

4. Assign Icons and Displaynames to your Objects

For the assignment of Icons and Display names you have two options:

  • Add the definition to the MHT File, e.g. Eibitems.mht:
EIB1,	0/0/1,			Media_WZ_TV,			Wohnzimmer|Heimkino,			label=Fernseher|R|icon=tv
  • Add it in the MH Code at your Objects:
$gKL -> set_label('Keller');
$gKL -> add($Temperaturen);

All in the application availible Icons you find at Iconliste. If you need additional Icons, please leave me a Message and i will try my best to integrate it to the next Version.

5. Version of SOAP::Lite

I discovered that older versions of SOAP::Lite responds differently on queries than recent versions. So if you have trouble to connect to your misterhouse server, please try to upgrade your module to at lease SOAP::Lite/Perl/0.714.

6. Troubleshooting

If you have problems to connect to your Misterhouse Server, you could install the following two Debug Versions of the Perl files, which produces much Debug information. Please send me the Debug output and I will be able to help to Identifiy the problem and help you. Install in your MH Lib directory:

The following Configuration Settings can have an effect on the functionallity of iMisterhouse. For the description of the options please see the Misterhouse Web Site https://misterhouse.sourceforge.net

suppress_group_listing=Beleuchtung,Jalousie,Netzwerk,Netzwerk,Heizung,Heizung,Sonstiges
html_dir=$config_parms{MISTEREIB}/web
http_address=0.0.0.0
http_port=8080
code_dir=/usr/local/misterhouse/ernst-code
lib_dir=$config_parms{MISTEREIB}/lib
data_dir=/usr/local/misterhouse/ernst-data
password_allow_clients = 127\.0\.0\.1,10\.80\.29\..+