wire (Sat Oct 25 2014 01:31:01)


WIRE collects wire input that is in standard message format ANPA or IPTC or CCN
Matthews or AWP Zurich.

The header is parsed and put in the FIP header field SH.

The file is slotted into the spool/2brouted queue for IPROUTE to process and

Input Parameters :
Mandatory :
	-n : name of this wire (usually the agency)		default: none
either	-s : 'px25', 'sx25', Spider name or TTY device name	default: none
	-p : Terminal Server port number (Not for TTY)		default: none
or	-P : Port on UnixBox to use for outbound 		default: none
		This is only used where Terminal Servers canNOT run reverse telnet
		correctly and need to set a Permanent Virtual Connection across
		the ethernet to a fixed port number on the UnixBox
Optional :
	-7/-8 : data is 7 or 8 bits		default: 7 (except x25 is 8)
	-0 : (zero) save null characters	default: nulls are stripped.
	-a : messages are in ANPA format			default: iptc
	-i : messages are in IPTC format			default: iptc
	-A : name of the archive file if not the -n name field	default: 'name'
	-b : other formats	-bCCN for CCN Matthews		default: iptc
				-bAWP for AWP Zurich
	-B : Passive connection (-P) uses UDP			default: TCP
	-c : the chrset of the source (SC header field)		default: ascii
	-C : treat all Controls as data (especially CntlA, B and C)
		within data				default: NO
	-d : the name of a DUPLICATE wire where 2 copies of the same
		file is required (SD header field).		default: none
	-D : Ignore all STX and ETX without a preceeding SOH	def: save data
	-e : Chunk file size (size in bytes)			def: whole file
		Use this to specify the maximum take size chunk
		Any incoming file bigger than this is sent in multiple
		files with FipHdr field D1: holding the take number.
		The last take also sets D2 to 'END'.
		The SN field also has a 3 digit extention containing the take
		number so redundancy does NOT kick in to stip alternate files.
		Otherwise the whole FipHdr is sent each time.
		Use this option with care ! - The Chunk Size MUST be big
		enough to contain the incoming hdr plus the first bit of data.
		There are some functions which work badly with this option
		such as Trailer FipHdr fields and Ack/Enqs.
		The minimum size is 400 bytes and maximum is 31k.

	-E : maximum number of threads				default: 1
		up to a max of 100
	-f : Extra FIP header information 			default: none
		For fixed header info in FIP. eg -f #QA:AA#QB:BASIC
		As this flag is normally the last specified, its contents
		can be used to overwrite any unique fields such as DU, DP,
		SN etc.
	-h : Add the PreHeader as FipHdr field SW	default: ignore prehdr
		-h all		allow all prehdr chars
		-h visable	save only visable/printable chrs (spc and above)
		The maximum size of the prehdr is 1000 chrs
		Any CR, NL, FF/VT, SYN, ~/tilde and DEL are stripped.
	-H : need a logon - use the parameter file (see below)	default: no
	-I : id of this instance				default: ignored
		Where there are several copies of 'wire' running with the same -n
	-k : Add the message keyword as first line of text	default: no
	-L : For Passive (-P) type connections, reestablish the 
		link after disconnection			default: no
	-m : Keyword is a Mercury/Atex formatted		default: no
			filename (spc) queue-group
	-M : Add in the Item log extra start details		default: no
	-o : Name of output format (DF field)			default: WIRE
	-O : Name of the output folder if not default		default: spool/2brouted
		This folder will be under /fip/spool
	-r : the name of a DIFFERENT routing table to 'name'
		(SR field : used by iproute)			default: name
	-R : dump all raw data in a dump file in /fip/dump	default: no
	-S : minimum size of a file				default: 20
		Normally files are ignored if less than 20 chrs.
	-t : Do NOT strip date/time stamp from end of text	default: strip
	-T : timing stats yes/no				default: no
	-u : Force keyword lowercase				default: leave as is
	-U : Force keyword uppercase				default: leave as is
	-W : File header obeys IPTC keyword rules and is forced 
		uppercase.				default: no
	-w : File header obeys IPTC keyword rules and is forced 
		lowercase.				default: no
	-x : Wakeup string for Pad/modem etc		default: none
	-X : Timeout in seconds			 default: none
		If this time is exceeded WITHOUT an End-of-file, the file is terminated.
	-y : Banner string to strip from terminal server.default: SpiderBanner
	-Y : There is no banner to strip		default: as above
	-z : Contents of a prehdr which MUST be checked for
		before a valid file is started		default: none
	-Z : do NOT archive any incoming files		default: archive
	-v : Print the version number and exit

