updated for FreeBSD 12.2
This commit is contained in:
		
							
								
								
									
										12
									
								
								jails/config/hass/.tmux.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								jails/config/hass/.tmux.conf
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
unbind C-b
 | 
			
		||||
set -g prefix C-a
 | 
			
		||||
bind C-a send-prefix
 | 
			
		||||
 | 
			
		||||
setw -g mouse on
 | 
			
		||||
 | 
			
		||||
# Set the default terminal mode to 256color mode
 | 
			
		||||
set -g default-terminal "xterm-256color"
 | 
			
		||||
 | 
			
		||||
# enable activity alerts
 | 
			
		||||
setw -g monitor-activity on
 | 
			
		||||
set -g visual-activity on
 | 
			
		||||
							
								
								
									
										15
									
								
								jails/config/hass/hass.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								jails/config/hass/hass.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
#!/usr/local/bin/bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2018-2021, diyIT.org
 | 
			
		||||
# All rights reserved.
 | 
			
		||||
#
 | 
			
		||||
# BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License")
 | 
			
		||||
# https://diyit.org/license/
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# ./hass.sh under tmux
 | 
			
		||||
 | 
			
		||||
cd /data/homeassistant/
 | 
			
		||||
source bin/activate
 | 
			
		||||
hass
 | 
			
		||||
							
								
								
									
										15
									
								
								jails/config/hass/heyu.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										15
									
								
								jails/config/hass/heyu.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
#!/usr/local/bin/bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2018-2021, diyIT.org
 | 
			
		||||
# All rights reserved.
 | 
			
		||||
#
 | 
			
		||||
# BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License")
 | 
			
		||||
# https://diyit.org/license/
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
# ./hass.sh under tmux
 | 
			
		||||
 | 
			
		||||
heyu start
 | 
			
		||||
heyu info
 | 
			
		||||
heyu monitor
 | 
			
		||||
							
								
								
									
										4
									
								
								jails/config/hass/setup_jail.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										4
									
								
								jails/config/hass/setup_jail.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,4 @@
 | 
			
		||||
# requrired to run other configured scripts
 | 
			
		||||
/bin/sh /etc/rc
 | 
			
		||||
# launch tmux with jails
 | 
			
		||||
/mnt/config/startsessions.sh
 | 
			
		||||
							
								
								
									
										31
									
								
								jails/config/hass/startsessions.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										31
									
								
								jails/config/hass/startsessions.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,31 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2018-2021, diyIT.org
 | 
			
		||||
# All rights reserved.
 | 
			
		||||
#
 | 
			
		||||
# BSD 2-Clause License ("Simplified BSD License" or "FreeBSD License")
 | 
			
		||||
# https://diyit.org/license/
 | 
			
		||||
#
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
session="sess_tmux"
 | 
			
		||||
 | 
			
		||||
# set up tmux
 | 
			
		||||
tmux start-server
 | 
			
		||||
 | 
			
		||||
# create a new tmux session, naming the window freepbx
 | 
			
		||||
tmux new-session -d -s $session -n hass
 | 
			
		||||
tmux selectp -t 1
 | 
			
		||||
tmux send-keys "cd /mnt/config;./hass.sh" C-m
 | 
			
		||||
 | 
			
		||||
# create a new window windows
 | 
			
		||||
tmux new-window -t $session:1 -n heyu
 | 
			
		||||
tmux selectp -t 1
 | 
			
		||||
tmux send-keys "cd /mnt/config;./heyu.sh" C-m
 | 
			
		||||
 | 
			
		||||
# return to main window
 | 
			
		||||
tmux select-window -t $session:0
 | 
			
		||||
tmux selectp -t 1
 | 
			
		||||
 | 
			
		||||
# Finished setup, attach to the tmux session!
 | 
			
		||||
#tmux attach-session -t $session
 | 
			
		||||
							
								
								
									
										264
									
								
								jails/config/hass/x10.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										264
									
								
								jails/config/hass/x10.conf
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,264 @@
 | 
			
		||||
# Example Heyu configuration file.  Copy this to file 'x10config' in
 | 
			
		||||
