There are at a minimum two config files for a given installation. config.ini contains a list of all the stations and how to talk to them; And how to ship the data around. shefcodes.txt contains how to map sensors names for a station to shefcodes.
The main configuration file can contain 3 different sections.
|service||Configuration directive for an individual service|
|dcp||settings for how to talk to a remote station and where to store it's data|
|session||settings for how to ship data where it needs to go|
Any number of these sections my exists in the config files; currently there are only two services: Askitd and Transmitd. The practical limit on the number of stations is currently not known, but if you are collecting data from remote stations think about your interval and how long it takes each station to respond.
The valid options are as follows(New section will be bold):
|service||service configuration||service:<name of service>|
|interval||time to wait before preforming task again||HH:MM:SS, all values must be positive, gets converted to seconds|
|offset||time after top of the hour to start interval timer||HH:MM:SS, all values must be positive, gets converted to seconds|
|port||TCP/IP port used to listen for commands||1024-65535|
|host||TCP/IP address to listen on for commuincations requests||any address your machine uses, or 0.0.0.0 for all|
|archivedir||Where the archive data will get stored||Any valid writable directory on the host system|
|outputdir||Where the temporary data files with sit||Any valid writeable directory on the host system|
|session||data transport configuration||sessino:<session name>|
|enable||Should this station be processed||1 for yes and 0 for no|
|system||base name of the file in the output directory that has the data we want to send||any text that can be used as a filename on the system and that python can handle|
|priority||Controls ordering of transmissions||>= 0, 0 is the highest priority|
|datadir||Directory on remote machine that will be recieving data||Any valid directory for the target operating system|
|deleteaftertransmitd||controls with we should delete the temp file after a successful transmission of this session||1 for yes, 0 for no|
|hostN||host that we will try to transmit to||
N is a number starting from 1, 1 being the first host to
try. The format is:
plugin:network address/phone number:username:password:other data( any format except colon seperated )
com plugin is the name of a valid Transmitd plugin( without extension) in the plug-ins diretory.
|dcp||remote station parameters||dcp:<station name>|
|dcptype||name of dcp module that known how to recieve data from the named station||any valid dcp plug-in name( without extention ) that is in the plug-ins directory|
|lastdate||time of the newest data the station had when it was last polled||date in the format MM/DD/YYYY,HH:mm:SS|
|user||username used to login dcp||a valid username for the dcp, this field can be blank|
|password||password for the user account on the DCP||a valid passowrd for the dcp, this field can be blank|
|enabled||whether or not to collect data on a polled interval from this station||1 for yes, 0 for no|
|timezone||time zone code for this dcp||Any valid SHEF time zone, a DST time zone is not recomended as the shefit program will give an error when you get near the DST shift and you will loose that data|
|system||base name of the data file this station belongs to||any valid filename for the host operating system( without an extension|
|comtype||name of the communications module for the medium used to talk to this station||name of any valid comm. plug-in( without an extension ) in the plug-ins directory|
|databits||number of data bits used serial port communications||7 or 8. Usually 8|
|parity||Used for error checking in serial port communications||Even, Odd, None.|
|stopbits||Used for serial port communications||0, 1, 1.5, 2. 1 is most common among newer devices|
|flow||Flow control used for the serial communications device||Software,Hardware,None|
|baud||speed of serial communications||any valid baudrate that the sending and receiving device can handle|
|port||serial port on the computer to use, or ethernet port to connect to||
|timeout||amount of time to wait before giving up on a readline call||>=0. 0 is no timeout, time is in seconds|
|address||where on a network this dcp is||a valid text string address for the used communications module. For ethernet an IP address, for a radio, whatever that radio uses.|
|group-subnet||what "group" is this DCP part of for the communications medium being used||a valid entry for the communications type being used.
NOTE: there was a reason for the subnet part, but I can't remember what it is.
|channel||the frequency to set the radio 2||a number that reqpresents the frequency, usually a channel number|