rate-files man page on YellowDog

Man page or keyword search:  
man Server   18644 pages
apropos Keyword Search (all sections)
Output format
YellowDog logo
[printable version]

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 letter (tag) followed by a colon  separates  the  entries.	 Addi‐
       tional  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 possibilities. In the rate source file (which is prepared by
	      pp_rate) a small 'i' puts the contents of the  include  file  in
	      the outputfile.  An 'I'-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  wildcard,
	      because matching is done straight top down.  There may be multi‐
	      ple 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 cer‐
	      tain 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  Provider‐
       header followed 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 dat‐
	      erange has to be enclosed in square brackets. 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 separated 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 fol‐
       low 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-pre‐
       processor  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  provider‐
       zone  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 dif‐
       ferent 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 +coun‐
       trycode for numbers only reachable in the own country) or an area  name
       or  alias  as  defined in country.dat.  Country names have to be trans‐
       lated 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 (workday, Monday to Friday), E (weekend), H (holiday) or * (every‐
       day).  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 seconds 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, definitions 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 originating 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@toetsch.at> (of this man page of course).	Tobias
       Becker <tobiasb@isdn4linux.de> added the tags r: and t:.

-lt-				  2005/02/23			 rate-files(5)
[top]

List of man pages available for YellowDog

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net