ipsvrd
This is the background server used to access data on a Fip Server.
It is normally placed in the SYSTEM file and forgot about.
Input switches are (all optional) :
-l : log requests default: no logging
-L : log requests and connections default: no logging
-d : top path default: /
-s : IP address or hostname to listen on default: boot address.
'-s +' will listen on ALL cards and address for this box.
-P : Port no to receive messages on default: 9140
-z : Name of Parameter file default: none
-D : display actions for Notes default: no
-u : dump incoming data default: no
-w : adjust the timeout in secs default: 4
on slow networks, try increasing it to 10 or more
-v : print version number and quit default: no
--------------------------------------------------
Notes upload version of ipsvrd is called ipnotwir
For testing, start the program in a terminal/command window and add the '-D'
input switch. This allows logging to the screen what is happening!
Parameter file for Notes is tables/notes/2NOTES (on WINNT 2NOTES.FIP)
notes-server: (hostname of the notes server)
eg notes-server:HOBBES
notes-path: (path to a local database)
notes-database: (path and name of database)
eg notes-database:editorial/CET_Edit.nsf
Where data is held locally and the database holds just a link to the files :
notes-data-drive: (letter)
notes-data-fiphdr: (fiphdr field)
notes-data-filename:/cet/\ND/\NP/\NS
notes-data-fileext:.txt
notes-data-ismac:
This just converts line ends to CR only
It does NOT convert any oither characters.
log-line: (extra logging)
For each field that needs to be filled in :
field: (Notes Field name) file:
field: (Notes Field name) file:richtext
Add the text of the file to this field
if richtext is added, it is a richtext type field
eg field:ArticleText file:
field: (Notes Field name) data:(progs.FipSeq)
field: (Notes Field name) data:(progs.FipSeq) type: (optional type)
Add metadata from progs.FipHdr or system variables into Notes fields
The optional type can be the special notes types of
type:list this is a controlled list
type:time this is a date/time field
type:number this is a number
The default is a string of text
If there are spaces in the Field name or the data specification, wrap double
quotes around them
examples
; progs.AdminDb
fixed:ND CN=LNCOV1/O=MG_REG
field:AdminDb data:\CN
; Headline
combie:QH XK|DI
field:Headline data:\QH
; no of characters in a NUMBER field
field:Character_count type:number data:\$c
; add time of insert to the Comments field
field:Comments data:"Sent From FIP - \$d-\$m-\$y at \$h:\$n:\$b"
; make sure progs.CopyCheck is blank
field:CopyCheck data:""
field:CopyCount type:number data:1
field:Correspondent data:\SU
; TIME
field:CreatedOn type:time
On Windows, there may be a permissions problem accessing the database with the
LOCALSYSTEM account. So the 'Fip Comms Manager' service must be started by a
logon that can see/modify Notes!
--------------------------------------------------
---- Input ----
Example of Input :
<?xml version="1.0" standalone="yes"?>
<FIPAGENT>
<ACTION>DIRLIST</ACTION>
<QUEUE>/fip/spool/2edsys</QUEUE>
<LOGON>albert</LOGON>
<PASSWD>HeyJude</PASSWD>
<SIZE/>
<DATE/>
</FIPAGENT>
Note - tags are case insensitive
---- Output ----
Example of Output :
<?xml version="1.0" standalone="yes"?>
<FIPAGENT>
<REPLY>
<ACTION>DIRLIST</ACTION>
<RESULT>231</RESULT>
<DEVICE-RESULT>0</DEVICE-RESULT>
<DATALENGTH>6507</DATALENGTH>
</REPLY>
</FIPAGENT>Data follows.......
Note there is no trailing NL
---- Notes ----
Return Codes
Ok - in the range 200-299
211 - Read complete
212 - Filter returns nothing
221 - Store complete
222 - Link complete (for LINK which succeeded)
231 - Directory List complete
241 - Delete complete
251 - Script complete
261 - Ignore complete
errors - in the range 400-499
general errors
401 - Nothing !
402 - No Action Specified
403 - No Logon Specified
404 - Password Incorrect
405 - Unknown Action Specified
406 - Timeout - incomplete Token
Read
411 - No File Specified
412 - No Such File
413 - File not Readable
Store/Append/Link
421 - No File Specified
422 - Exists but is NOT a File
423 - File exists - no overwrite selected
424 - Error Writing Zero Length File
425 - No Data Sent for new file
426 - Error Appending to File
427 - Error Appending to File
Dir List
431 - No Queue Specified
432 - Queue does NOT exist
Delete
441 - No File Specified
442 - No Such File
443 - File Permissions do not allow Delete
Script
451 - No Script Specified
452 - No Script File
453 - Not able to run Script file
454 - Script ran but errored
Ignore
no errors
NOTES-UPLOAD
461 - No File Specified
462 - No Data Sent for new file
463 - Not able to log onto the progs.DataBase
464 - Error uploading fields, pls check parameter file.
--------------------------------------------------
Tags and progs.SubTags
----------------
If the Action is DIRLIST :
queue - absolute queue or folder name
size/ - returns the size of each file
date/ - returns last modifcation date of each file
totals/ - returns only the number of items in the folder
If the Action is STORE :
file - filename with complete path
link - optional link - filename with complete path
unique/ - file MUST be uniquename
notunique/ - increment filename if exists
overwrite/ - overwrite texisting if exists
originals/ - save existing (if any) in /fip/originals
makequeue/ - make the queue
zerolength/ - allow/make a zero length file.
permissions - unix style permissions
script-after - Full path and all parameters - Mandatory
Note that progs.FipHdr field DD holds the filename
tmpfile - for use with scipt-after, just use a tmp file for the data
ignore-errors - for script
if the Action is APPEND :
file - filename with complete path
link - optional link - filename with complete path
originals/ - save existing (if any) in /fip/originals
makequeue/ - make the queue
If the Action is LINK :
file - filename with complete path
source - do NOT store the file, use this file to link
to, unless the link file does NOT exist.
unique/ - file MUST be uniquename
notunique/ - increment filename if exists
overwrite/ - overwrite texisting if exists
originals/ - save existing (if any) in /fip/originals
makequeue/ - make the queue
zerolength/ - allow/make a zero length file.
permissions - unix style permissions
If the Action is READ :
file - filename - Mandatory
filter - a grep of the line
sort - sort upside down
maxitems - give me only the first 100 lines - eg log files
There are no extra tags for NOTES UPLOAD as the progs.FipHdr is matched to Notes
fields
If the Action is SCRIPT - run Script :
script - Full path and all parameters - Mandatory
ignore-errors
If the Action is DELETE :
file - filename - Mandatory
Version Control
;001w 27nov99 added Notes Upload
;e 05jun00 added LINK
;f 08aug00 more error checking
;g 22aug00 redid DIRLIST a bit
;h 26mar02 added -s for -s+
;i 14jul03 added action APPEND as a type of STORE files
;j-k 19sep04 speedy
;l-m 26oct05 added script-after to store
;n-p 25oct06 cleanup and added dump -u plus more Notes stuff
;q-s 20nov06 added progs.RichText for file data
;t 20dec06 added META for STORE (missing dec 2005 mod)
;u 31may07 redid STORE/PERMISSIONS
;v2 20sep07 added -w (;v1 added IP address to log)
;w 30oct08 make notes* progs.FipSeq
(copyright) 2011 and previous years progs.FingerPost Ltd.
Topic revision: r1 - 21 Jan 2005 - 13:40:18 -
TWikiGuest