# directory $HOME/.heyu/ and modify as required. This example uses
 | 
			
		||||
# features which are new to heyu version 2
 | 
			
		||||
# and which will not be recognized by heyu version 1.xx.
 | 
			
		||||
 | 
			
		||||
# Note: This example file describes only a few of the most commom
 | 
			
		||||
# configuration directives.  For the complete list see man page
 | 
			
		||||
# x10config(5).
 | 
			
		||||
 | 
			
		||||
# Anything on a line between a '#' character and the end of the line is
 | 
			
		||||
# treated as a comment and ignored by Heyu, as are blank lines.
 | 
			
		||||
# The various configuration directives in this file can be in any order
 | 
			
		||||
# except that ALIAS directives must appear before any other directive
 | 
			
		||||
# which references the alias label in place of a housecode|unit address.
 | 
			
		||||
# See 'man x10config' for additional information and directives.
 | 
			
		||||
 | 
			
		||||
# Serial port to which the CM11a is connected. Default is /dev/ttyS0.
 | 
			
		||||
 | 
			
		||||
tty /dev/ttyU1
 | 
			
		||||
check_ri_line NO
 | 
			
		||||
 | 
			
		||||
# If you have an X10 compatible RF receiver connected to a second
 | 
			
		||||
# serial port, use the TTY_AUX directive to specify the serial port
 | 
			
		||||
# and model of receiver.  Supported receivers are W800RF32, MR26A,
 | 
			
		||||
# and RFXCOM.  There are no defaults.
 | 
			
		||||
 | 
			
		||||
tty_aux /dev/ttyU0 MR26A
 | 
			
		||||
 | 
			
		||||
# The CM19A is both a receiver and transmitter for X10 RF signals.
 | 
			
		||||
# The MR26A is a receiver only.
 | 
			
		||||
# The CM19A is USB and the MR26A is serial port
 | 
			
		||||
 | 
			
		||||
# Base housecode.  The default is A.
 | 
			
		||||
 | 
			
		||||
#housecode A
 | 
			
		||||
 | 
			
		||||
# Aliases:
 | 
			
		||||
# Format:  ALIAS  Label  Housecode|Unitcode_string  [Module_Type]
 | 
			
		||||
 | 
			
		||||
# The label is limited to 32 characters in length and is case-sensitive,
 | 
			
		||||
# e.g., Front_Porch and front_porch are treated as different labels.
 | 
			
		||||
# Each alias may reference a single unitcode or a multiple unitcode
 | 
			
		||||
# string (no embedded blanks), but is limited to one housecode.
 | 
			
		||||
 | 
			
		||||
# The optional Module_Type is the general type or specific model number
 | 
			
		||||
# of a module currently supported by Heyu. (Knowing the characteristics
 | 
			
		||||
# of a module allows Heyu to track changes in its On/Off/Dim state
 | 
			
		||||
# as X10 signals are sent or received.)  The most commonly used modules
 | 
			
		||||
# are the standard X10 lamp module (StdLM) and standard X10 appliance
 | 
			
		||||
# module (StdAM).  Other modules currently supported by Heyu are listed
 | 
			
		||||
# in x10config(5).  A standard X10 lamp module (StdLM) is the
 | 
			
		||||
# default (changeable with the DEFAULT_MODULE directive)
 | 
			
		||||
# for housecode|units which are not defined in an alias directive.
 | 
			
		||||
# A module_type should normally not be defined for mutiple-unit
 | 
			
		||||
# aliases, just for the single-unit aliases.  (The module characteristics
 | 
			
		||||
# are associated with the housecode|unit, however referenced.)
 | 
			
		||||
 | 
			
		||||
# Some examples:
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Note: Prior versions of Heyu used a different format for
 | 
			
		||||
# aliases - no ALIAS directive and the Housecode and Unitcode_string
 | 
			
		||||
# were separated by a space, e.g., simply:
 | 
			
		||||
#  front_porch  A  1
 | 
			
		||||
# Heyu will continue to accept this older format for compatibility,
 | 
			
		||||
# but its use is discouraged as modules cannot be specified.
 | 
			
		||||
 | 
			
		||||
