- isdnlog/tools/rate-at.c ... 1001, 1012

This commit is contained in:
akool 2000-05-15 19:00:19 +00:00
parent fad08c1bd4
commit 1a9f4f084f
2 changed files with 49 additions and 35 deletions

View File

@ -1,4 +1,4 @@
## $Id: Makefile.in,v 1.161 2000/05/13 14:22:15 akool Exp $ ## $Id: Makefile.in,v 1.162 2000/05/15 19:00:19 akool Exp $
## ##
## ISDN accounting for isdn4linux. ## ISDN accounting for isdn4linux.
## ##
@ -19,6 +19,9 @@
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
## ##
## $Log: Makefile.in,v $ ## $Log: Makefile.in,v $
## Revision 1.162 2000/05/15 19:00:19 akool
## - isdnlog/tools/rate-at.c ... 1001, 1012
##
## Revision 1.161 2000/05/13 14:22:15 akool ## Revision 1.161 2000/05/13 14:22:15 akool
## isdnlog-4.22 ## isdnlog-4.22
## - isdnlog/country-de.dat ... Patch from Andreas Barth ## - isdnlog/country-de.dat ... Patch from Andreas Barth
@ -1207,7 +1210,7 @@ SERVICEFILE = /etc/services
# DON'T EDIT BELOW THIS LINE # DON'T EDIT BELOW THIS LINE
###################################################################### ######################################################################
VERSION = 4.22 VERSION = 4.23
MANPAGES = isdnlog/callerid.conf.5 isdnlog/isdn.conf.5 \ MANPAGES = isdnlog/callerid.conf.5 isdnlog/isdn.conf.5 \
isdnlog/isdnformat.5 isdnlog/isdnlog.5 isdnlog/isdnlog.8 \ isdnlog/isdnformat.5 isdnlog/isdnlog.5 isdnlog/isdnlog.8 \

View File

