rate-files - phpMan

Command: man perldoc info search(apropos)  


XXX
XXX WARNING: old character encoding and/or character set
XXX
rate-files(5)                                                    rate-files(5)



NAME
       rate-files - Format of rate-files

DESCRIPTION
       The  rate-files  used  by  isdnlog(8) and by isdnrate(1) are textfiles defining the
       telephone fees for different destinations at certain dates/times for all  providers
       of one country.
       The rate-files have the following overall layout:

       Header entries

       Provider entries

       Comments  starting with a hash-sign ’#’ and empty lines are ignored. The first let-
       ter (tag) followed by a colon separates the entries. Additional white space may  be
       used after the tags to group content more readably.

   Special entries
       I:includefile

       i:includefile

              includefile  get’s substituted at the current position. There are two possi-
              bilities. In the rate source file (which is prepared by pp_rate) a small ’€™
              puts  the contents of the include file in the outputfile.  An ’€™-Tag means,
              for the preprocessor, write a new output file (the  includefile)  and  leave
              the tag in the rate-files. This is for real include files.
              Includes  may  be  nested  twice.  The filename should not contain any paths
              (except for ’i’ of course), they are taken relative to their parent file.


   Header entries
       V:versionsstring

              e.g.  V:1.0-Germany [18-Mar-1999]

       S:Servicename

       N:Servicenumber[,Servicenumber...]

              This defines telephone services with special numbers.  Special  numbers  are
              numbers  which  a)  start  with  no  ’0’  or b) can not be dialed with every
              provider. A number with a variable length should have the  wildcard  ’*’  at
              the end, eg.  07189* which matches all numbers starting with 07189.  Numbers
              with wildcards should be placed after numbers which would  match  the  wild-
              card,  because matching is done straight top down.  There may be multiple N:
              tags for one telephone service.

              e.g.
              S:Internet
              N:07189*,19430
              N:19440

       U:currencyfmt currency

              If the first char of currencyfmt is ^,  the  amount  is  multiplied  by  100
              before it is displayed without leading ^.

              e.g. (one of these, ¢ = cent)
              U:%.3f EUR
              U:^%.3f ¢

       X:num_wildcard = provider[zZone] [,...]

              Define exception. If a certain number is always routed to a certain provider
              and not to the preselected provider, you should use this tag.
              e.g. in Austria, online service numbers 194x or 07189 go always via Telekom,
              ignoring your preselection:
              X: 194*=1,07189*=1
              or
              X: 194*=1z6    # Provider 1 Zone 6

   Provider entries
       A  new  provider  starts always with a P: tag and consists of a Providerheader fol-
       lowed by Providerzones.

   Providerheader
       P:[daterange] providernumber providername

              daterange is [[fromDate][-toDate]]
              This defines a time range for the validity of rates for this provider. Dates
              have to be numeric in format dd.mm.yyyy.  Note: as time is assumed as 00:00,
              take for toDate the day+1. The daterange has to be enclosed in square brack-
              ets. Either fromDate or -toDate or both may be given.
              The  providernumber  may be a simple number, normally the last digits of the
              VBN-number, or providernumber,variant if a provider has different connection
              fees.
              e.g.
              P:02 UTA
              or
              P:[01.01.1999] 1,1 Telekom Minimumfee

       B:vbn

       VBN-Number for provider

              e.g.  B:1002
              This is the number to select this provider and depends on your country.

       C:COMMENT: comment

       COMMENT may be an arbitrary string, but the following entries are used already:


              C:Name:           Providername
              C:Maintainer:     Who did the hard work
              C:TarifChanged:   and when
              C:Address:        Provideraddress
              C:Homepage:       http:URL for provider
              C:TarifURL:       URL for tarif info
              C:EMail:          EMail-Address
              C:Telefon:        Telefon number
              C:Telefax:        Fax number
              C:Hotline:        Telefon number
              C:Zone:           Textual info about zones
              C:Special:        Guess
              C:GT:             Additional charge text
              C:GF:             Additional charge formula

       If  there are multiple comments with the same comment name, they get appended sepa-
       rated by a newline char.

       D:zone

       Name of zone file (inserted for %s in ZONEFILE = /usr/lib/isdn/zone-CC-%s.dat  from
       isdn.conf)

              e.g.  D:1001 # zone file is zone-at-1001.gdbm

       Note:  if  the  provider  has  no different domestic zones, you should not define a
       D:tag.

   Providerzones
       A Providerzone entry starts with a Z: tag followed by one or more A: and T: tags.

       A zone is a region of areas, for which the same rates apply. Domestic  and  foreign
       zones should not be mixed and all foreign zones should follow domestic zones.

       R:prov, sub ; zonelist

       Read zones from provider prov subprovider number sub.  A zonelist is defined below.
       If the referenced provider doesn’t have a subprovider number, the sub must  be  -1.
       The  referenced  provider may be defined before or after the R:-tag. The referenced
       zones must be real Z:-entries, not references themself. The zone numbers and  names
       are  taken  from  the referenced provider. The last to_zone may be missing then all
       zones from the start zone are used.
       e.g.
       R:1,1 ; 1-4,6, 10-

       There some limitations:
       The reference cannot be more exact than  the  referenced  providerzones.   R:42,0;1
       will not work as desired if P:42,0 defines Z:1-4.
       It  is  not  possible  to  reference  a providerzone without areas when the default
       domestic zone (with your countrycode as area) is not included in the same range  of
       referenced  zones.   This  applies  mainly  to zones for different distances in the
       national fixed network, e.g. Z:1-3 in Germany.

       r:prov, sub ; start_zone-

       This tag is related to the R:-tag.  It  is  interpreted  by  the  rate-preprocessor
       pp_rate.   All  providerzones  with  a  zone number greater or equal start_zone are
       copied from provider prov[,sub] and replace the r:-tag.  If an area is already used
       in  a previous providerzone of the current provider, it will not be copied.  If all
       areas of a providerzone are already defined, the entire zone will  not  be  copied.
       Lines  that  contain  only comments are also not copied, but comments at the end of
       other lines are.

       This tag is designed for providers with a rate variant that offers  different  fees
       for some foreign destinations.

       Z:zonelist zonename

       where zonelist is zone[-to_zone][,...]

              e.g.  Z:1-2,4 Interior

       A:area[,area...]

       area  may  be  a  telephone number (including +countrycode for numbers which may be
       reached from everywhere, a telephone number without +countrycode for  numbers  only
       reachable  in  the own country) or an area name or alias as defined in country.dat.
       Country names have to be translated to their code by the rate-preprocessor pp_rate.

              e.g.  A:19430,07189 # Online

              e.g.  A:+31,Belgium # Int 1

       Note:  There should always be exactly one zone with your countrycode or countryname
       respectively:

              Z:4
              A:+49
              T:...

       Countrynames like Belgium in the above example are replaced by their  ISO-Code  (or
       TLD) with the rate preprocessor pp_rate.

       T:[daterange]daylist/timelist[!]=chargelist chargename

       where  daterange  is  [[fromDate][-toDate]]  like  the corresonding provider entry.
       Note that the daterange is enclosed in sqare brackets, either fromDate  or  -toDate
       are optional.

       daylist  is day[-day][,...]  and day is a daynumber (1=Mon, 2=Tue, ...) or W (work-
       day, Monday to Friday), E (weekend), H (holiday) or * (everyday).  If more than one
       of  these  days match a given date, the following order of priority (highest first)
       applies: H 7 .. 1 E W *.

       timelist is hour[-hour][,hour] where hour is a number 0..23 or * for everytime.

       After daylist/timelist follows = or != which means, provider doesn’t  adjust  rates
       on a rate boundary e.g. at 18h00.

       A chargelist consists of

       [MinCharge|]Charge[(Divider)]/Duration[:Delay][/Duration...]

       where MinCharge| is an (optional) minimum charge, Charge the rate per Duration sec-
       onds or optional rate per (Divider) seconds, Duration is the length of  one  charge
       unit  in  seconds. After Delay the next duration is taken. If delay is not given it
       equals to the duration.  The last duration may not have a  delay  and  may  not  be
       zero.

              EXAMPLES
              T:1-4/8-18=1.5(60)/60/1 workday

              Monday  until  Thursday, daytime the charge is 1.50 per minute, first charge
              is for one minute after this charging is calculated in seconds interval.

              T:W/18-8=0.30|1.2(60)/1 night

              On workdays, night, charge is the bigger of 1.20 per minute or 0.30

              T:*/*=0.50/0,1(60)/1 always

              Everyday, everytime there is a connection fee of 0.50, then charge is 1  per
              minute.

              T:H/*=0.5/60:600,0.5/30 holidays

              On  holidays,  everytime  a  charge of 0.5 per minute in a minutes interval,
              after 10 minutes 0.5 per half minute in half a minutes interval.

              T:*/*=1.3/0,0/1

              Everyday, everytime the charge is 1.30 independent of duration, which  could
              also be written as T:*/*=1.3|0/1.

              T: [-01.02.2000] */17-19=0.79(60)/60/1 Happy Hour
              T: [-01.02.2000] */19-17=0.90(60)/60/1 Normal

              Until the first of Feb 0:00h (i.e. end is 31.1.2000 24:00), everyday between
              17 and 19h a charge of 0.79 per minute, the first minute is  always  charged
              fully, after this, charging is calculated in seconds interval.
              The  second  entry  defines  a  charge of 0.90 in the time outside the happy
              hour.

              T:[15.11.1999-01.02.2000]*/17-19=0.79(60)/60/1 HH

              Like above, but a full date range is given.

       The next two t:-tags are interpreted  by  pp_rate  and  replaced  by  one  or  more
       T:-lines.  Both methods can be used together.

       t:[daterange]?[H]=chargelist chargename

       This line is replaced by according T:-lines for not yet defined day/hour pairs.

       If  a  daterange  is  given, only previous T:-lines without a daterange or with the
       same daterange will be considered as earlier definitions.  If H is  noted,  defini-
       tions will also be added for holidays.

              EXAMPLE
              T:W/08-18=0.10/60 normal time
              t:?H=0.04/60 save time

              This lines will lead to the following lines after pp_rate:

              T:W/08-18=0.10/60 normal time
              T:W/18-08=0.04/60 save time
              T:E,H/*=0.04 save time

       t:daterange=srcrange [chargename]

       Generates  T:-lines for daterange by copying previous T:-lines with srcrange in the
       same zone.  If a chargename is given, it will replace the chargename of the  origi-
       nating line.  srcrange can be shortened as long as it remains definite.

              EXAMPLE
              T:[-24.12.2003]W/*=0.08/60 on workdays
              T:[-24.12.2003]E,H/*=0.06 weekend
              T:[24.12.2003-25.12.2003]*/*=0.04 Christmas Eve
              t:[25.12.2003-31.12.2003]=[-24.12.2003]
              t:[31.12.2003-01.01.2004]=[24.12.] New Year’s Eve
              t:[01.01.2004]=[-24.12.]

              This will be transformed into:

              T:[-24.12.2003]W/*=0.08/60 on workdays
              T:[-24.12.2003]E,H/*=0.06/60 weekend
              T:[24.12.2003-25.12.2003]*/*=0.04/60 Christmas Eve
              T:[25.12.2003-31.12.2003]W/*=0.08/60 on workdays
              T:[25.12.2003-31.12.2003]E,H/*=0.06/60 weekend
              T:[31.12.2003-01.01.2004]=0.04/60 New Years’ Eve
              T:[01.01.2004]W/*=0.08/60 on workdays
              T:[01.01.2004]E,H/*=0.06/60 weekend

SEE ALSO
       isdnlog(8), isdnrate(1), rate.conf(5), isdnlog/README, rate-at.dat

AUTHOR
       Leopold Toetsch <lt AT toetsch.at> (of this man page of course).  Tobias Becker <tobi-
       asb AT isdn4linux.de> added the tags r: and t:.



-lt-                              2005/02/23                     rate-files(5)

Generated by $Id: phpMan.php,v 4.55 2007/09/05 04:42:51 chedong Exp $ Author: Che Dong
On Apache/1.3.41 (Unix) PHP/5.2.5 mod_perl/1.30 mod_gzip/1.3.26.1a
Under GNU General Public License
2009-01-10 10:34 @38.103.63.58 CrawledBy CCBot/1.0 (+http://www.commoncrawl.org/bot.html)
Valid XHTML 1.0!Valid CSS!