# Scenes and Usersyns (User-defined synonyms):
 | 
			
		||||
# Format:  SCENE   Label Command1 <args> [; Command2 <args> [; ...
 | 
			
		||||
# Format:  USERSYN Label Command1 <args> [; Command2 <args> [; ...
 | 
			
		||||
# The label is limited to 32 characters and is case-sensitive.
 | 
			
		||||
# Scenes and Usersyns are both semicolon-separated lists of
 | 
			
		||||
# commands with their arguments which can be executed or used
 | 
			
		||||
# in macros as if their labels were ordinary Heyu commands.
 | 
			
		||||
# See 'man x10config' for the features and limitations of Scenes
 | 
			
		||||
# and Usersyns.
 | 
			
		||||
# (In the current version of heyu, the ONLY distinction between
 | 
			
		||||
# scenes and usersyns is the 'show' menus in which they appear.)
 | 
			
		||||
# Some examples:
 | 
			
		||||
 | 
			
		||||
SCENE blinker on D5; off D5; on D5; off D5
 | 
			
		||||
#USERSYN normal_lights on front_porch; on back_porch
 | 
			
		||||
#SCENE tv_on on tv_set; dimb living_room 10
 | 
			
		||||
 | 
			
		||||
# parameters, e.g., $1, $2, which are replaced by actual
 | 
			
		||||
# parameters supplied when the scene/usersyn is run.
 | 
			
		||||
 | 
			
		||||
#USERSYN night_lights dimb front_porch $1; dimb back_porch $1
 | 
			
		||||
 | 
			
		||||
# Define the (writeable) directory where the Heyu state engine daemon
 | 
			
		||||
# (started with 'heyu engine') is to write its log file 'heyu.log.<tty>'.
 | 
			
		||||
# The default is 'NONE', indicating no log file is to be written.
 | 
			
		||||
 | 
			
		||||
log_dir /usr/local/etc/heyu/log
 | 
			
		||||
 | 
			
		||||
# The entries in the log file are similar to those which appear in
 | 
			
		||||
# the heyu monitor, but in addition will include an entry when
 | 
			
		||||
# a script is launched, and unless redirected elsewhere, any
 | 
			
		||||
# text output from that script.
 | 
			
		||||
 | 
			
		||||
# Note that the log file will continue to grow.  Manually delete
 | 
			
		||||
# or trim it from time to time, or configure a Unix utility like
 | 
			
		||||
# 'logrotate' to manage this task automatically.
 | 
			
		||||
 | 
			
		||||
# If the Heyu state engine is running, Heyu can launch scripts
 | 
			
		||||
# (or any Unix commands) when it sees specified X10 signals.
 | 
			
		||||
# The format is:
 | 
			
		||||
 | 
			
		||||
#SCRIPT [ -l label ] <launch conditions> :: [options] <command line>
 | 
			
		||||
 | 
			
		||||
# where label is an optional label, <launch conditions> tell
 | 
			
		||||
# Heyu under what conditions to launch the script, and
 | 
			
		||||
# <command line> is the script command to be executed.
 | 
			
		||||
# The '::' (two colons) separator is mandatory since the launch
 | 
			
		||||
# conditions can be quite complex.
 | 
			
		||||
# See x10scripts(5) for details, but here's a simple example
 | 
			
		||||
# (with no label):
 | 
			
		||||
 | 
			
		||||
#SCRIPT doorbell on :: play $HOME/sounds/barking_dog.wav
 | 
			
		||||
 | 
			
		||||
# Users have the option of running either 'heyuhelper' in a manner
 | 
			
		||||
# similar to heyu 1.35 or general scripts as above with the
 | 
			
		||||
# following directive.  The default is SCRIPTS, to run general scripts.
 | 
			
		||||
 | 
			
		||||
#script_mode SCRIPTS
 | 
			
		||||
 | 
			
		||||
# (With the choice 'HEYUHELPER', a script named 'heyuhelper' on
 | 
			
		||||
# the user's path is run every time any X10 signal is received
 | 
			
		||||
# by heyu over the power line, assuming the heyu state engine
 | 
			
		||||