@ -308,8 +308,9 @@ void rate_1001(void)
char *Zone[][2] = {{ "FreePhone", "112,122,133,141,142,144,+43800,+43801,+43802,+43803,+43804" }, char *Zone[][2] = {{ "FreePhone", "112,122,133,141,142,144,+43800,+43801,+43802,+43803,+43804" },
{ "Regionalzone", "111*,11820,15*,+437111,+437112,+437113,+437114,+43810,02290" }, { "Regionalzone", "111*,11820,15*,+437111,+437112,+437113,+437114,+43810,02290" },
{ "Österreichzone", "Österreich" }, { "Österreichzone", "Österreich" },
{ "Mobilfunk 1", "+43663,+43664,+43676" }, { "Mobilfunk A1/D", "+43663,+43664"},
{ "Mobilfunk 2", "+43699" }, { "Mobilfunk Max", "+43676" },
{ "Mobilfunk One", "+43699" },
{ "Online", "07189,194" }, { "Online", "07189,194" },
{ "AON Complete", "194040" }, { "AON Complete", "194040" },
{ "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" }, { "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
@ -340,12 +341,14 @@ void rate_1001(void)
/* Einheiten in 72 sec */ /* Einheiten in 72 sec */
/* Minutenpreis * 72 / 60 / 1.116 = Faktor-Minimum-Tarif */
double Faktor [][2] = {{ 0.00, 0.00 }, /* FreePhone */ double Faktor [][2] = {{ 0.00, 0.00 }, /* FreePhone */
{ 1.00, 0.45 }, /* Regionalzone */ { 1.00, 0.45 }, /* Regionalzone */
{ 2.88, 1.00 }, /* Österreichzone */ { 2.88, 1.00 }, /* Österreichzone */
{ 5.00, 3.75 }, /* Mobilfunk 1 */ { 3.60, 3.00 }, /* Mobilfunk A1 */
{ 5.59, 4.45 }, /* Mobilfunk 2 */ { 5.00, 3.75 }, /* Mobilfunk Max */
{ 4.80, 4.00 }, /* Mobilfunk One + Tele.Ring */
{ 0.60, 0.20 }, /* Online */ { 0.60, 0.20 }, /* Online */
{ 0.00, 0.00 }, /* AON Complete */ { 0.00, 0.00 }, /* AON Complete */
{ 4.80, 4.00 }, /* Ausland Zone 1 */ { 4.80, 4.00 }, /* Ausland Zone 1 */
@ -383,7 +386,7 @@ void rate_1001(void)
sprintf(s,"Telekom Austria %s",Name[t]); sprintf(s,"Telekom Austria %s",Name[t]);
rprintf ("P: [01.09.1999] 01,%d", s , t+1); rprintf ("P: [01.09.1999] 01,%d", s , t+1);
rprintf ("C:Maintainer:", "Michael Reinelt <reinelt@eunet.at>" ); rprintf ("C:Maintainer:", "Michael Reinelt <reinelt@eunet.at>" );
rprintf ("C:TarifChanged:", "01.09.1999" ); rprintf ("C:TarifChanged:", "01.05.2000" );
rprintf ("C:Zone:", "Die Regionalzone geht bis zu einer Entfernung von 50 Km, alles andere ist Österreichzone." ); rprintf ("C:Zone:", "Die Regionalzone geht bis zu einer Entfernung von 50 Km, alles andere ist Österreichzone." );
rprintf ("C:Special:", "Variable Taktung, abhängig von Zone und Tageszeit." ); rprintf ("C:Special:", "Variable Taktung, abhängig von Zone und Tageszeit." );
rprintf ("C:Name:", "Telekom Austria" ); rprintf ("C:Name:", "Telekom Austria" );
@ -1086,39 +1089,47 @@ void rate_1012(what) { /* 1012 == 1044 (Citykom) */
char *Zone[][2] = { char *Zone[][2] = {
{ "Österreich", "Österreich" }, { "Österreich", "Österreich" },
{ "Mobilfunk", "+43663,+43664,+43676,+43699" }, { "A1/D", "+43663,+43664" },
{ "Max", "+43676" },
{ "One","+43699" },
/* FIXME Surfnet 1012 01933 1012 ~50g / min 360/360 */ /* FIXME Surfnet 1012 01933 1012 ~50g / min 360/360 */
{ "Deutschland spezial", "Deutschland" }, /* 1.90 */ {"Deutschland", "Deutschland"},
{ "Nachbarn", "Frankreich, Italien, Schweiz, Liechtenstein, Slowakei, Slowenien, Tschechien, Ungarn" }, /* 2.30 */ {"Schweiz ...", "Schweiz, Italien, Frankreich, Liechtenstein"},
{ "Europa 1 + USA", "Belgien, Dänemark, Finnland, Großbritannien, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Schweden, Spanien, Vereinigte Staaten (USA)" }, /* 3.50 */ {"Belgien ...", "Belgien, Dänemark, Finnland, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Puerto Rico, Schweden, Spanien, USA inkl. Alaska und Hawaii, Slowakei, Slowenien, Tschechien, Ungarn"},
{ "Europa 2", "Andorra, Bosnien-Herzegowina, Färöer-Inseln, Jugoslawien, Kroatien, Malta, Monaco" }, /* 4.90 */ {"Andorra ...", "Andorra, Bosnien-Herzegowina, Faröer Inseln, Jugoslawien, Kroatien, Malta, Monaco, Montenegro"},
{ "Europa 3", "Albanien, Bulgarien, Estland, Griechenland, Mazedonien, Polen, Portugal, Rumänien, San Marino, Tunesien, Ukraine,Weißrußland, Zypern" }, /* 5.90 */ {"Albanien ...", "Albanien, Bulgarien, Estland, Griechenland, Mazedonien, Polen, Portugal, Rumänien, San Marino, Tunesien, Ukraine, Zypern"},
{ "Welt 1", "Algerien, Australien, Gibraltar, Hongkong, Island, Israel, Japan, Lettland, Litauen, Marokko, Neuseeland, Russische Föderation, Singapur, Südkorea, Türkei" }, /* 7.90 */ {"Algerien ...", "Algerien, Australien, Gibraltar, Hongkong, Island, Israel, Japan, Lettland, Litauen, Marokko, Neuseeland, Russische Föderation, Singapur, Südkorea, Türkei"},
{ "Welt 2", "Bermuda,Antigua und Barbuda,St. Lucia,Dominikanische Republik,Dominica,Britische Jungferninseln,Turks- und Caicosinseln,Puerto Rico,Anguilla,Bahamas,Jamaika,St. Vincent und Grenadinen,Montserrat,St. Kitts und Nevis,Grenada,Trinidad und Tobago,Hawaii,Marianen (SaipanNord-),Kaimaninseln,Amerikanische Jungferninseln,Barbados,+" }}; /* 22.00 */ {"Alle übrigen Länder", "+"}
};
double Tarif[] = { 0.90 ,
4.00 , double Tarif[][2] = { { 0.85 , 0.5 },
2.90 , { 4.0 , 2.8 },
3.70 , { 3.9 , 3.7 },
4.40 , { 3.9 , 3.7 }, /* 60/1 */
5.60 , {1.90,1.90}, /* Deutschland ... */
6.10 , {2.30,2.30}, /* Schweiz ... */
7.90 , {3.50,3.50}, /* Belgien ... */
24.90}; {4.90,4.90}, /* Andorra ... */
{5.90,5.90}, /* Albanien ... */
{7.90,7.90}, /* Algerien ... */
{22.00,22.0} /* Alle übrigen Länder der Welt ... */
};
int z; int z;
if(what==1012) { if(what==1012) {
rprintf ("P:12", "1012" ); rprintf ("P:12", "1012" );
rprintf ("C:TarifChanged:", "21.12.1999" ); rprintf ("C:TarifChanged:", "12.05.2000" );
rprintf ("C:Name:", "1012 privat" ); rprintf ("C:Name:", "Tele.Ring" );
rprintf ("C:Address:", "Linzer Str. 221, A-1140 Wien" ); rprintf ("C:Address:", "Linzer Str. 221, A-1140 Wien" );
rprintf ("C:Homepage:", "http://www.1012privat.at" ); rprintf ("C:Homepage:", "http://www.telering.at" );
rprintf ("C:TarifURL:", "http://www.telering.at/produkte/privat/fest/alles.php?path=prod-1-1-1-1-1-1" );
rprintf ("C:Telefon:", "0800 1012 1012" ); rprintf ("C:Telefon:", "0800 1012 1012" );
} }
else { else {
rprintf ("P:44", "Citykom" ); rprintf ("P:44", "Citykom" );
rprintf ("C:TarifChanged:", "15.09.1999" ); rprintf ("C:TarifChanged:", "11.05.2000" );
rprintf ("C:Name:", "Citykom Austria Telekommunikations GmbH" ); rprintf ("C:Name:", "Citykom Austria Telekommunikations GmbH" );
rprintf ("C:Address:", "Alserbachstr. 144-16, A-1090 Wien" ); rprintf ("C:Address:", "Alserbachstr. 144-16, A-1090 Wien" );
rprintf ("C:Homepage:", "http://www.citykom.at" ); rprintf ("C:Homepage:", "http://www.citykom.at" );
@ -1128,13 +1139,13 @@ void rate_1012(what) { /* 1012 == 1044 (Citykom) */
} }
for (z=0; z<COUNT(Zone); z++) { for (z=0; z<COUNT(Zone); z++) {
rprintf ("Z:%d", Zone[z][0] , z+1); rprintf ("Z:%d", Zone[z][0] , z+1);
if (z==0 && what==1012) { if (Tarif[z][0]==Tarif[z][1]) {
rprintf ("T: [15.11.1999-01.02.2000] */17-19=%.2f(60)/60/1", "Happy Hour" , 0.79); rprintf ("T:*/*=%.2f(60)/60/1", "0-24h" , Tarif[z][0]);
rprintf ("T: [15.11.1999-01.02.2000] */19-17=%.2f(60)/60/1", "0-24h o.HH" , Tarif[z]); } else {
rprintf ("T:*/*=%.2f(60)/60/1", "0-24h" , Tarif[z]); rprintf ("T:W/8-18=%.2f(60)/60/1", "Tag" , Tarif[z][0]);
rprintf ("T:W/18-8=%.2f(60)/60/1", "Nacht" , Tarif[z][1]);
rprintf ("T:E,H/*=%.2f(60)/60/1", "Weekend" , Tarif[z][1]);
} }
else
rprintf ("T:*/*=%.2f(60)/60/1", "0-24h" , Tarif[z]);
print_area(Zone[z][1]); print_area(Zone[z][1]);
} }
} }
@ -2435,7 +2446,7 @@ int main (int argc, char *argv[])
printf ("# Many thanks to Daniela Bruder <dbruder@sime.com>\n"); printf ("# Many thanks to Daniela Bruder <dbruder@sime.com>\n");
printf ("# for collecting and preparing most of the call charges.\n\n\n"); printf ("# for collecting and preparing most of the call charges.\n\n\n");
printf ("V:1.92-Austria [28-Feb-2000]\n\n"); printf ("V:1.93-Austria [15-Mai-2000]\n\n");
printf ("U:%%.3f öS\n"); printf ("U:%%.3f öS\n");
write_services(); write_services();