#
# Configuration variables for MisterHouse programs
#
# $Date$
# $Revision$
#
# Change log is at the bottom
#
# Notes:
#
# Rather than edit this file, create your own 'mh.private.ini' file
# and override just the values you need to. Then set the mh_parms
# environment variable to point to this file. By default it will look
# for it in mh/bin/mh.private.ini. You can move this private parm
# file elsewhere by setting the env. parm mh_parms to point to it:
#
# On Windows systems, add this to your autoexec.bat
# set mh_parms=c:\misterhouse\mh.private.ini
#
# Or set up a batch file with something like this:
#
# set mh_parms=c:\misterhouse\mh.private.ini
# c:
# cd \misterhouse\bin
# mh
#
#
# On linux systems, add something this to your /etc/profile:
# export mh_parms=/prog/misterhouse/mh.private.ini
#
#
# The idea with mh_parms was to allow you to put your private parms in a
# directory separate from the main mh distribution, so you could easily point
# to and upgrade to different mh versions. Here is what I have:
#
# /misterhouse/mh.private.ini (has just a the few entries I changed)
# /misterhouse/bruce (my code)
# /misterhouse/data (my data)
# /misterhouse/mh (the mh distro)
#
# Note that you should use /, not \, on paths, on Windows, just like Unix.
#
# mh_parms can be a comma delimited list of files
#
# See the 'Coding your own event' section of mh/docs/install.html for
# more info
#
# By changing the following parms, you can keep the mh distribution files
# separate from your local files (makes upgrades easier):
# - code_dir
# - data_dir
#
# You can also override any of these parameters from the command
# line. For example:
#
# mh -code_dir /prog/Misterhouse/my_code
# -data_dir /prog/Misterhouse/my_data
#
#
# Comments here are prefixed with #
# Help text, used by the web based ini editor, is prefixed with @
#
# Category listing in order of appearance in this file
# Directories
# Sound
# Web
# Security
# Location
# Server
# Voice
# Internet
# Music
# Misc
#
# ******************************************************************************
# Category = Directories
@ Point to the directory that has the user code files in it
@ Notes:
@ - $Pgm_Root is the directory that mh is installed in (e.g. x:\misterhouse\mh)
@ - code_dir_common points files that would likely be common to all mh uses.
@ - code_dir can be a comma delimited set of paths.
code_dir = /projects/misterhouse/code
code_dir_common = $Pgm_Root/code/common
@ Point to which code files to use.
@ code_select picks the members in code_dir_common to run.
@ code_unselect picks members in code_dir to deactivate.
code_select = code_select.txt
code_unselect = code_unselect.txt
@ Use this if you want to create or override any .pl lib files
@ You can keep .pm files in your code_dir, but if you have any .pl files
@ that are not normal mh .pl user code files, you need to point to them here.
lib_dir =
@ Use this if you want to point to your private version of any file that
@ normally gets executed from the bin/mh dir (e.g. get_weather).
bin_dir =
@ Point to the directory that has the user data files (e.g. logs, TV database)
@ Note: $Pgm_Root is the directory that mh is installed in (e.g. x:\mh)
data_dir = /projects/misterhouse/data
@ Point to the directory that has the user sound files.
@ sound_dir_common has the sounds shipped with mh.
sound_dir = /projects/misterhouse/sounds
sound_dir_common = $Pgm_Root/sounds
@ To allow for logging of data into a RRD (Round Robin) database,
@ install the perl RRDs.pm module, and fill in the rrd_dir parm.
@ RRD is available from: http://ee-staff.ethz.ch/~oetiker/webtools/rrdtool
@ Useful for making nice graphs of any kind of data.
rrd_dir=
@ The location to store your flat file data (blank disables) [F:/Misterhouse286/data/rrd/wmr928_hist.csv]
weather_data_csv =
@ The location to store your round robin db file [F:/Misterhouse286/data/rrd/wmr928.rrd]
weather_data_rrd =
@ The location where the graphs are to be stored [$config_parms{data_dir}/rrd]
weather_graph_dir =
@ The Footer to be used on all the graphs [Last updated $Time_Date, copyright www.domotix.net]
weather_graph_footer =
@ How often in minutes to update the graph [10]
weather_graph_frequency =
@ Skip generation graphs for specific periods, blank to generate graphs for all periods
weather_graph_period_skip =
@ Skip generation graphs, blank to generate all the graphs, possible values : tempout tempin windspeed winddir raintotal rainrate press humout humin
weather_graph_skip =
@ Customize weather graph colors. Values should be in the form of 6 hex digits (rrggbb). E.g. White is ffffff and black is 000000. See mh/code/common/weather_rrd_update.pl for the complete list of colors and their forms. E.g. to change the color for the apparent temperature, which is colorapparent in weather_rrd_update, you would set the following variable
weather_rrd_color_apparent=
@ Do you want to natively generate GIFs or PNGs? Note that version 1.2+ of rrdtool
@ doesn't support the generation of GIFs. Use weather_convert_png_to_gif to convert
@ generated PNGs into GIFs if you are using version 1.2+ of rrdtool and need GIF support
weather_rrd_format = PNG
@ Conversion of PNGs to GIFs. If this is defined, then any .png files in weather_graph_dir
@ will automatically have .gif copies made. This is useful if you have an Audrey, as
@ Audrey doesn't suport PNGs
@ The program defined by weather_convert_png_to_gif will be called with two parameters
@ The first parameter is the full pathname of the PNG.
@ The second parameter is the full pathname of the GIF.
@ On Linux boxes, the "convert" program in the ImageMagick package works well
weather_convert_png_to_gif=
@ Unit Of Measure for barometric pressure ( mb, [in])
weather_uom_baro = in
@ Unit Of Measure for rain accumulations ( mm, [in])
weather_uom_rain = in
@ Unit Of Measure for rain events ( mm/hr, [in/hr])
weather_uom_rainrate = in/hr
@ Unit Of Measure for the temperatures ( C, [F])
weather_uom_temp = F
@ Unit Of Measure for the wind speed ( ms, kph, [mph])
weather_uom_wind = mph
@ Tells the internet weather modules which weather elements to download
@ Valid choices are:
@ all
@ TempOutdoor
@ DewOutdoor
@ WindAvgDir
@ WindAvgSpeed
@ WindGustDir
@ WindGustSpeed
@ WindGustTime
@ Clouds
@ Conditions
@ Barom
@ BaromSea
@ BaromDelta
@ HumidOutdoorMeasured
@ HumidOutdoor
@ IsRaining
@ IsSnowing
@ RainTotal
@ RainRate
weather_internet_elements = all
@ Tells specific internet weather modules which weather elements to download.
@ If these aren't set, then weather_internet_elements will be used instead.
@ See weather_internet_elements for a list of possible elements.
@
@ for internet_weather.pl
@ weather_internet_elements_noaa=
@
@ for weather_aws.pl
@ weather_internet_elements_aws=
@
@ for weather_metar.pl
@ weather_internet_elements_metar=
@ Tells the common weather code whether you want to use the Humidex or Heat Index system
@ Set to 0 to use Humidex, 1 to use Heat Index
weather_use_heatindex=0
@ Copy the default mh/data/organizer files to your own data dir and point to it here
@ If you want to be emailed tasks, fill in the organizer_email field for each AssignedTo name.
organizer_dir = $Pgm_Root/data/organizer
#rganizer_dir = $config_parms{data_dir}/organizer
organizer_email = fred => fred@flintstone.org, bambi => bambi => flinstone.com
# ******************************************************************************
# Category = Sound
@ This is the program used to play sound files on unix. If you don't have a
@ sound card or don't want sound files played, set this to blank.
@ If you have IBM Viavoice TTS engine installed, set this to vv_tts to
@ redirect sound files so they are single threaded with the rest of the sounds.
sound_program=aplay
@ Set this to 1 to use fork, rather than system calls, when calling sound_program
sound_fork=
@ Set these to a wav file if you want to have an sound played before every
@ speak and/or play. You can use blank wav files if all you want is delay.
sound_pre_speak=
sound_pre_play =
@ Set this to the location of the event_sounds.txt file that you wish to use
event_sounds_file=$Pgm_Root/data/event_sounds.txt
@ Set this to errors, to avoid speaking when mh finds code errors
no_speak =
@ Set this to 0 if you want to enable the remote web wav function
webmute = 1
@ Use this to control how the web server delivers sound files if webmute is off.
@ embed will play them in the background, bgsound will use the BGSOUND tag,
@ frames will use an invisable frame, and link will simply present a link to the wav file.
@ client will try to detect the best option for various browsers
html_wav_format = embed # Default
html_wav_format1 = bgsound # Audrey
html_wav_format3 = link # Mozilla/Netscape
@ You can specify the default to any speak parm here by prefixing
@ it with speak_. Here are a few examples:
speak_engine=
speak_volume=
speak_voice=
speak_to_file=
speak_compression=
speak_length=500 @ Text will be truncated to this many characters before speaking
@ Use this to correlate generic voice names to specific names, or
@ to make easier to use voice names.
voice_names = female=>Microsoft Mary, male=>Microsoft Mike, male1=>Microsoft Mike, male2=>Microsoft Sam,
Mary=>Microsoft Mary, Mike=>Microsoft Mike, Sam=>Microsoft Sam
# These are good for AT&T and MS voices
#voice_names = female => Crystal16, female1 => Crystal16, female2 => Microsoft Mary,
# male => Mike16, male1 => Mike16, male2 => Microsoft Mike, male3 => Microsoft Sam,
# Mike => Mike16, Crystal => Crystal16,
# Mike2 => Microsoft Mike, Sam => Microsoft Sam, Mary => Microsoft Mary
# These are some Cepstral names (may need to drop the Cepstral prefix)
# male => Cepstral Frank, female => Cepstral Emily,
# Damien => Cepstral Damien, Duchess => Cepstral Duchess, Duncan => Cepstral Duncan,
# Emily => Cepstral Emily, Frank => Cepstral Frank, Linda => Cepstral Linda,
# Robin => Cepstral Robin
# These are some NeoSpeech voices
# Paul => NeoSpeech Paul, Kate => NeoSpeech Kate 16k,
# These are good for Festival
#voice_names = male=>male1, mike=>male1, sam=>male2, elder_male => male3,
# mary=> female
# These are values for ViaVoice
#voice_names = male => 1, female => 2, child => 3, elder_female => 7, elder_male => 8
@ Use the speak_apps and display_app parms to override the parms used in speaking and displaying various applications
speak_apps_default = email => voice=male rooms=all, deep_thought => voice=next,
tagline => voice=next, chatbot => voice=female,
top10 => voice=male, timer => voice=male rooms=all,
tv => voice=female rooms=all, phone => rooms=all_and_out mode=unmuted,
notice => rooms=all, goofy => rooms=all,
admin => voice=female,
router => voice=female no_chime=1, system => mode=mute, dvd => mode=mute, frog => voice=female, frog => chime=frog force_chime=1, cashier => chime=cash_register voice=female
# *** Why is this one set? Seems like speak_apps would be set by the user in private INI file
# *** Are these defaults to restore factory settings in an emergency or what?
# *** Seems like we only need one speak and one display parm in here (not two each.)
speak_apps = email => voice=male rooms=all
display_apps_default = security => font=small, clock => color=amber mode=hold font=small, control => window_name=control append=top color=amber mode=rotates window_name=control, phone => image=phone color=red mode=rolldown, shutdown => mode=hold color=yellow, startup => mode=welcome color=green font=small, error => color=red mode=cherrybomb, sunrise => color=yellow mode=sparkle font=small image=sunrise, sunset => color=yellow mode=sparkle font=small image=sunset,mode => color=green mode=rolldown font=small, email=> image=mail mode=spray color=brown, music => image=music color=darkred font=small mode=auto, weather => mode=rotates color=darkgreen, holiday=>mode=fireworks image=usa, temperature=> image=temperature mode=auto color=rainbow1, aol=>image=aol font=small color=orange mode=sparkle, aim=>image=aim font=small color=orange mode=hold, icq=>image=icq font=small color=brown mode=hold, stocks=>image=stocks mode=rotates color=amber, dvd=>image=dvd, movie=>image=dvd font=small mode=auto, frog=>color=green mode=rolldown font=small image=temperature, tv => image=tv color=amber font=small mode=rollup, volume => image=volume, news => mode=rotates color=orange, robot => mode=rolldown image=robot, wunderground => image=wunderground, pc => image=pc color=darkgreen, goofy => image=smiley color=amber, network => image=network color=darkred, cashier => color=green image=money mode=fireworks
display_apps =
# ******************************************************************************
# Category = Web
@ Point to the html file that is used for the web interface.
@
@ - See mh/docs/mh.*, section 'Customizing the Web Interface' for more
@ documentation
@
@ You can have browser specific html_* parms by using a numeric suffix.
@ For example, see the html_file1, html_cols1, and html_table_size1 parms.
@ Use the html_browser_formats parm to pick which browser gets which format.
@
@ Note: As with many mh parms, if you want to quickly try most of the following
@ you can use the mh reload button/function, then refresh your webpage. You do
@ not have to exit mh.
@
@ - html_dir points to the default dir (i.e. what you get with
@ http://localhost:8080/)
html_dir = $Pgm_Root/web
@ - html_alias* Points to other directories that are not subdirectories of
@ html_dir. Use _alias#_* to point to additional directories
@ to look in. Last one wins. So, for example, to override
@ some of the icons in mh/web/graphics, use html_alias2_graphics
@ as a 2nd graphics parm.
@ Another example, to override some of the pages in mh/web/ia5/security,
@ use 'html_alias2_ia5 = /misterhouse/web/ia5', then create
@ /misterhouse/web/ia5/security with the file(s) to override.
#tml_alias_tv = $Pgm_Root/web/tv
html_alias_tv = $config_parms{data_dir}/tv
html_alias_data = $config_parms{data_dir}
html_alias_rrd = $config_parms{data_dir}/rrd
html_alias_email = $config_parms{data_dir}/email
html_alias_web = $config_parms{data_dir}/web
html_alias_cache = $config_parms{data_dir}/cache
html_alias_docs = $Pgm_Root/docs
html_alias_graphics = $Pgm_Root/web/graphics
#tml_alias2_graphics = c:/misterhouse/graphics
html_alias_comics = $Pgm_Root/web/comics
html_alias_code = $Pgm_Root/code # So we can browse from code_select.pl
html_alias_lib = $Pgm_Root/lib # So we can browse from code_select.pl
html_alias_user_code = $config_parms{code_dir} # So we can browse from code_unselect.pl
@ Recognized agents: MSIE (Internet Explorer), MSCE (Windows CE), Audrey (3COM appliance), Mozilla (Netscape)
@ Opera, and Zaurus.
@ You can override this format with web_format.
@ html_browser_formats = MSCE=>1,Mozilla=>2
html_browser_formats = MSCE=>1,Audrey=>2,Photon=>2,Mozilla=>3,Netscape6=>3,Zaurus=>1
web_format = # (Set to 1 to pick MSCE)
@ Specify sizes of browsers screens, so code can pick format/font size accordingly
html_browser_sizes = MSCE=>800,Audrey=>640,Photon=>640
@ - html_file points to the default file
#tml_file = mh1
#tml_file = mh2
#tml_file = mh3
#tml_file = mh4
#tml_file = mh4
html_file = /ia5/index.shtml
html_file1 = /ia5/index.shtml # Windows CE browsers default (e.g. Compaq IA5 and Aquapad)
html_file2 = /ia5/index.shtml # Audrey
@ - html_default points to the member names used when the URL points to a
@ directory.
html_default=index.shtml,index.html
@ - html_style* points to the Style sheets used to control fonts/colors
html_style =
html_style_control =
html_style_tk =
html_style_speak =
html_style_print =
html_style_list =
# Allow Windows CE browsers (MSCE=>1) to use local epods style sheets
html_style1 =
html_style_control1 =
html_style_tk1 =
html_style_speak1 =
html_style_print1 =
html_style_list1 =
html_style_category1 =
@ Used in listing Group, Item, and widget_entry lists
@ Use only 2 columns for small screens (Windows CE and Audrey browsers)
html_table_size = 2
html_table_size1 = 1
@ Turn the filenames column on/off in the Category command list.
html_category_filename=0
@ Turn the state_log column on/off in the Category command list
html_category_states=0
@ Turn icons on/off in the Category command list.
html_category_icons=1
@ Turn table borders on/off in the Category command list.
html_category_border=1
html_category_border1=0
@ Spacing between Category commands
html_category_cellsp=0
@ Use 2 columns for normal browsers
@ Use 1 column for small screens (Windows CE and Audrey browsers)
html_category_cols = 2
html_category_cols1 = 1
html_category_cols2 = 1
@ The number of characters needed before we switch
@ from links to a select dropdown list.
@ If you dislike dropdown lists, set this to 9999.
html_select_length=25
@ Refresh the speak/print logs every ## seconds.
@ Set to 0 to disable.
html_refresh_rate=60
@ Use this to enable the javascript popups for
@ Voice_Cmd set_info data and log data.
@ - Netscape users can set this to overlib_link to get dummy log,info link entries.
@ - Explorer users can set this to overlib and avoid the redundant log,info links.
html_info=overlib
#html_info=
@ The following can be used to enable IE MsAgent support
@ - script is under the html_dir directory (e.g. mh/web)
html_msagent_script =mh4/msagent_minijeff.html
html_msagent_script_vr=mh4/msagent_minijeff_vr.html
@ This is the target frame/window, used whenever speech results are requested
html_target_speech = speech
@ This points to the bottom status line used on some pages (e.g. photo and ia5 pages)
@ The default /bin/status_line.pl function supports these indicators:
@ minute, sun, sunrise, sunset, mode, email, weather,
@ wind, date, jclock1, jclock2, volume, and web_status_line
@ - sun auto-picks sunrise 2 hours after sunrise/set, otherwise sunset
@ - jclock1 and jclock2 are java clocks with seconds. jclock2 does not work
@ on Audrey, but it uses less space than the jclock1 form button.
@ - web_status_line will call a user defined &web_status_line function.
@
@ Here are the defaults for the parms that support values:
@ font=2
@ color=#cccdcc (default is set with the http_color_header parm below)
@
@ You can also specify a specific font type to use, like this:
@ font=2;serif
@
@ You can also create your own status line function. For example, copy your
@ version to c:/misterhouse/web/bin/my_status.pl and use thse overrides:
@ html_alias_usr = c:/misterhouse/web
@ html_status_line = /usr/bin/my_status.pl
@
@ The default html_browser_formats parm specifies:
@ ...line1 is for WinCE browsers
@ ...line2 is for Audrey browsers
@ ...line3 is for Netscape browsers
@ ...line is for all other browsers
html_status_line1 = /bin/status_line.pl?font=2&minute&mode&weather&wind&date&jclock2
html_status_line2 = /bin/status_line.pl?font=1&mode&weather&wind&date&jclock2
#tml_status_line3 = /bin/status_line.pl?minute&sunrise&sunset&mode&email&weather&wind&date&jclock1
html_status_line3 = /bin/status_line.pl?sunrise&sunset&mode&email&weather&wind&date&clock
html_status_line = /bin/status_line.pl?minute&sunrise&sunset&mode&email&weather&wind&date&jclock2
html_status_refresh = 60 @ How often the web status line is refreshed, in seconds
@ These colors are used by various ia5 pages
#tml_color_header = lightgrey
html_color_header = 9999CC # Light Purple (Lavender to those of cultured up-bringing)
@ http_port:
@ Use 80 if you want to use the normal web port (i.e. http://localhost)
@ If using something other than 80 (because you already have a web server
@ running), add :port to url (e.g. http://localhost:8080)
@ If you are having problems with this, you may want to try
@ a different port, in case a different service is using this port.
http_port = 8080
@ http_address:
@ Normally leave http_address blank, unless your box has multiple ip cards/addresses.
@ If you are not sure of the address, or if you want the program to respond
@ to multiple IP addresses, set this to 0.0.0.0 to listen to all addresses.
http_address =
@ If the mh http server pauses longer than this time (in seconds), a message will be logged.
http_pause_time = 2
@ This parm will turn on/off the web browser keyboard control for
@ the web menu pages. Note, these javascript controls only work on
@ IE and NS 6+
html_menu_keys = 1
@ The proxy parm is needed if your use a proxy to get to the internet.
@ Used get get_url (if get_url parm is set to useragent) and get_tv_grid
@ This overrides the env parm HTTP_PROXY
proxy =
@ http_server:
@ Used when generating urls that point to your server (e.g. get_tv_grid).
http_server = localhost
@ http_fork:
@ Set to 1 to enable forking when serving large web pages.
@ This helps avoid mh pauses, especially with remote/slow web clients.
@ If left blank, it defaults to off for win95 and 98,
@ on for nt, 2k, xp, and unix.
@ Set to memmap to use the MemMap module to speed serving of large files on Windows.
http_fork =
@ This is used to control the 'screen saver' feature of some (e.g. ia5)
@ web pages. Change the conten time and/or url values, or blank out to disable.
@ Example meta content:
@ content="600;url=/misc/photos.shtml
@ content="6;url=/clock
web_refresh =
@ These parms point to web pages links (used in the ia5 web pages)
# These are Ron's original links, for the Netherlands
#eb_href_yellowpages = http://www.goudengids.nl
#eb_href_whitepages = http://www.detelefoongids.nl
#eb_href_reverselookup = http://zoekopnummer.ath.cx/index.php
#eb_href_weather_local = http://www.meteoplaza.com/nl/freedata/banner/banner_first.jpg
#eb_href_weather_national = nlweather.html
#eb_href_tv = ../data/tv_danes/danes.html
#eb_href_tv2 = http://applic.portal.omroep.nl/gids/televisie.php
#eb_href_tv3 = http://applic.portal.omroep.nl/gids/strax.php
#eb_href_movies = ../data/kino.html
#eb_href_radio = http://applic.portal.omroep.nl/gids/radio.php
web_href_yellowpages = http://www.yellowpages.com
web_href_whitepages = http://www.whitepages.com
web_href_reverselookup = http://www.whitepages.com/find_person.pl?fid=p
web_href_news = http://www.foxnews.com
web_href_newsgroups = http://groups.google.com/grphp
#web_href_weather_local = http://radar.wunderground.com/data/nids/ARX19_0.gif
web_href_weather_local = http://www.wunderground.com/cgi-bin/findweather/getForecast?query=$config_parms{zip_code}
web_href_weather_local2 = http://www.weather.com/weather/local/$config_parms{zip_code}
web_href_weather_national = http://www.weather.com/maps/maptype/currentweatherusnational/index_large.html
# "Use this to set the destination of the My_MH button to your local intranet pages or domain
#eb_href_My-MH = /ia4/index.html
#eb_href_My-MH = /mh4/index.html
web_href_my_mh = /my_mh/index.html
# These use the verysimple scripts
web_href_contacts = /organizer/contacts.pl
web_href_tasks = /organizer/tasks.pl
web_href_calendar_month = /organizer/calendar.pl
web_href_shopping = /bin/shopping_list.pl
web_href_list_manager = /bin/ListManager.pl
# onthisday html is generated by news_onthisday.pl
#eb_href_calendar_history = /ia5/calendar/calendar.txt
web_href_calendar_history = /web/onthisday_pruned.html
# Use these if you have an yahoo account
web_href_calendar_today = http://calendar.yahoo.com/YYY:55840/srt:0/?v=61&t=1008513093
web_href_calendar_week = http://calendar.yahoo.com/YYY:58481/srt:0/?v=1&t=1008513093
#eb_href_calendar_month = http://calendar.yahoo.com/YYY:08742/srt:0/?v=2&t=1008513093
web_href_calendar_year = http://calendar.yahoo.com/YYY:03722/srt:0/?v=3&t=1008513093
web_href_calendar_addevent = http://calendar.yahoo.com/YYY:45796/srt:0/?v=42&POS=
web_provider = 70620
web_href_tv = /tv
web_href_tv2 = http://tvguide.com/Listings/index.asp?I=$config_parms{web_provider}&Zip=$config_parms{zip_code}
web_href_tv3 = http://tvguide.com/tv
web_href_movies = http://www.google.com/search?&q=movie%3A+$config_parms{zip_code}
# ... these all have problems on audry due to popups? :(
#eb_href_radio = http://www.live365.com
#eb_href_radio = http://broadcast.yahoo.com/music
web_href_radio = http://realguide.real.com/
# Set to blank to turn off the counter (used in ia5 page)
web_href_counter = /bin/counter.pl?default
@ These parms are used by the button2.pl script for generating web buttons on the fly
icons_dir = $Pgm_Root/web/graphics/icons
button_template = $Pgm_Root/web/graphics/blank_textbutton.png
button_text_color = 50,50,50
button_min_x = 4
button_max_x = 101
button_min_y = 2
button_max_y = 35
button_button_type = jpeg # possible choice are png, jpeg
#button_ttf = /windows/fonts/arialbd.ttf
#button_ttf_ptsize = 8.0
# ******************************************************************************
# Category = Photos
#
# These parameters are used to control the photo slideshow facility in
# Misterhouse. There are currently two ways to view the photo slideshows:
# with a web browser pointed to http://localhost:8080/bin/photos.pl and
# http://localhost:8080/bin/photo_search.pl, or on the screen of your
# Misterhouse server (using the tk_photos.pl common code script).
#
# Before you can use the photo slideshow facility, you must activate the
# photo_index.pl common code script. Then you can optionally resize your
# photos and then index them.
@ html_alias_photos points to the location of your photos. Usually,
@ these photos have been resized to the desired display size (see below).
@ The string "photos" in html_alias_photos is arbitrary, but should match
@ one of the directories listed in the photo_dirs parameter.
html_alias_photos = $Pgm_Root/data/photos
@ html_alias_photos_big points to the location of your full size original
@ photos. These photos can be automatically resized to the desired display
@ size using the "Resize new photo album pictures" voice command.
@ The string "photos_big" in photos_originals is arbitrary, but should match
@ one of the directories listed in the photo_big_dir parameters.
@ This is so you can setup multiple photo sets.
@ The photo slideshow web interface also includes a link to the high res
@ version.
@ The string "photos" in html_alias_photos is arbitrary, but should match
@ one of the directories listed in the photo_dirs parameter.
html_alias_photos_big = $Pgm_Root/data/photos
@ photo_index is the file where photo_index.pl will store
@ the list of photos found under photo_dirs.
@ It's recommended you set this to $config_parms{data_dir}/photo_index.txt.
photo_index = $Pgm_Root/data/photo_index.txt
@ photo_dirs is a list of web alias dirs (not actual dirs) you have photos in.
@ This can be a list of dirs (e.g. /photos/87,photos/88)
@ or a parent dir with subdirs (e.g. /photos).
@ The string "/photos" is arbitrary, but should match one of the
@ html_alias_* parameters. Normally, you don't need to change this.
@ Can be a comma delimited list.
photo_dirs = /photos
@ photo_big_dirs is a list of web alias dirs (not actual dirs) you have
@ original photos in. This can be a list of dirs (e.g. /photos_big/87,
@ photos_big/88) or a parent dir with subdirs (e.g. /photos_big).
@ The string "/photos_big" is arbitrary, but should match one of the
@ html_alias_* parameters. Normally, you don't need to change this.
@ Can be a comma delimited list, but in this case the order must match
@ the photo_dirs parameter.
photo_big_dirs = /photos_big
@ photo_size is the display size you want your full size photos resized to.
photo_size = 640x480
@ Set to 1 is you do NOT want a title on the picture web interface.
photo_no_title = 0
@ Set to 1 is you do NOT want a clock on the picture web interface.
photo_no_clock = 0
# This is an example of using two sets of photos:
#photo_dirs = /photos,/photos_dad
#html_alias_photos = /some/path
#html_alias_photos_dad = /another/path
#photo_big_dirs = /photos_big,/photos_dad_big
#html_alias_photos_big = /yet/another/path
#html_alias_photos_dad_big = /still/another/path
@ photo_filter is used if you want to keep your resized photos in the same
@ directory as your full size originals. Only photos that match this
@ pattern will be indexed. Blank means match all photos.
photo_filter =
#hoto_filter = ^sm1_
photo_url = /ia5 @ Exit to this web page/menu
photo_time = 120 @ Seconds till next photo. Set to 0 to disable the photo slide show from auto-starting.
photo_sequence = random @ Can be name, date, or random.
photo_no_sync = @ Set to 1 if you do NOT want to synchronize different browsers
photo_no_search = 1 @ Set to 1 if you do NOT want the photo search box
photo_background = Audrey,MSCE @ Which browsers to serve background images to.
photo_back_style = background-position: center center;background-color:#FFFFFF
@ This parm is used by tk_photos.pl, if you have Image::Magick installed,
@ to resize images to full screen. Will cause mh to pause on slower boxes.
photo_resize = 0
# ******************************************************************************
# Category = Security
# These password options control access to mh functions over the intra/internet
@ - password_file is the place you want to keep your encrypted password.
@ Default is data_dir/.password. Use mh/bin/set_password to create the file.
@ If this file does not exist (i.e. you have not run set_password)
@ the web server, telnet.pl, and mhsend will allow full access to everyone.
password_file=$config_parms{data_dir}/.password
@ - password_allow_file is used to list commands and/or items that can be
@ controlled without password protection (e.g. demo/harmless commands).
password_allow_file=$Pgm_Root/data/password_allow
@ - password_allow_clients is the (comma delimited) list of ip addresses of
@ clients you want to bypass password protection from (e.g. boxes on your
@ intranet). Can be a regular expressions. For example:
@ 10\.0\.0\.[^1]+\..+ allows for all 10.0.0.* address except 10.0.0.1
@ 127\.0\.0\.1,192\.168\.0\..+ matches localhost and 192.168.0.*
password_allow_clients = 127\.0\.0\.1
@ - password_allow_phones enables menu commands to be run without a
@ password from specified wap cell phones. Enter a comma delimited
@ list of phone IDs from the the x-up-subno field echoed in
@ mh/data/logs/menu_wml log files.
@ password_allow_phones = your_uniq_id_.upl.sprintpcs.com
password_allow_phones =
@ An example of emailing to a cell phone is in code/common/internet_mail.pl. Common addresses are:
@ T-Mobile: phonenumber@tmomail.net
@ Virgin Mobile: phonenumber@vmobl.com
@ Cingular: phonenumber@cingularme.com
@ Sprint: phonenumber@messaging.sprintpcs.com
@ Verizon: phonenumber@vtext.com
@ Nextel: phonenumber@messaging.nextel.com
cell_phone = 5071234567@messaging.sprintpcs.com
@ These parms are used in code/common/phone_minutes.pl to check remaining cell phone minutes.
@ Supported providers: sprint, tmobile, cingular
cell_phone_number = 5071234567
cell_phone_password =
cell_phone_provider = sprint
@ - password_allow_im specifies which instant messager ids will
@ be allowed to run commands.
password_allow_im =
@ - password_protect controls what requires a password to be displayed.
@ Possible values are:
@ all -> All of the web pages (i.e. nothing will be displayed without a
@ password)
@ log -> The web speak and print logs.
@ widgets -> All of the widgets.
@ vars -> The Global and Save variables.
@ none -> Same as blank. Anyone can look at all of the web pages
@ (they still will need a password for control).
password_protect=logs,widgets,vars
@ - password_protect_dirs controls which directories require a password
@ Note, these are the html_alias names, not the local dir names
password_protect_dirs=/,/data,/email
@ - password_menu controls what kind of password menu is used
@ html -> Use an html form and a cookie
@ browser -> Use browser popup menu
password_menu=html
@ You can disable commands from running by listing them in this file
disabled_commands = $Pgm_Root/data/disabled_commands
# ******************************************************************************
# Category = Location
@ - sunrise/set items need lat/long.
@ lat/long example: 44 degrees 30 minutes -> 44.5
@ - city, state, and country are for internet weather data.
@ You can any of these to find your cities latitude and longitude
@ http://www.heavens-above.com/countries.asp
@ http://www.astro.com/cgi-bin/atlw3/aq.cgi
@ http://geonames.usgs.gov/index.html
@
@ And this one to verify it with a map (use advanced search)
@ http://www.mapblast.com
@ For example, here is a map our neighborhood:
@ http://www.vicinity.com/gif?&CT=44.0817:-92.5037:4000:&FAM=mapblast&
@ Satellite view available via:
@ http://terraserver.microsoft.com
@
@ The time_zone parm is the difference between GMT (Greenich Mean Time
@ London) and your local time. If running Windows, you can
@ find the value in the the Clock Tray Time Zone.
@ You can also pick it off a map time zone data at:
@ http://aa.usno.navy.mil/AA/faq/docs/world_tzones.html
@ Time Zone examples:
@ - Sydney -> 10 (-34 151)
@ - Beijing -> 8
@ - Cairo -> 2
@ - London -> 0
@ - Buenos Aires -> -3
@ - USA Eastern -> -5
@ - USA Pasific -> -8
@ Those in the Western hemisphere (e.g. North America) should used
@ negative numbers for longitude and time zones.
@
@ You can verify the numbers by runing sun_time from the command line:
@ sun_time -lat 44.08 -lon -92.50 -time -6
@ And verify with data from:
@ http://aa.usno.navy.mil/AA/data/docs/RS_OneYear.html
@
@ Note: If you have the TZ enviroment variable set, that will override
@ the mh.ini time_zone value!
@
latitude = 44.0817
longitude = -92.5038
time_zone = -5
@ For $Time_Sunrise_Twilight and $Time_Sunset_Twilight.
@ In order of increasing brightness: astronomical, nautical, or civil
twilight = civil
@ Use time_format to control the format of $Time_Now.
@ Either 12 (for AMPM format) or 24 (for military time format).
@ Use date_format to control the format of various dates vars.
@ - mmddyy (US month/day) or ddmmyy (non-US day/month)
@ - mmddyyyy or ddmmyyy for 4 digit year
time_format=12
date_format=mmddyy
# default_temp deprecated in favour of weather_uom_temp
# @ Use to control the default temperature unit used in various weather
# @ related modules (e.g. iButtons.pm and Weather_wx200.pm)
# @ Defaults to Fahrenheit Can be set to Celsius
# default_temp=
@ Use time_format_log to control $Time_Date which is used in speak_log and print_log.
@ Any &time_date_stamp format (see mh.html) is valid. For example:
@ 12 -> 04/14/97 14:28:00
@ 16 -> 04/14/97 2:28:00 PM
time_format_log=16
@ For Internet weather functions to work correctly
@ If using mh/bin/get_weather (e.g. internet_data.pl_, visit these two URLs:
@ http://iwin.nws.noaa.gov/iwin/xx/hourly.html
@ http://iwin.nws.noaa.gov/iwin/xx/zone.html
@ where xx = your two letter state abreviation (e.g. mn)
@ and select a city name that appears in both.
@ Some regions will need a zone parmeter to get weather forcast data.
@ If using weather_com.pl, visit weather.com. Unlike the above sites,
@ weather.com also supports no-US cities.
country=US
city=Soddy Daisy
zone=
state=TN
zip_code = 37379 # Used in get_tv_grid, weather, etc
@ This is used to set the $Season variable, according to month & equinox
@ Dec Mar Jun Sep
seasons=Winter,Spring,Summer,Fall # Northern hemisphere
#seasons=Summer,Autumn,Winter,Spring # Southern hemispher
season_starts=20,20,21,22 # US and others
#season_starts=1,1,1,1 # Australia
@ The $Holiday variable is set on any comma delimited dates listed here.
@ $Holiday is set to the description string following the date (e.g. Labor Day)
@ If the description is not specified, $Holiday is set to 1 (e.g. 1/1, 12/25)
@ To specify dates based on day of the week, use the format:
@ month/week_day^week description
@ Where week_day is day of the week (0=Sun ... 6=Sat) and week is the week of
@ the month (1-5, use a negative number to count from the end of the month).
@ This page has lots of date info: http://www.ecben.net/calendar.shtml .
@ Holiday dates must be in the format specified by the date_format parameter
holiday_dates =
1/1 New Year's Day, 1/1^3 Martin Luther King Day,
2/2 Groundhog Day, 2/14 Valentine's Day, 2/1^3 President's Day, 3/17 St. Patrick's Day,
4/15/2001 Easter, 3/31/2002 Easter, 4/20/2003 Easter, 4/11/2004 Easter, 3/27/2005 Easter,
4/16/2006 Easter, 4/08/2007 Easter, 3/23/2008 Easter, 4/12/2009 Easter, 4/04/2010 Easter,
3/28/2002 Passover, 4/17/2003 Passover, 4/06/2004 Passover, 4/24/2005 Passover, 4/13/2006 Passover,
4/1 April Fools' Day, 5/0^2 Mother's Day, 5/1^-1 Memorial Day,
6/14 Flag Day, 6/0^3 Father's Day, 7/4 Independence Day, 9/1^1 Labor Day,
10/1^2 Columbus Day, 10/31 Halloween, 11/11 Veteran's Day, 11/4^4 Thanksgiving, 12/25 Christmas,
@ Phone info --- needed only if you have a caller ID interface
@ caller_id_format = first last
local_area_code=770,771
#aller_id_file = $Pgm_Root/data/phone/phone.caller_id.list
caller_id_file = $config_parms{data_dir}/phone/phone.caller_id.list
area_code_file = $Pgm_Root/data/phone/phone.area_codes.list
state_file = $Pgm_Root/data/states.list
caller_id_reject_file = # Same format as caller_id_file
caller_id_format = last first
@ These numbers are used by web code web/ia5/phone/voicemail.pl
@ type can be local, mci, or asterisk.
phone_voicemail_type = local
#hone_voicemail_type = mci
phone_voicemail_number = 1112223333
phone_voicemail_pin = 1234
phone_voicemail_url = http://localhost/cgi-bin/vmail.cgi # For asterisk
# ******************************************************************************
# Category = Server
@ - Used if you want mister_house to service TCP/IP socket calls from
@ other clients. For an example, see code/test/telnet.pl. Set to blank to
@ disable.
@ Specify as many servers as needed. server_name_port (_name is a @ or any
@ arbitrary string)
@
@ - Options are:
@ port -> The socket port number.
@ echo -> If 1, the data received is echoed back to the sender
@ protocol -> TCP or UDP; default TCP if not specified.
@
@ datatype options:
@ records -> data is split on \n (cr). The 'said' method
@ will return data only when a new line has been
@ completely read. This is the default.
@ buffered -> data is read with <>, one line per pass
@ This allows clients to read more data with handle
@ $port (e.g. mhsend_server.pl)
@ raw -> data is not split. The 'said' method returns
@ whatever has been read into the buffer when called.
@ The 'set' method will not add \n\r.
server_telnet_port=1234
server_telnet_echo=1
server_telnet_datatype=raw
server_mhsend_port=8084 # Used by the mhsend_server.pl
server_mhsend_datatype = buffered
#server_ISDN_port=2071 # 3Com ISDN Lan Modem - See ISDN.pl
#server_ISDN_protocol=udp
#server_ISDN_datatype=raw
@ Used to determine if web accesses are local or not
@ - used by internet_speak_flag to control web requested speech
@ - used by monitor_server.pl to control web activity monitor
@ - Is a comma delimited list of regular expressions. e.g:
@ 10\.0\.0\.[^1] -> all 10.0.0.* address except 10.0.0.1
@ 127\.0\.0\.1,^192\.168\.0 -> localhost and 192.168.0.*
local_addresses=^127\.0\.0\.1,^192\.168
@ This overrides the auto-calculated value in $Info{IPAddress_local}
@ Used in pushing TTS to in-house boxes like the Audrey
ipaddress_local =
@ Used by java applet in mh/web/tattler
#server_tattler_port=7010
@ Use these parms to point to a database server, such as mysql.
@ Then you can read/write data via the $DBI handle.
dbi_driver =
#bi_driver = mysql
dbi_database = mh
dbi_server = localhost
dbi_port = 3306
dbi_user = my_userid
dbi_password = my_password
dbi_essential = 0 @ Set this to 1 if you want mh to not start if the db connect fails
@ If you don't use xAP or xPL, you can disable the ports by setting these two parms to 1 or true
xap_disable = 0
xpl_disable = 0
@ Turn these on to enable mh to send out item state changes.
xap_enable_items = 0
xpl_enable_items = 0
# ******************************************************************************
# Category = Voice
@ voice command options
@ - Used if you want Mister House to do voice recognition and voice synthesis.
@ See the mh/docs/install.html on how to install various speech engines.
@ voice_text can be MS, MSV4, MSV5, festival, flite, theta or swift (for the Cepstral engine on Linux),
@ viavoice, vv_tts (for IBM's viavoice Outloud), NaturalVoice, NaturalVoiceWine, or
@ program xyz (for a stand alone xyz program),
@ Set to blank to disable.
@ Use voice_text = MS on windows for all Microsoft SAPI compatible TTS engines, including AT&T NaturalVoice.
@ Other parms specify paths to various TTS engines on unix systems.
voice_text = festival # Default Voice synthesis engine
voice_text_festival = /projects/festival/bin/festival
voice_text_flite = /projects/misterhouse/flite
voice_text_theta = /opt/theta/bin/theta
voice_text_swift = /opt/theta/bin/swift
voice_text_naturalvoice = /projects/ATTNaturalVoices/TTS1.4/Desktop
@ Language identifier (case insensitive). Use iso639 language codes. Default is English.
language = EN
@ use this parameter to set a default voice parameter for all speech
@ the voice can be overriden on a per-application basis through the
@ speak_apps parameter
voice_text_default_voice=
# NaturalVoiceWine options
#voice_text_naturalvoice = /mnt/c/Program Files/ATTNaturalVoices/tts1.3/Desktop
wine_path = /usr/bin/wine
@ Which sound cards to allow for use with the TTS engine.
@ If you get errors on startup when trying to initilize a sound card, exclude it from this list.
@ This can be a number or a substring of the card name as listed in the mh startup errata (e.g. live or audigy).
@ Currently only applicable to Windows.
voice_text_cards = 1,2,3,4
#voice_text_cards = audigy,live
@ Which sound card to default to. If not specified, the first card listed on mh startup will be used.
@ This can be a number or a substring of the card name as listed in the mh startup errata (e.g. live or audigy).
@ Currently only applicable to Windows.
voice_text_card =
@ This is the code used when running speak "address=ip_address Text"
@ to send synthesized wav files to remote computers.
@ The default is good for sending speech to Audreys.
@ For more info, see mh/docs/faq_ia.* entry 'How to push speech to remote Audreys'
voice_text_address_code = run 'get_url -quiet "http://$address/cgi-bin/SendMessage?M=GOTO_URL&S=$url" /dev/null'
#oice_text_address_code = run 'get_url -quiet "http://$address/playsound.shtml?$url" /dev/null'
@ voice_cmd can be MS, MSV4, MSV5, viavoice, pocketsphinx, or blank to disable
voice_cmd = # Voice recognition
@ pronouncable_list_file: List of words to forcibly pronounce
pronouncable_list_file=$Pgm_Root/data/pronouncable_words.list
@ This word will be prefixed to all Voice_Cmd items (for VR only)
voice_cmd_prefix=
@ This phrase will be spoken after a Voice_Cmd item is triggered by voice.
@ %STATE% and %HEARD% will be replaced by state (e.g. On/Off) and the recognized
@ phrase (e.g. Turn light On/Off). Set to blank to disable.
#oice_cmd_response = I heard %HEARD%
#oice_cmd_response = Ok, %STATE%
voice_cmd_response = Ok, %HEARD%
@ - If you have a viavoice_server running, run the mh code member
@ mh/code/Bruce/viavoice_control.pl to enable the following parms:
@
@ - viavoice_host: Point to the box viavoice is running on
@ (currently linux only)
@ Note: you can have mh running on Windows, and
@ viavoice running on linux.
@
@ - viavoice_port: Currently hard coded in viavoice_server at 3234
@
@ - viavoice_awake_phrase: Command(s) that will switch mh into active
@ mode (all commands recognized) from asleep mode.
@ - viavoice_awake_response: This is what is said (or played) when entering
@ awake mode
@ - viavoice_awake_time: Stay in awake mode for this many seconds after
@ the last command was heard. Then it switches
@ to asleep mode. Set to 0 or blank to disable
@ (always stay in awake mode).
@
@ - viavoice_asleep_phrase: Command{s} to put mh into asleep mode.
@ - viavoice_asleep_response:This is what it said (or played) when entering
@ sleep mode
@ - viavoice_asleep_sound: Sound or text to speak when awake_time timer
@ switches to asleep mode.
@
@ - viavoice_off_phrase: Command{s} used to turn the viavoice microphone
@ off.
viavoice_host=localhost
viavoice_port=3234
viavoice_awake_phrase={please wake up,hey mister house}
viavoice_awake_response=whats up?
viavoice_awake_time=60
viavoice_asleep_phrase={go to sleep,change to sleep mode}
viavoice_asleep_response=Ok, later.
viavoice_timeout_response=Later.
#viavoice_timeout_response=sound_scratch1.wav
viavoice_off_phrase={turn the microphone off}
# Choices: male, female, child, elder_male, elder_female
viavoice_voice = male
@ - If you have the pocketsphinx (Carnegie Mellon Universitry Voice Recognition)
@ speech recoginition system installed, you can use voice_cmd=pocketsphinx with
@ the following control options.
@
@ - pocketsphinx_awake_phrase: Command(s) that will switch mh into active
@ mode (all commands recognized) from asleep mode.
@ - pocketsphinx_awake_response: This is what is said (or played) when entering
@ awake mode
@ - pocketsphinx_awake_time: Stay in awake mode for this many seconds after
@ the last command was heard. Then it switches
@ to asleep mode. Set to 0 or blank to disable
@ (always stay in awake mode).
@ - pocketsphinx_asleep_phrase: Command{s} to put mh into asleep mode.
@ - pocketsphinx_asleep_response: This is what it said (or played) when entering
@ sleep mode
@ - pocketsphinx_timeout_response: This is what is said (or played) when the awake
@ timer expires.
@ - pocketsphinx_cmudict Pocketsphinx full english dictionary file location.
@ - pocketsphinx_hmm Pocketsphinx Human Markov Model directory location.
@ - pocketsphinx_rate Audio Sample rate
@ - pocketsphinx_continuous Program location for pocketsphinx_continuous
@ - pocketsphinx_dev Audio device (multiple devices can be separated by "|")
pocketsphinx_host=localhost
pocketsphinx_port=3235
pocketsphinx_awake_phrase={mister house,computer}
pocketsphinx_awake_response=yes master?
pocketsphinx_awake_time=300
pocketsphinx_asleep_phrase={go to sleep,change to sleep mode}
pocketsphinx_asleep_response=talk to you later
pocketsphinx_timeout_response=talk to you later
@ Set to localhost if festival is on your local computer
festival_host=localhost
festival_port=1314
@ Set to any festival commands you want to run during
@ initialization. I use:
@ (Parameter.set 'Audio_Method 'Audio_Command)
@ (Parameter.set 'Audio_Required_Rate 16000)
@ (Parameter.set 'Audio_Required_Format 'au)
@ (Parameter.set 'Audio_Command "esdplay $FILE")
@ To run at 22k, to be compatable with viavoice, use:
@ (Parameter.set 'Audio_Required_Rate 22000)
@ (Parameter.set 'Audio_Required_Format 'wav)
@ (Parameter.set 'Audio_Command "aplay -qs 16000 $FILE")
# Example:
@ festival_init_cmds=(Parameter.set 'Audio_Method 'Audio_Command)
@ (Parameter.set 'Audio_Required_Rate 16000)
@ (Parameter.set 'Audio_Required_Format 'au)
@ (Parameter.set 'Audio_Command "esdplay $FILE")
festival_init_cmds=
@ ViaVoice TTS settings (if voice_text=vv_tts)
@ Example:
@ vv_tts_prescript= /etc/vv_prescript.pl
@ vv_tts_postscript= /etc/vv_postscript.pl
@ vv_tts_default_sound= /home/dbl/mh/sounds/magic.au
@ vv_tts_playcmd= /usr/bin/play
@ See code/public/pa_control_vv_tts.pl for pa speaker control example
vv_tts_prescript=
vv_tts_postscript=
vv_tts_default_sound=
vv_tts_playcmd=
vv_tts_pa_control = @ have vv_tts.pl run voice_cmd 'set pa control to $room'
vv_tts_default_room = all @ default room for vv_tts when controlling pa and room not specified.
vv_tts_engine = viavoice @ Can be viavoice or festival
# Category = Serial
@ - points to the serial ports for various interfaces
@ - set to blank to disable
@ - on Windows, use COM1, COM2, ... COMn
@ Note: On Windows NT and Windows 2000, for ports > 9, prefix with \\.\
@ See article Q115831 at http://search.support.microsoft.com/kb
@ For example: cm11_port=\\.\COM10
@
@ - on linux, use /dev/ttyS0 for COM1, /dev/ttyS1 for COM2, etc.
@ - Note: To allow the port to be written to by any user id, run this command
@ as root:
@ chmod o+w /dev/ttyS0
@
@ - Port names can be one of the following:
@ weeder_port
@ cm11_port (For X10 ActiveHome interface)
@ cm17_port (For X10 Firecracker interface)
@ ncpuxa_port (For Applied Digital CPU-XA/Ocelot interfaces)
@ HomeBase_port
@ serial@_port (# is 1 .. whatever)
@ - For generic serial#_ports:
@ handshake can be 'none' or 'dtr'
@ datatype options:
@ records -> data is split on \n (cr). The 'said' method
@ will return data only when a new line has been
@ completely read. This is the default.
@ raw -> data is not split. The 'said' method returns
@ whatever has been read into the buffer when called.
@ The 'set' method will not addd a \r.
@
@ Newer weeder kits use buadrate=9600
weeder_port=
weeder_baudrate=1200
@ cm11_port (For X10 ActiveHome interface)
@ cm17_port (For X10 Firecracker interface)
@ Note: You can put both of these on the same port
cm11_port=
cm17_port=
@ COM port the iButton serial adapter is on
@ Use _n_serial_port if using more than one port
iButton_serial_port=
iButton_2_serial_port=
ibutton_tweak= @ If having problems, try setting this tweak to 1 or 2.
ibutton_line_length=LONG @ If having problems, try changing this to SHORT
@ Use 9600 for Stargate, 2400 for Timecommander
HomeBase_port=
HomeBase_baudrate=9600
@ For CPU-XA/Ocelot/Leopard cpuxad from xalib. Example, localhost:3000
@ Xalib is available at http://www.linuxha.com/athome/common/cpuxad
ncpuxa_port=
Homevision_port=
Homevision_baudrate=19200
@ MR26A is a wireless X10 receiver:
@ http://www.x10.com/products/x10_mr26a.htm
@ More info in mh/lib/X10_MR26.pm
@ MR26_module = X10_MR26
#MR26_module = X10_MR26
MR26_port =
@ DSC Alarm system interface. See doc or mh/lib/DSC_Alarm.pm for more
#DSC_Alarm_serial_port=
#DSC_Alarm_baudrate=4800
@ Optional: List of DSC code number to name mappings; causes 'user' method to return
@ name instead of DSC code number
#DSC_Alarm_user_40=Jane Smith
#DSC_Alarm_user_1=Jim
@ DSC 5401 Alarm system interface. See mh/lib/DSC5401.pm for more details.
#DSC_5401_module=DSC5401
#DSC_5401_serial_port=/dev/dsc
#DSC_5401_baudrate=57600
#DSC_5401_verbose_arming=1
#DSC_5401_time_log=1
#DSC_5401_ring_log=1
#DSC_5401_temp_log=1
#DSC_5401_part_log=1
#DSC_5401_zone_log=1
#DSC_5401_user_0001=User1
#DSC_5401_user_0002=User2
#DSC_5401_part_1=Partition1
#DSC_5401_part_2=Partition2
#DSC_5401_zone_001=Front Door
#DSC_5401_zone_002=Garage Door
# ******************************************************************************
# Category = Internet
# These parms control the Internet logons for www and mail updating and reading
@ What protcol to use in the &ping function.
@ Options are: tcp, udp, icmp, none
@ Default is icmp. none will mean ping will always return true.
ping_protocol=icmp
get_url = simple @ Can be simple or useragent. useragent uses the mh.ini proxy parm
get_url_ua = Mozilla/5.0 @ This is the browser get_url pretends to be.
@ net_connection values
@ - persistent -> if you have a 24 hour connection
@ - dialup -> to allow mh to autodial under Windows
@ - if dialup, the other 3 parms can be used by Windows users to auto-connect
@ to the Internet.
net_connect=persistent
#net_connect=dialup
net_connect_entry= @ The Dial Up Networking entry you want to use
net_connect_name= @ The name you give to your ISP when you logon
net_connect_password= @ The password "
@ net connection interface on linux
@ this could be retrieve with the the command "cat /proc/net/dev/"
@ when the internet connection is up
@ usually ppp for modem and eth for ethernet card
net_connect_if=
@ Address to web server. This is the default for the ftp command.
net_www_server=
net_www_user=
net_www_password=
net_www_dir=
@ How often (in minutes) to check for email in code/common/internet_mail.pl
net_mail_scan_interval = 10
@ How many cycles (cycle length = net_mail_scan_interval) to wait before
@ declaring the mail getting process dead. This allows us to use VERY slow
@ mail servers.
net_mail_scan_timeout_cycles=0
@ You can get new email using the net_mail_account* parms, or by using this parm to point to
@ a local dir that has your new email. For example, you can save incoming mail from Thunderbird
@ to a local dir with the 'Tb autosave extension' from http://www.supportware.net/mozilla/#ext13
net_mail_save_dir =
@ Age (in minutes) of email to download. If blank, reports on
@ all mail on your server. If you have your mail client set to
@ 'leave mail on server', you need to set this to
@ match the above net_mail_scan_interval.
@ NOTE: Will still REPORT total messages in inbox, but will only SCAN new messages
net_mail_scan_age = 10
@ Number of records to read when scanning email
@ with &net_mail_summary (used in get_email)
net_mail_scan_size=2000
@ Change 'account_1', 'account_2', etc to a name you
@ make up for your account(s). Add as many as you
@ want (e.g. account_3 ...)
@ For example, I use:
@ bruce_at_home and laurel_at_home.
@ See code/test/internet_mail.pl for an example of
@ how to check mail from these accounts.
@ Use _server_send if your send and receive
@ (smtp/pop) servers are different.
@ e.g. smtp.yourisp.com for account_x_server_send
@ and pop.yourisp.com for account_x_server
@ Use _server_port and _server_send_port
@ if your pop and smtp ports are not 110 and 25.
@ Use _address to specify "from" address of sent mail
@
@ To enable IMAP, add a _type=imap to the account
@ For a GMAIL account add a _service=gmail to the account
net_mail_account_1_server= @ Specify your incoming pop server here
net_mail_account_1_server_port= @ Defaults to 110, Specify only if you need a different port
net_mail_account_1_server_send= @ Specify the outgoing smtp email server
net_mail_account_1_server_send_port= @ Defaults to 25, Specify a different port to use if needed
net_mail_account_1_user= @ Your username on the email account
net_mail_account_1_password= @ The password you use to access your email
net_mail_account_1_address= @ Your full email address eg me@xomewhere.com
net_mail_account_1_password_encrypt= @ Defaults to PLAIN. Use CRAM_MD5 or ANONYMOUS if required.
net_mail_account_1_server_ping= @ Defaults to on. Set to off to disable the ping check, if your server is not pingable.
net_mail_account_1_type= @ Defaults to pop3. Set to imap for imap accounts. Note there are dependancies to load
net_mail_account_1_service= @ Defaults to blank. Set to gmail for imap over ssl and to send via gmail. Nore there are dependancies to load
net_mail_account_2_server=
net_mail_account_2_user=
net_mail_account_2_password=
net_mail_account_2_address=
@ Points to the account used for sending mail with net_mail_send
net_mail_send_account=account_1
@ Used in code member internet_mail.pl to
@ confirm authorized email commands
@ If left blank, commands via email is disabled.
net_mail_command_code=
net_aim_name_send= @ - Default name to send messages to
net_aim_name= @ - Logon name to send messages from
net_aim_password= @ - Logon password
net_aim_buddies= @ - Comma seperated buddy list
net_aim_buddy_icon=$config_parms{html_dir}/graphics/mh_buddy.jpg
net_jabber_name_send= @ - Default name to send messages to (e.g. bob@jabber.com)
net_jabber_name= @ - Logon name to send messages from
net_jabber_password= @ - Logon password
net_jabber_server= @ - jabber.com or some other server
net_jabber_resource= @ - resource name (if blank, will default to 'none'
net_jabber_tls= @ - if set to 1, will use TLS if available (defaults to 1)
net_jabber_component_name= @ - used for some jabber services, e.g. for google talk, use 'gmail.com' (no quotes)
@ Used to control how chatty things like monitor_server.pl is
@ all -> all web requested data is spoken locally
@ none -> never speak web request data
@ local -> speak only if client matches local_addresses
internet_speak_flag=all
@ Use these parms to control your tv listings.
@ Use mh/code/test/tv_grid.pl to do daily call get_tv_grid
@ to update your tv database and web pages.
@ If you change your tv_provider, you can use get_tv_grid -reget
@ to refresh the tv/*.html files.
@ Also, mh/code/test/tv_info.pl can be used for queries.
@
@ To find your tv_provider ID, run this command:
@ get_tv_grid -zip your_zipcode -get_provider
@
@ Also make sure you set the mh.ini zip_code parm, or your times will be off.
@
@ You can copy these tv_* parms as another set of sat_* or cable_* or
@ or whatever_*, then run get_tv_grid multiple times to support
@ multiple sets of tv schedules. For example:
@ get_tv_grid -db tv (-db tv is the default)
@ get_tv_grid -db sat
tv_provider_name = Charter Communications - Rochester
tv_name = TV @ Used to give a useful label on the web pages
tv_hours=02,06,10,14,18,22 @ Which hours to get. Use all for all hours
tv_label=VCR @ Which web link name. Use none to disable,
tv_channels_keep= @ Which channels to keep
tv_channels_skip= @ Which channels to skip
tv_channel_min=0 @ Keep only channels above this number
tv_channel_max=99999 @ Keep only channels below this number
@ Set favorite shows, to be searched with tv_info.pl
@ - note: these are substrings/regular-exprestions,
@ so use show1,^er,show2 not show1,er,show2
@ Either set favorite_tv_shows to a comma delimited string,
@ or point favorite_tv_shows_file (in your data dir)
@ to a list, one show per line.
favorite_tv_shows = Voyager,dilbert,family guy,Ally McBeal,
South Park,mystery science,West Wing
#favorite_tv_shows_file = $config_parms{data_dir}/favorite_tv_shows.txt
favorite_tv_channels = all,4-12,4,6,8,9,12 @ Used in common/tv_info.pl 'what are on channel' commands
@ Optional character for highlighting the selected key-word in lists of selected
@ TV programs. Some TTS programs speak symbols such as asterisks, and others
@ do not.
#v_key_symbol=*
tv_key_symbol=
@ If you want to use the &net_domain_name function, point this to a Domain Name
@ Server.
@ If you don't use this function, leave this blank and save a bit of memory and
@ startup time.
@ On Windows, you can find your DNS server under 'Control Panel->Network->TCP/IP
@ ->DNS configuration'
@ Use ',' between server names. For example:
@ DNS_server=24.2.204.33,24.2.204.34
@
@ With this set, you can query the domain name of the last client to access the
@ web server like so:
@
@ my $domain_name = &net_domain_name($Socket_Ports{http}{client_ip_address});
@
@ An example of this can be found in mh/code/test/monitor_server.pl
@ Note: if your DNS server is slow, this can slow mh down, as it waits for the
@ DNS server responses.
@
DNS_server=
@ Dynamic IP parms - used by internet_ip_update.pl
@ DIPS (http://postmodem.com) and TZO (http://www.tzo.com) are 2 services that
@ will assign your dynamic IP address to a static name. You can fill in the
@ following parms and use the test/internet_ip.pl code to automatically update
@ them.
dips_password=
tzo_name=your_name.tzo.com
tzo_email=user@isp.com
#tzo_key=TZO-####-####-####-#######
tzo_key=
@ 3Com ISDN Lan Modem support - used by 'set_ip_3com_tzo' and 'isdn.pl'
@
@ Set this paramater the same as your lanmodem's
@ 'Internet Service Provider Parameter' 'Name'
@
@ This allows the code to know which service profile is the Internet
@ vs. service profiles for private network(s)
#isdn_internet=On Ramp ISDN
@ Stock symbols. Used by stocks.pl code
stocks = IBM MSFT CSCO
@ Stock price changes will be announced if the stocks_thresholds parameter is set
@ and the change exceeds the threshold. Thresholds can be a point value or a
@ percentage value. If the parameter contains a single value, the threshold
@ applies to all stocks. Alternatively, you can set a different one for each
@ symbol like this: stocks_thresholds = IBM:5 MSFT:5% CSCO:15%.
stocks_thresholds = 5%
#@ You can map stock symbols into more pronounceable words using the
#@ stocks_names parameter like this: stocks_names = CSCO:Cisco_Systems.
stocks_names = MSFT:Microsoft CSCO:Cisco_Systems
# Brian's Tracking Program Parameters
tracking_dir=/misterhouse/web/aprs @ Where to put the tracking data
tracking_callsign= @ Ham Callsign
tracking_speakflag=0 # 0 = No Speaking
# 1 = Speak GPS Reports Only
# 2 = Speak WX Reports Only
# 3 = All Speaking
tracking_trackself=1 # This parameter should equal "1" if
# GPS Speaking is off and you still want
# to hear tracking from your own mobile
tracking_shortannounce=1 # 0 = When Speaking Tracking
# Information, this will
# announce both distance from
# this station and distance
# from waypoint.
# 1 = Only Distance from waypoint.
tracking_withname=1 # 0 = If tracking.nam available,
# announce callsign instead
# of given name.
# 1 = Announce Given name instead
# of callsign.
# 2 = Announce given name AND
# callsign.
# ******************************************************************************
# Category = Music
@ mp3_dir is a comma separated list of directories where you keep mp3 or playlist (m3u, pls) files.
@ Used by code/common/mp3.pl.
@ mp3_dir can have subdirectories, and can be multiple, comma-seperated dirs
mp3_dir=
@ mp3_program is the full path to your mp3 player.
mp3_program=C:\Progra~1\Winamp\winamp.exe
@ mp3_program_control is used by mp3_winamp.pl can be either:
@ wactrl (Windows only, included in mh/bin dir) or
@ httpq (a winamp plugin, available at:
@ http://winamp.com/customize/detail.jhtml?componentId=9936
mp3_program_control=wactrl
@ mp3_program_password is used by mp3_winamp.pl when httpq is active
mp3_program_password=pass
@ mp3_program_host is used by mp3_winamp.pl when httpq is active
mp3_program_host=localhost
@ mp3_program_port is used by mp3_winamp.pl when httpq is active
mp3_program_port=4800
# ******************************************************************************
# Category = Entertainment
@ This parm points to a list of comic strips to download.
@ Used by the dailystrip.pl code file. List of comics
@ is in mh/web/comics/dailystrips/strips.def
comics = dilbert foxtrot userfriendly doonesbury speedbump
# ******************************************************************************
# Category = Misterhouse
@ Used in alarm.pl to have a user defined function for alarms
alarm_function = &alarm_function_default
@ Skip the .pl and/or .menu files listed in no_load (e.g. mh -no_load "test1.pl,test2.pl,mh.menu")
@ use -no_code 1 to avoid loading any files (for test)
no_load=
@ This is a comma delimited list of files to load from the
@ code_dirs. These files will be added to any specified on
@ the mh command line. If not specified, all files from
@ the code_dirs are loaded.
only_load=
@ Which browser to use to display html (e.g. html button)
@ Use the short name to avoid blanks (e.g. program files)
@ browser=c:\progra~1\Netscape\Navigator\Program\netscape.exe
@ To get the short name of a dir, run: dir /x path/dir*
browser=explorer
@ logfile will cause tha program errata to be stored in the specified file
@ rather than echoed to the screen. Useful for debuging.
@ If you want to log all data from startup, add this to your user code:
@ &toggle_log if $Startup
@ Or specify the file on the command line: mh -log_file xyz
log_file=
@ mode_log_file controls how any existing log_file is treated.
@ Setting mode_log_file to "append" will stop deletion of an existing
@ log_file and append new entries to the existing file.
@ The default is to delete the existing log_file at startup.
mode_log_file=
@ Turn off various log messages with this parm.
@ pause -> turn off the 'mh paused' message (also controlable with http_pause_time)
@ save_state -> turn off the 'Saving object states' message
@ speak -> do not print spoken text to the console (if -tk 0)
@ xcmd -> do not print errata on xcmd_file events
@ serial_unmatch -> do not 'unmatehed incoming serial' messages.
@ http_local -> do not log local http traffic
no_log=
@ Set the file used for passing in external commands. Used by house.bat to
@ pass in commands.
@ Make sure this matches what is in house.bat (for dos) or house (for unix)
xcmd_file=$Pgm_Root/house_cmd.txt
@ Can be set to lots of values (e.g. user_code,X10,serial,socket,startup,homebase,misc,http,port_name)
debug=0
@ This is the list of common debug options. These can be set by either the
@ "set debug to