# daemon is running.)
 | 
			
		||||
 | 
			
		||||
###  The following directives apply when a schedule is ###
 | 
			
		||||
###  is uploaded to the CM11A interface.               ###
 | 
			
		||||
 | 
			
		||||
# The file name of the user's X10 schedule file in the Heyu base
 | 
			
		||||
# directory. The default is 'x10.sched'.  If you regularly use
 | 
			
		||||
# more than one, list them here and just comment/uncomment as
 | 
			
		||||
# appropriate, e.g.,
 | 
			
		||||
 | 
			
		||||
#schedule_file x10.sched
 | 
			
		||||
#schedule_file normal.sched
 | 
			
		||||
#schedule_file vacation.sched
 | 
			
		||||
 | 
			
		||||
# The MODE directive - Heyu's two modes of operation:
 | 
			
		||||
# In the default COMPATIBLE mode, the schedule uploaded to the
 | 
			
		||||
# interface is configured to begin on Jan 1st of the current
 | 
			
		||||
# year and # is valid for 366 days - through Dec 31st of the
 | 
			
		||||
# current # year or Jan 1st of the following year, depending
 | 
			
		||||
# whether # the current year is a leap or common year.
 | 
			
		||||
# COMPATIBLE mode is the default.
 | 
			
		||||
 | 
			
		||||
# In HEYU mode the schedule uploaded to the interface is
 | 
			
		||||
# configured to begin on today's date and is valid for
 | 
			
		||||
# the number days of provided by the PROGRAM_DAYS directive.
 | 
			
		||||
# WARNING: The mere execution of X10's ActiveHome(tm) program
 | 
			
		||||
# under MS-Windows, or having its resident driver running, when
 | 
			
		||||
# the interface has been programmed by Heyu in HEYU mode can
 | 
			
		||||
# cause problems.  See 'man x10config' for details.
 | 
			
		||||
 | 
			
		||||
#mode COMPATIBLE
 | 
			
		||||
 | 
			
		||||
# Number of days for which the interface is to be programmed
 | 
			
		||||
# when running in HEYU mode.  It is ignored in COMPATIBLE mode.
 | 
			
		||||
# (A shorter period can yield more accurate values for dawn
 | 
			
		||||
# and dusk.)  The default is 366 days.
 | 
			
		||||
 | 
			
		||||
#program_days 366
 | 
			
		||||
 | 
			
		||||
# Should Heyu combine events having the same date range, time, etc.,
 | 
			
		||||
# by concatenating the macros for similar events?   The default is YES.
 | 
			
		||||
 | 
			
		||||
#combine_events YES
 | 
			
		||||
 | 
			
		||||
# Should Heyu compress uploaded macros by combining unit codes for the same
 | 
			
		||||
#housecode and command and eliminating duplicates? E.g.,
 | 
			
		||||
#  (on A1; on B2; on A3, on B2) ==> (on A1,3; on B2)
 | 
			
		||||
# The default is NO
 | 
			
		||||
 | 
			
		||||
#compress_macros NO
 | 
			
		||||
 | 
			
		||||
# The user's Longitude and Latitude, needed for dawn/dusk calculations.
 | 
			
		||||
# There are no defaults.  Don't use these examples - put in values
 | 
			
		||||
# for your own location.
 | 
			
		||||
 | 
			
		||||
longitude W121:46
 | 
			
		||||
latitude N37:16
 | 
			
		||||
 | 
			
		||||
# For dawn/dusk related times, Heyu breaks up the schedule date intervals
 | 
			
		||||
# into subintervals, each with a constant value of dawn or dusk time.
 | 
			
		||||
# These directives instruct Heyu what value of dawn/dusk time to use.
 | 
			
		||||
# The default value is FIRST, i.e., that on the first day of the subinterval,
 | 
			
		||||
# which is most convenient for comparing Heyu's computations with actual.
 | 
			
		||||
 | 
			
		||||
#dawn_option FIRST
 | 
			
		||||
#dusk_option FIRST
 | 
			
		||||
 | 
			
		||||
# The following times allow bounds to be placed on the times of Dawn
 | 
			
		||||