FipHdr field SH for AWP are :
	S service
	N item number
	L- language F/D/E
	D date
	Z seqno
	P priority
	W words
	Y news type (awp 'T')
	X subject codes (awp 'E')
	T sector codes (awp 'F')
	B country - only 2 letters (awp 'G')
SH::SAWP:LF:N10688:Z90032968:D200406280313:P4:W000979:YP:XPOL:BCH |

Plus ticker codes (awp 'B') are mapped to FipHdr E*:

-- Remote devices that need a logon --

Specify the '-H' input switch and a parameter file with the same name as the
'-n' switch in tables/wire

This optional parameter file may be included if there needs to be a logon
The syntax of the file is the normal Fip Style of ..
	; comment line
	logon: logon sequence of strings to send and to receive (see below)
							default: not used.
	waitchr:176	wait one sec chr		default: tilde (0176)

	plus the usual FipSeq of partial, fixed, replace etc commands.

For Logons, The strings are in uucp-like format where the syntax is :
	(send1string) (space) (receive1string) (spc) (s2) (spc) (r2) etc
ie you send1, wait 5secs for r1, send s2 wait 5secs for r2 etc.

eg:	logon:~"" Userid: ~rootr Password? ~bongosr LanRoverE_FIP# ~"connect
port5r" options

This mimics the following sequence :
@ Userid: root

Shiva LanRover/E PLUS, Version 5.7 98/11/06
LanRoverE_JV1# connect port5
Connecting to Serial5 at 9600 BPS.
Escape character is CTRL-^ (30).

Type the escape character followed by C to get back,
or followed by ? to see other options.

To send a space, use s or dbl quote that string.
To wait a second - send a tilde (or redefine to your Wait chr)
All keywords - setup, logon etc -  are optional - if one does not exist, it is
Embedded spaces may be specified by enclosing within double quotes.

Null fields can be specified by two consequetive double quotes - "". If a wait
s required howver ALWAYS SPECIFY BEFORE the dbl quotes eg: ~~~"" for a 3 second
wait with nothing returned.

Version Control
;154x2	14feb99 added -h vis/all/pa for prehdr
	;a  1mar99 cosmetic - commonwr.c
	;b  9jun99 altzone for AIX etc
	;c  2nov99 added -S to ignore out-of-format data
	;d-e 14feb00 added -u/-U (s_PIPE)
	;f-h small mod to commonwr for anpa Spaces and WINNT tuning
	;i 27nov01 added -R dump file
	;j 15apr03 added CCN in -bCCN
	;k 03jul03 added -e chunksize
	;l 18aug03 bugette in commonwr
	;m 07jan04 bugette in chunks and added -O outque
	;n-o 26mar04 added -bAWP
	;p 15may04 timing stats
	;q 28jun04 tuning AWP
	;r 24sep04 speedy
	;s 02dec04 allow AWP timechecks if -S 0
	;t 07apr05 added -B Passive connection uses UDP
	;u 29dec06 added logon
	;v 12apr06 bugettes with do_widget
	;w 21nov07 added -E
	;x2 27nov07 added -X timeout and -I wireId

(copyright) 2014 and previous years FingerPost Ltd.