Isdnlog has a replay mode for debugging, where you can simulate previous recorded events. In that case use "-" instead of a device.
Example: a PABX in Germany shows the number of an incoming call from Hamburg as "00040...". When calling out to Hamburg, it shows the number as "0040...". This means that on incoming calls, three zeroes must be removed, and on outgoing calls two zeroes must be removed (the number must be normalized to be without any leading zeroes in the case of a national number; international numbers must have one leading zero). So, in this case, the option -03:2 would be correct.
Some setups may require workarounds for reliable logging. These workarounds are enabled by addition of the following numbers to the dual value. They are intended for the dualmode but may also be useful without. In this case, specify only the sum of the following numbers without 1 or 2 for the dual mode.
This may also help in situations where an unanswered incoming call causes incorrect logging of the following outgoing call.
Isdnlog will close and reopen this file after a "kill -HUP".
You can define aliases for telephone numbers (see callerid.conf(5) and isdn.conf(5) for more information). Isdnlog will compare all numbers to the list of aliases, and when a match is found, the alias is displayed instead of the number.
On every outgoing connection, isdnlog will calculate the charge time from day of week, time of day and the distance zone of the connection.
The kernel needs to know how long the charge time is, and how many seconds before the next charge signal it should hang up. You have to set the second parameter with X in the form number:number (hang up seconds before next charge signal for charge times greater than or equal to 20 seconds : for charge times of less than 20 seconds).
With this information, isdnlog will call "isdnctrl chargeint <device> <charge time>" and "isdnctrl huptimeout <device> <seconds before charge signal>" (it actually communicates directly with isdn, without calling isdnctrl, but this would have the same effect).
You should run isdnlog with -t1 or better with -t2, so isdnlog sets the local time in sync with telephone switching office.
If there is a third number in value, this is the minimum connection time for providers
charging a basic rate per connection.
e.g. hangup 3:5:60
isdnlog can react on any event and start programs. This feature is disabled unless you activate it with:
isdnlog will log all connections in /var/lib/isdn/calls. isdnrep can parse this file and calculate costs.
I start isdnlog with "isdnlog -f/etc/isdn/isdn.conf /dev/isdnctrl0". This file contains a [options] section:
[options] #newline=no # show all throughput messages in one line. #width=80 # limit log messages to 80 characters per line #amt=0:80:81 # digits to get a line through your PABX log=15 # maximum debug mode flush=no # flush logfile after every write pipe=no # pipe log messages to stderr daemon=yes # run isdnlog as daemon stdout=0x1ff7 # stderr logging level outfile=+/var/log/isdn.log # log to file #console= # log to a console monitor=yes # emulate output for imon/imontty/... syslog=0x1ff7 # syslog logging level #xisdn=0x07ff # x11 output level #calls= # store call information for x11 client #xlog= # store messages for x11 client thruput=60 # if throughput logging is enabled: log every X seconds time=2 # set time: 0 = never; 1 = once; 2 = every time #hangup= # simulate charge signals start=yes # enable starting programs