# and Dusk computed by Heyu. For example, setting the value for
 | 
			
		||||
#min_dawn to 06:30 will ensure that an event scheduled to be
 | 
			
		||||
# executed at Dawn will occur at 06:30 during summer hours whenever
 | 
			
		||||
# the actual computed value of Dawn is earlier than that time.
 | 
			
		||||
# The value for these directives are specified as hh:mm Legal
 | 
			
		||||
# (i.e., wall-clock) time, or the directives may be disabled with
 | 
			
		||||
# the word OFF, which is the default.
 | 
			
		||||
 | 
			
		||||
# Timer options DAWNLT, DAWNGT, DUSKLT, DUSKGT used in the Heyu
 | 
			
		||||
# schedule file will usually eliminate the need for these directives.
 | 
			
		||||
# See man page x10sched(5) for details.
 | 
			
		||||
 | 
			
		||||
#min_dawn OFF
 | 
			
		||||
#max_dawn OFF
 | 
			
		||||
#min_dusk OFF
 | 
			
		||||
#max_dusk OFF
 | 
			
		||||
 | 
			
		||||
# Directory to write reports and files other than the critical files
 | 
			
		||||
# The default is to write them in the Heyu base directory.
 | 
			
		||||
 | 
			
		||||
#report_path ./
 | 
			
		||||
 | 
			
		||||
# Replace events having delayed macros with new events and new
 | 
			
		||||
# undelayed macros when possible. (The purpose is to avoid pending
 | 
			
		||||
# delayed macros, which are purged when a new schedule is uploaded.)
 | 
			
		||||
# The default is YES.
 | 
			
		||||
 | 
			
		||||
#repl_delayed_macros YES
 | 
			
		||||
 | 
			
		||||
# For test purposes, Heyu can write some additional files when
 | 
			
		||||
# the command 'heyu upload check' is executed.  This directive
 | 
			
		||||
# instructs Heyu to write these files.  The default is NO.
 | 
			
		||||
 | 
			
		||||
#write_check_files NO
 | 
			
		||||
 | 
			
		||||
START_ENGINE AUTO
 | 
			
		||||
 | 
			
		||||
alias Kitchen D1 StdLM
 | 
			
		||||
alias Family_Room D2 StdLM
 | 
			
		||||
alias Hallway D3 StdLM
 | 
			
		||||
alias Kitchen_Table D4 StdLM
 | 
			
		||||
alias Stairway D5 StdLM
 | 
			
		||||
alias Study D6 StdLM
 | 
			
		||||
alias Dining D7 StdLM
 | 
			
		||||
alias Bonus_Room D8 StdLM
 | 
			
		||||
alias Living_Room_L0 D9 StdLM
 | 
			
		||||
alias Front_Door D10 StdLM
 | 
			
		||||
alias Living_Room_L1 D11 StdLM
 | 
			
		||||
alias Living_Room_L2 D12 StdLM
 | 
			
		||||
alias Piano_Room_L1 D13 StdLM
 | 
			
		||||
alias Piano_Room_L2 D14 StdLM
 | 
			
		||||
alias Family_Room_L0 D15 StdLM
 | 
			
		||||
alias Chime G1 StdAM
 | 
			
		||||
alias Main_Garage G2 StdAM
 | 
			
		||||
alias Side_Garage G3 StdAM
 | 
			
		||||
alias Front_Yard G13 StdLM
 | 
			
		||||
alias Back_Yard G14 StdLM
 | 
			
		||||
alias Plants_front_house I1 RAIN8II
 | 
			
		||||
alias Plants_front_road I2 RAIN8II
 | 
			
		||||
alias Lawn_front_road I3 RAIN8II
 | 
			
		||||
alias Lawn_front_garage I4 RAIN8II
 | 
			
		||||
alias Lawn_back_pool I5 RAIN8II
 | 
			
		||||
alias Lawn_back_house I6 RAIN8II
 | 
			
		||||
alias Plants_back_garage I7 RAIN8II
 | 
			
		||||
alias Plants_back_road I8 RAIN8II
 | 
			
		||||
		Reference in New Issue
	
	Block a user