# # 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 = 2 # (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? :( 0. web_href_radio = http://www.live365.com web_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 = 800x600 @ 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 = 60 @ 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 = 35.31958873076469 longitude = -85.11417388916016 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= 423 #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= imap.1and1.com net_mail_account_1_server_port= 143 net_mail_account_1_server_send= smtp.1and1.com net_mail_account_1_server_send_port= 587 net_mail_account_1_user= williamotten@nettow.com net_mail_account_1_password= 12wmo1963 net_mail_account_1_address= williamotten@nettow.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= imap 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 = Chattanooga One - Comcast Cable tv_name = TV @ Used to give a useful label on the web pages tv_hours=all @ 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