isdnlog Version 3.30
- rate-de.dat V:1.02-Germany [03-Jun-1999 19:49:22] - small fixes
This commit is contained in:
parent
97b07fdb05
commit
9bea755f99
|
@ -19,6 +19,20 @@
|
||||||
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
## Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
##
|
##
|
||||||
## $Log$
|
## $Log$
|
||||||
|
## Revision 1.82 1999/05/22 10:17:50 akool
|
||||||
|
## isdnlog Version 3.29
|
||||||
|
##
|
||||||
|
## - processing of "sonderrufnummern" much more faster
|
||||||
|
## - detection for sonderrufnummern of other provider's implemented
|
||||||
|
## (like 01929:FreeNet)
|
||||||
|
## - Patch from Oliver Lauer <Oliver.Lauer@coburg.baynet.de>
|
||||||
|
## - Patch from Markus Schoepflin <schoepflin@ginit.de>
|
||||||
|
## - easter computing corrected
|
||||||
|
## - rate-de.dat 1.02-Germany [22-May-1999 11:37:33] (from rate-CVS)
|
||||||
|
## - countries-de.dat 1.02-Germany [22-May-1999 11:37:47] (from rate-CVS)
|
||||||
|
## - new option "-B" added (see README)
|
||||||
|
## (using "isdnlog -B16 ..." isdnlog now works in the Netherlands!)
|
||||||
|
##
|
||||||
## Revision 1.81 1999/05/13 11:38:43 akool
|
## Revision 1.81 1999/05/13 11:38:43 akool
|
||||||
## isdnlog Version 3.28
|
## isdnlog Version 3.28
|
||||||
##
|
##
|
||||||
|
@ -646,7 +660,7 @@ SERVICEFILE = /etc/services
|
||||||
# DON'T EDIT BELOW THIS LINE
|
# DON'T EDIT BELOW THIS LINE
|
||||||
######################################################################
|
######################################################################
|
||||||
|
|
||||||
VERSION = 3.29
|
VERSION = 3.30
|
||||||
|
|
||||||
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 \
|
||||||
|
|
|
@ -20,6 +20,9 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.28 1999/06/01 19:33:27 akool
|
||||||
|
* rate-de.dat V:1.02-Germany [01-Jun-1999 20:52:32]
|
||||||
|
*
|
||||||
* Revision 1.27 1999/05/22 10:18:18 akool
|
* Revision 1.27 1999/05/22 10:18:18 akool
|
||||||
* isdnlog Version 3.29
|
* isdnlog Version 3.29
|
||||||
*
|
*
|
||||||
|
@ -716,27 +719,33 @@ static void showRates(RATE Rate, char *message)
|
||||||
} /* showRates */
|
} /* showRates */
|
||||||
|
|
||||||
|
|
||||||
|
#define WIDTH 13
|
||||||
|
|
||||||
static void showLCR(int duration)
|
static void showLCR(int duration)
|
||||||
{
|
{
|
||||||
auto int tz, hour, provider, lastprovider = UNKNOWN, lasthour = UNKNOWN, *p;
|
auto int tz, hour, provider, lastprovider = UNKNOWN, lasthour = UNKNOWN, *p;
|
||||||
auto int useds = 0, maxhour, leastprovider = UNKNOWN;
|
auto int useds = 0, maxhour, leastprovider = UNKNOWN;
|
||||||
auto int ignoreprovider = UNKNOWN;
|
auto int ignoreprovider = UNKNOWN;
|
||||||
auto RATE Rate;
|
auto int z, z1, z2, z3;
|
||||||
|
auto double price, bestRate, lastRate;
|
||||||
|
auto double lastDTAG, DTAGRate;
|
||||||
|
auto RATE Rate;
|
||||||
#if 0
|
#if 0
|
||||||
auto int probe[] = { REGIOCALL, GERMANCALL, C_NETZ, D1_NETZ, D2_NETZ, E_PLUS_NETZ, E2_NETZ, INTERNET, AUKUNFT_IN, AUSKUNFT_AUS, 0 };
|
auto int probe[] = { REGIOCALL, GERMANCALL, C_NETZ, D1_NETZ, D2_NETZ, E_PLUS_NETZ, E2_NETZ, INTERNET, AUKUNFT_IN, AUSKUNFT_AUS, 0 };
|
||||||
#else
|
#else
|
||||||
auto int probe[] = { REGIOCALL, GERMANCALL, D2_NETZ, INTERNET, AUKUNFT_IN, AUSKUNFT_AUS, 0 };
|
auto int probe[] = { REGIOCALL, GERMANCALL, D2_NETZ, INTERNET, AUKUNFT_IN, 0 };
|
||||||
#endif
|
#endif
|
||||||
auto int used[MAXPROVIDER];
|
auto int used[MAXPROVIDER];
|
||||||
auto int hours[MAXPROVIDER];
|
auto int hours[MAXPROVIDER];
|
||||||
auto char lastmessage[BUFSIZ], message[BUFSIZ], *px;
|
auto char lastmessage[BUFSIZ], message[BUFSIZ], *px;
|
||||||
auto struct tm *tm;
|
auto struct tm *tm;
|
||||||
auto time_t werktag, wochenende;
|
auto time_t werktag, wochenende;
|
||||||
|
auto char *msg;
|
||||||
|
|
||||||
|
|
||||||
time(&werktag);
|
time(&werktag);
|
||||||
|
|
||||||
print_msg(PRT_NORMAL, "Least-Cost-Routing-Table [Verbindungsdauer:%d Sekunden], Stand: %s\n", duration, ctime(&werktag) + 4);
|
print_msg(PRT_NORMAL, "Least-Cost-Routing-Table [Verbindungsdauer:%d Sekunden], Stand: %s (C)Copyright 1999 AKsoftware - Andreas Kool\n", duration, ctime(&werktag) + 4);
|
||||||
|
|
||||||
tm = localtime(&werktag);
|
tm = localtime(&werktag);
|
||||||
|
|
||||||
|
@ -747,19 +756,21 @@ static void showLCR(int duration)
|
||||||
else
|
else
|
||||||
wochenende = werktag + ((6 - tm->tm_wday) * 24 * 60 * 60);
|
wochenende = werktag + ((6 - tm->tm_wday) * 24 * 60 * 60);
|
||||||
|
|
||||||
|
#if 0
|
||||||
retry:
|
retry:
|
||||||
|
#endif
|
||||||
|
|
||||||
memset(used, 0, sizeof(used));
|
memset(used, 0, sizeof(used));
|
||||||
memset(hours, 0, sizeof(hours));
|
memset(hours, 0, sizeof(hours));
|
||||||
|
|
||||||
for (tz = 0; tz < 2; tz++) { /* Werktag .. Wochendende */
|
for (tz = 0; tz < 2; tz++) { /* Werktag .. Wochenende */
|
||||||
|
|
||||||
switch (tz) {
|
switch (tz) {
|
||||||
case 0 : print_msg(PRT_NORMAL, "Werktag:\n");
|
case 0 : print_msg(PRT_NORMAL, "\nWerktag:\n");
|
||||||
tm = localtime(&werktag);
|
tm = localtime(&werktag);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 1 : print_msg(PRT_NORMAL, "Wochenende/Feiertag:\n");
|
case 1 : print_msg(PRT_NORMAL, "\nWochenende/Feiertag:\n");
|
||||||
tm = localtime(&wochenende);
|
tm = localtime(&wochenende);
|
||||||
break;
|
break;
|
||||||
} /* switch */
|
} /* switch */
|
||||||
|
@ -771,7 +782,7 @@ retry:
|
||||||
switch (*p) {
|
switch (*p) {
|
||||||
case REGIOCALL : print_msg(PRT_NORMAL, " RegioCall (im Umkreis von 50 km):\n"); break;
|
case REGIOCALL : print_msg(PRT_NORMAL, " RegioCall (im Umkreis von 50 km):\n"); break;
|
||||||
case GERMANCALL : print_msg(PRT_NORMAL, " GermanCall (Deutschlandweit):\n"); break;
|
case GERMANCALL : print_msg(PRT_NORMAL, " GermanCall (Deutschlandweit):\n"); break;
|
||||||
case D2_NETZ : print_msg(PRT_NORMAL, " Mobilfunk (alle Handy's 01610,01617,01619,01618,0170,0171,0172,0173,0177,0178,0176,0179):\n"); break;
|
case D2_NETZ : print_msg(PRT_NORMAL, " Mobilfunk (alle Handy's):\n"); break;
|
||||||
#if 0
|
#if 0
|
||||||
case C_NETZ : print_msg(PRT_NORMAL, " C Mobilfunk:\n"); break;
|
case C_NETZ : print_msg(PRT_NORMAL, " C Mobilfunk:\n"); break;
|
||||||
case D1_NETZ : print_msg(PRT_NORMAL, " D1 Mobilfunk:\n"); break;
|
case D1_NETZ : print_msg(PRT_NORMAL, " D1 Mobilfunk:\n"); break;
|
||||||
|
@ -793,19 +804,79 @@ retry:
|
||||||
|
|
||||||
tm->tm_hour = hour;
|
tm->tm_hour = hour;
|
||||||
tm->tm_sec = tm->tm_min = 0;
|
tm->tm_sec = tm->tm_min = 0;
|
||||||
memset(&Rate, 0, sizeof(Rate));
|
|
||||||
Rate.zone = *p;
|
z1 = *p;
|
||||||
|
|
||||||
|
if (z1 == D2_NETZ)
|
||||||
|
z2 = 30;
|
||||||
|
else if (z1 == INTERNET)
|
||||||
|
z2 = 159;
|
||||||
|
else if (z1 == AUKUNFT_IN)
|
||||||
|
z2 = 59;
|
||||||
|
else
|
||||||
|
z2 = z1;
|
||||||
|
|
||||||
|
z3 = UNKNOWN;
|
||||||
|
|
||||||
|
price = 999999.9;
|
||||||
|
|
||||||
|
for (z = z1; z <= z2; z++) {
|
||||||
|
memset(&Rate, 0, sizeof(Rate));
|
||||||
|
Rate.zone = z;
|
||||||
|
Rate.start = mktime(tm);
|
||||||
|
Rate.now = Rate.start + duration - ZAUNPFAHL;
|
||||||
|
|
||||||
|
provider = getLeastCost(&Rate, ignoreprovider);
|
||||||
|
|
||||||
|
/* print_msg(PRT_NORMAL, "z=%d, provider=%d, Rate.Price=%g\n", z, provider, Rate.Price); */
|
||||||
|
|
||||||
|
if (provider == UNKNOWN) /* Bitte keine L<>cken !! */
|
||||||
|
break;
|
||||||
|
|
||||||
|
if (Rate.Price < price) {
|
||||||
|
price = Rate.Price;
|
||||||
|
z3 = z;
|
||||||
|
} /* if */
|
||||||
|
} /* for */
|
||||||
|
|
||||||
|
if (z3 != UNKNOWN) {
|
||||||
|
memset(&Rate, 0, sizeof(Rate));
|
||||||
|
Rate.zone = z3;
|
||||||
|
Rate.start = mktime(tm);
|
||||||
|
Rate.now = Rate.start + duration - ZAUNPFAHL;
|
||||||
|
|
||||||
|
provider = getLeastCost(&Rate, ignoreprovider);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
print_msg(PRT_NORMAL, "OOPS: cannot find cheapest provider?\n");
|
||||||
|
|
||||||
|
|
||||||
|
memset(&Rate, 0, sizeof(Rate));
|
||||||
|
Rate.prefix = provider;
|
||||||
|
Rate.zone = z3;
|
||||||
Rate.start = mktime(tm);
|
Rate.start = mktime(tm);
|
||||||
Rate.now = Rate.start + duration - ZAUNPFAHL;
|
Rate.now = Rate.start + duration - ZAUNPFAHL;
|
||||||
|
|
||||||
provider = getLeastCost(&Rate, ignoreprovider);
|
(void)getRate(&Rate, &msg);
|
||||||
|
bestRate = Rate.Charge;
|
||||||
showRates(Rate, message);
|
showRates(Rate, message);
|
||||||
|
|
||||||
|
memset(&Rate, 0, sizeof(Rate));
|
||||||
|
Rate.prefix = DTAG;
|
||||||
|
Rate.zone = z3;
|
||||||
|
Rate.start = mktime(tm);
|
||||||
|
Rate.now = Rate.start + duration - ZAUNPFAHL;
|
||||||
|
|
||||||
|
(void)getRate(&Rate, &msg);
|
||||||
|
DTAGRate = Rate.Charge;
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
print_msg(PRT_NORMAL, "DEBUG::tz=%d, zone=%d, Hour=%02d, P=%d, %s lasthour=%d, lastprovider=%d, now=%s", tz, *p, hour, provider, getProvidername(provider), lasthour, lastprovider, ctime(&Rate.start));
|
print_msg(PRT_NORMAL, "DEBUG::tz=%d, zone=%d, Hour=%02d, P=%d, %s lasthour=%d, lastprovider=%d, now=%s", tz, *p, hour, provider, getProvidername(provider), lasthour, lastprovider, ctime(&Rate.start));
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (lastprovider == UNKNOWN) {
|
if (lastprovider == UNKNOWN) {
|
||||||
|
lastRate = bestRate;
|
||||||
|
lastDTAG = DTAGRate;
|
||||||
lastprovider = provider;
|
lastprovider = provider;
|
||||||
strcpy(lastmessage, message);
|
strcpy(lastmessage, message);
|
||||||
} /* if */
|
} /* if */
|
||||||
|
@ -814,10 +885,16 @@ retry:
|
||||||
lasthour = hour;
|
lasthour = hour;
|
||||||
|
|
||||||
if (provider != lastprovider) {
|
if (provider != lastprovider) {
|
||||||
px = getProvidername(lastprovider);
|
if (lastprovider == UNKNOWN)
|
||||||
|
px = "";
|
||||||
|
else
|
||||||
|
px = getProvidername(lastprovider);
|
||||||
|
|
||||||
print_msg(PRT_NORMAL, " %02d:00 .. %02d:59 %s%02d:%s%*s(%s)\n",
|
print_msg(PRT_NORMAL, " %02d:00 .. %02d:59 %s%02d:%s%*s = %s %s (%s) [DTAG: %s %s]\n",
|
||||||
lasthour, hour - 1, vbn, lastprovider, px, 14 - strlen(px), "", lastmessage);
|
lasthour, hour - 1, vbn, lastprovider, px,
|
||||||
|
max(WIDTH, strlen(px)) - strlen(px), "", currency,
|
||||||
|
double2str(lastRate, 5, 3, DEB),
|
||||||
|
lastmessage, currency, double2str(lastDTAG, 5, 3, DEB), lastDTAG / lastRate * 100.0);
|
||||||
|
|
||||||
used[lastprovider] = 1;
|
used[lastprovider] = 1;
|
||||||
|
|
||||||
|
@ -828,6 +905,8 @@ retry:
|
||||||
|
|
||||||
lastprovider = provider;
|
lastprovider = provider;
|
||||||
lasthour = hour;
|
lasthour = hour;
|
||||||
|
lastRate = bestRate;
|
||||||
|
lastDTAG = DTAGRate;
|
||||||
strcpy(lastmessage, message);
|
strcpy(lastmessage, message);
|
||||||
} /* if */
|
} /* if */
|
||||||
|
|
||||||
|
@ -838,14 +917,19 @@ retry:
|
||||||
break;
|
break;
|
||||||
} /* for */
|
} /* for */
|
||||||
|
|
||||||
|
if (lastprovider == UNKNOWN)
|
||||||
|
px = "";
|
||||||
|
else
|
||||||
px = getProvidername(lastprovider);
|
px = getProvidername(lastprovider);
|
||||||
|
|
||||||
if ((lasthour == 7) && (hour == 7))
|
if ((lasthour == 7) && (hour == 7))
|
||||||
print_msg(PRT_NORMAL, " immer %s%02d:%s%*s(%s)\n",
|
print_msg(PRT_NORMAL, " immer %s%02d:%s%*s = %s %s (%s) [DTAG: %s %s]\n",
|
||||||
vbn, lastprovider, px, 14 - strlen(px), "", lastmessage);
|
vbn, lastprovider, px, max(WIDTH, strlen(px)) - strlen(px), "",
|
||||||
|
currency, double2str(lastRate, 5, 3, DEB), lastmessage, currency, double2str(lastDTAG, 5, 3, DEB));
|
||||||
else
|
else
|
||||||
print_msg(PRT_NORMAL, " %02d:00 .. %02d:59 %s%02d:%s%*s(%s)\n",
|
print_msg(PRT_NORMAL, " %02d:00 .. %02d:59 %s%02d:%s%*s = %s %s (%s) [DTAG: %s %s]\n",
|
||||||
lasthour, hour - 1, vbn, lastprovider, px, 14 - strlen(px), "", lastmessage);
|
lasthour, hour - 1, vbn, lastprovider, px, max(WIDTH, strlen(px)) - strlen(px), "",
|
||||||
|
currency, double2str(lastRate, 5, 3, DEB), lastmessage, currency, double2str(lastDTAG, 5, 3, DEB));
|
||||||
|
|
||||||
used[lastprovider] = 1;
|
used[lastprovider] = 1;
|
||||||
|
|
||||||
|
@ -865,7 +949,7 @@ retry:
|
||||||
|
|
||||||
for (provider = 0; provider < MAXPROVIDER; provider++)
|
for (provider = 0; provider < MAXPROVIDER; provider++)
|
||||||
if (used[provider]) {
|
if (used[provider]) {
|
||||||
print_msg(PRT_NORMAL, "%s%02d:%s%*s(%d hours)\n", vbn, provider, getProvidername(provider), 14 - strlen(getProvidername(provider)), "", hours[provider]);
|
print_msg(PRT_NORMAL, "%s%02d:%s%*s(%d hours)\n", vbn, provider, getProvidername(provider), max(WIDTH, strlen(getProvidername(provider))) - strlen(getProvidername(provider)), "", hours[provider]);
|
||||||
useds++;
|
useds++;
|
||||||
|
|
||||||
if (hours[provider] < maxhour) {
|
if (hours[provider] < maxhour) {
|
||||||
|
@ -874,7 +958,7 @@ retry:
|
||||||
} /* if */
|
} /* if */
|
||||||
} /* if */
|
} /* if */
|
||||||
|
|
||||||
#if 1
|
#if 0
|
||||||
if (useds == 6) {
|
if (useds == 6) {
|
||||||
if (ignoreprovider != leastprovider) {
|
if (ignoreprovider != leastprovider) {
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,15 @@
|
||||||
* along with this program; if not, write to the Free Software
|
* along with this program; if not, write to the Free Software
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.22 1999/04/19 19:24:35 akool
|
||||||
|
* isdnlog Version 3.18
|
||||||
|
*
|
||||||
|
* - countries-at.dat added
|
||||||
|
* - spelling corrections in "countries-de.dat" and "countries-us.dat"
|
||||||
|
* - LCR-function of isdnconf now accepts a duration (isdnconf -c .,duration)
|
||||||
|
* - "rate-at.dat" and "rate-de.dat" extended/fixed
|
||||||
|
* - holiday.c and rate.c fixed (many thanks to reinelt@eunet.at)
|
||||||
|
*
|
||||||
* Revision 1.21 1999/04/10 16:35:22 akool
|
* Revision 1.21 1999/04/10 16:35:22 akool
|
||||||
* isdnlog Version 3.13
|
* isdnlog Version 3.13
|
||||||
*
|
*
|
||||||
|
@ -345,8 +354,12 @@ void logger(int chan)
|
||||||
"kostenlos", als auf "DM 1,00 geschenkt" stellen!
|
"kostenlos", als auf "DM 1,00 geschenkt" stellen!
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (call[chan].pay == -1.00)
|
if (call[chan].pay == -1.00) {
|
||||||
call[chan].pay = 0.0;
|
if (call[chan].aocpay > 0.0) /* besser als nix ... */
|
||||||
|
call[chan].pay = call[chan].aocpay;
|
||||||
|
else
|
||||||
|
call[chan].pay = 0.0;
|
||||||
|
} /* if */
|
||||||
|
|
||||||
fprintf(flog, "%s|%-16s|%-16s|%5d|%10d|%10d|%5d|%c|%3d|%10ld|%10ld|%s|%d|%d|%g|%s|%g|%3d|%3d|\n",
|
fprintf(flog, "%s|%-16s|%-16s|%5d|%10d|%10d|%5d|%c|%3d|%10ld|%10ld|%s|%d|%d|%g|%s|%g|%3d|%3d|\n",
|
||||||
s + 4, call[chan].num[CALLING], call[chan].num[CALLED],
|
s + 4, call[chan].num[CALLING], call[chan].num[CALLED],
|
||||||
|
|
|
@ -19,6 +19,20 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.63 1999/05/22 10:18:34 akool
|
||||||
|
* isdnlog Version 3.29
|
||||||
|
*
|
||||||
|
* - processing of "sonderrufnummern" much more faster
|
||||||
|
* - detection for sonderrufnummern of other provider's implemented
|
||||||
|
* (like 01929:FreeNet)
|
||||||
|
* - Patch from Oliver Lauer <Oliver.Lauer@coburg.baynet.de>
|
||||||
|
* - Patch from Markus Schoepflin <schoepflin@ginit.de>
|
||||||
|
* - easter computing corrected
|
||||||
|
* - rate-de.dat 1.02-Germany [22-May-1999 11:37:33] (from rate-CVS)
|
||||||
|
* - countries-de.dat 1.02-Germany [22-May-1999 11:37:47] (from rate-CVS)
|
||||||
|
* - new option "-B" added (see README)
|
||||||
|
* (using "isdnlog -B16 ..." isdnlog now works in the Netherlands!)
|
||||||
|
*
|
||||||
* Revision 1.62 1999/05/13 11:39:24 akool
|
* Revision 1.62 1999/05/13 11:39:24 akool
|
||||||
* isdnlog Version 3.28
|
* isdnlog Version 3.28
|
||||||
*
|
*
|
||||||
|
@ -1587,7 +1601,9 @@ static void decode(int chan, register char *p, int type, int version, int tei)
|
||||||
call[chan].aoce = 1;
|
call[chan].aoce = 1;
|
||||||
else
|
else
|
||||||
call[chan].aoce++;
|
call[chan].aoce++;
|
||||||
} /* if */
|
}
|
||||||
|
else if (currency_mode == AOC_UNITS)
|
||||||
|
call[chan].aoce = n;
|
||||||
|
|
||||||
call[chan].aocpay = abs(n) * currency_factor;
|
call[chan].aocpay = abs(n) * currency_factor;
|
||||||
|
|
||||||
|
|
|
@ -24,6 +24,20 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.65 1999/05/22 10:18:50 akool
|
||||||
|
* isdnlog Version 3.29
|
||||||
|
*
|
||||||
|
* - processing of "sonderrufnummern" much more faster
|
||||||
|
* - detection for sonderrufnummern of other provider's implemented
|
||||||
|
* (like 01929:FreeNet)
|
||||||
|
* - Patch from Oliver Lauer <Oliver.Lauer@coburg.baynet.de>
|
||||||
|
* - Patch from Markus Schoepflin <schoepflin@ginit.de>
|
||||||
|
* - easter computing corrected
|
||||||
|
* - rate-de.dat 1.02-Germany [22-May-1999 11:37:33] (from rate-CVS)
|
||||||
|
* - countries-de.dat 1.02-Germany [22-May-1999 11:37:47] (from rate-CVS)
|
||||||
|
* - new option "-B" added (see README)
|
||||||
|
* (using "isdnlog -B16 ..." isdnlog now works in the Netherlands!)
|
||||||
|
*
|
||||||
* Revision 1.64 1999/05/04 19:33:01 akool
|
* Revision 1.64 1999/05/04 19:33:01 akool
|
||||||
* isdnlog Version 3.24
|
* isdnlog Version 3.24
|
||||||
*
|
*
|
||||||
|
@ -890,6 +904,7 @@ int read_logfile(char *myname)
|
||||||
/* initHoliday(holifile, NULL); FIXME */
|
/* initHoliday(holifile, NULL); FIXME */
|
||||||
/* initRate(rateconf, ratefile, NULL); FIXME */
|
/* initRate(rateconf, ratefile, NULL); FIXME */
|
||||||
interns0 = 3; /* FIXME */
|
interns0 = 3; /* FIXME */
|
||||||
|
vbn = strdup("010");
|
||||||
|
|
||||||
msn_sum = calloc(mymsns + 1, sizeof(double));
|
msn_sum = calloc(mymsns + 1, sizeof(double));
|
||||||
usage_sum = calloc(mymsns + 1, sizeof(int));
|
usage_sum = calloc(mymsns + 1, sizeof(int));
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
V:1.02-German [01-Jun-1999 21:31:35]
|
V:1.02-German [03-Jun-1999 19:46:35]
|
||||||
|
|
||||||
N:Usbekistan
|
N:Usbekistan
|
||||||
A:Uzbekistan
|
A:Uzbekistan
|
||||||
|
@ -118,7 +118,8 @@ C:+90
|
||||||
N:Taiwan Mobilfunk
|
N:Taiwan Mobilfunk
|
||||||
C:+8869
|
C:+8869
|
||||||
|
|
||||||
N:China (Taiwan)
|
N:Taiwan
|
||||||
|
A:China (Taiwan)
|
||||||
C:+886
|
C:+886
|
||||||
|
|
||||||
N:Iridium 008817
|
N:Iridium 008817
|
||||||
|
@ -173,8 +174,8 @@ C:+871
|
||||||
N:China Mobilfunk
|
N:China Mobilfunk
|
||||||
C:+86886, +8613
|
C:+86886, +8613
|
||||||
|
|
||||||
N:China (Volksrepublik)
|
N:China
|
||||||
A:China (People's Republic)
|
A:China (Volksrepublik), China (People's Republic)
|
||||||
C:+86
|
C:+86
|
||||||
|
|
||||||
N:Laos
|
N:Laos
|
||||||
|
@ -195,8 +196,8 @@ C:+8529, +8522
|
||||||
N:Hongkong
|
N:Hongkong
|
||||||
C:+852
|
C:+852
|
||||||
|
|
||||||
N:Korea (Dem. Republik) Nordkorea
|
N:Nordkorea
|
||||||
A:Korea (Demokratische Republik), Korea (North), Korea (DVR), Nordkorea, Nordkorea (DVR), Korea (Nord), V.R. Korea, Korea Democratic Republic (north)
|
A:Korea (Dem. Republik), Korea (Demokratische Republik), Korea (North), Korea (DVR), Nordkorea (DVR), Korea (Nord), V.R. Korea, Korea Democratic Republic (north)
|
||||||
C:+850
|
C:+850
|
||||||
|
|
||||||
N:Vietnam
|
N:Vietnam
|
||||||
|
@ -205,8 +206,8 @@ C:+84
|
||||||
N:Korea Rep. (South) Mobilfunk
|
N:Korea Rep. (South) Mobilfunk
|
||||||
C:+8227, +821
|
C:+8227, +821
|
||||||
|
|
||||||
N:Korea (Republik) Südkorea
|
N:Südkorea
|
||||||
A:Korea (Süd), Korea Rep. (South), Korea (Reublik), Südkorea, Südkorea (Republik), Republik Korea, Korea Republic (south)
|
A:Korea (Süd), Korea Rep. (South), Korea (Reublik), Südkorea (Republik), Republik Korea, Korea Republic (south), South Korea
|
||||||
C:+82
|
C:+82
|
||||||
|
|
||||||
N:Japan Mobilfunk
|
N:Japan Mobilfunk
|
||||||
|
@ -249,6 +250,7 @@ N:Chatham-Inseln
|
||||||
C:+6996
|
C:+6996
|
||||||
|
|
||||||
N:Wake Inseln
|
N:Wake Inseln
|
||||||
|
A:Wake Island
|
||||||
C:+6993
|
C:+6993
|
||||||
|
|
||||||
N:Marshallinseln
|
N:Marshallinseln
|
||||||
|
@ -278,12 +280,12 @@ N:Kiribati
|
||||||
A:Kirlbati
|
A:Kirlbati
|
||||||
C:+686
|
C:+686
|
||||||
|
|
||||||
N:Samoa (West)
|
N:West-Samoa
|
||||||
A:Western Samoa
|
A:Samoa (West), Western Samoa
|
||||||
C:+685
|
C:+685
|
||||||
|
|
||||||
N:Amerikanisch-Samoa
|
N:Amerikanisch-Samoa
|
||||||
A:Samoa (US), American Samoa
|
A:Samoa, Samoa (US), American Samoa
|
||||||
C:+684
|
C:+684
|
||||||
|
|
||||||
N:Niue-Inseln
|
N:Niue-Inseln
|
||||||
|
@ -295,7 +297,7 @@ A:Cook Islands
|
||||||
C:+682
|
C:+682
|
||||||
|
|
||||||
N:Wallis und Futuna
|
N:Wallis und Futuna
|
||||||
A:Wallis & Fortuna Islands
|
A:Wallis- und Futuna-Inseln, Wallis & Fortuna Islands
|
||||||
C:+681
|
C:+681
|
||||||
|
|
||||||
N:Palau /Belau
|
N:Palau /Belau
|
||||||
|
@ -326,19 +328,20 @@ C:+674
|
||||||
N:Brunei
|
N:Brunei
|
||||||
C:+673
|
C:+673
|
||||||
|
|
||||||
N:Weihnachtsinsel (Australien)
|
N:Weihnachtsinseln
|
||||||
A:Weihnachtsinseln, Christmas Island (Antarctica)
|
A:Weihnachtsinsel (Australien), Christmas Island, Christmas Island (Antarctica)
|
||||||
C:+6724
|
C:+6724
|
||||||
|
|
||||||
N:Norfolkinseln (Australien)
|
N:Norfolkinseln
|
||||||
A:Norfolk Islands, Norfolk, Norfolk-Inseln, Norfolk Island (Antarctica)
|
A:Norfolkinseln (Australien), Norfolk Islands, Norfolk, Norfolk Island, Norfolk Island (Antarctica)
|
||||||
C:+6723
|
C:+6723
|
||||||
|
|
||||||
N:Kokosinseln (Australien)
|
N:Kokosinseln
|
||||||
A:Cocos Island (Antarctica)
|
A:Kokosinseln (Australien), Cocos Island, Cocos Island (Antarctica)
|
||||||
C:+6722
|
C:+6722, +6189162
|
||||||
|
|
||||||
N:Antarktis
|
N:Antarktis
|
||||||
|
A:Antarctica
|
||||||
C:+6721, +672
|
C:+6721, +672
|
||||||
|
|
||||||
N:Guam
|
N:Guam
|
||||||
|
@ -352,10 +355,11 @@ A:Singapore
|
||||||
C:+65
|
C:+65
|
||||||
|
|
||||||
N:Pitcairn Inseln
|
N:Pitcairn Inseln
|
||||||
|
N:Pitcairn Islands
|
||||||
C:+649
|
C:+649
|
||||||
|
|
||||||
N:Neuseeland
|
N:Neuseeland
|
||||||
A:New Zealand & Chatham Island
|
A:New Zealand, New Zealand & Chatham Island
|
||||||
C:+64
|
C:+64
|
||||||
|
|
||||||
N:Philippinen
|
N:Philippinen
|
||||||
|
@ -366,9 +370,6 @@ N:Indonesien
|
||||||
A:Indonesia
|
A:Indonesia
|
||||||
C:+62
|
C:+62
|
||||||
|
|
||||||
N:Kokos-Inseln
|
|
||||||
C:+6189162
|
|
||||||
|
|
||||||
N:Australien Mobilfunk
|
N:Australien Mobilfunk
|
||||||
C:+61500, +6142, +6141, +6140, +6119, +6118, +6117, +6116, +6115, +6114, +6113, +6112, +61071
|
C:+61500, +6142, +6141, +6140, +6119, +6118, +6117, +6116, +6115, +6114, +6113, +6112, +61071
|
||||||
|
|
||||||
|
@ -557,10 +558,13 @@ C:+44171
|
||||||
N:Edinburgh
|
N:Edinburgh
|
||||||
C:+44131
|
C:+44131
|
||||||
|
|
||||||
N:Großbritannien Insel Man Kanalinseln
|
N:Großbritannien
|
||||||
A:Great Britain
|
A:Großbritannien Insel Man Kanalinseln, Great Britain
|
||||||
C:+44
|
C:+44
|
||||||
|
|
||||||
|
N:Nordirland
|
||||||
|
C:+44 /* Fixme */
|
||||||
|
|
||||||
N:Österreich Mobilfunk
|
N:Österreich Mobilfunk
|
||||||
C:+43699, +43676, +43664, +43663
|
C:+43699, +43676, +43664, +43663
|
||||||
|
|
||||||
|
@ -579,12 +583,12 @@ N:Liechtenstein
|
||||||
A:Lichtenstein
|
A:Lichtenstein
|
||||||
C:+423, +4175
|
C:+423, +4175
|
||||||
|
|
||||||
N:Slowakei Slowakische Republik
|
N:Slowakische Republik
|
||||||
A:Slowakische Rep., Slowakei, Slowak. Rep., Slowakische Republik
|
A:Slowakei, Slowakische Rep., Slowak. Rep., Slovakia
|
||||||
C:+421
|
C:+421
|
||||||
|
|
||||||
N:Tschechien Tschechische Republik
|
N:Tschechische Republik
|
||||||
A:Tschechische Rep., Tschechische Republik, Tschechien, Tschech. Rep., Czech Republic
|
A:Tschechien, Tschechische Rep., Tschech. Rep., Czech Republic
|
||||||
C:+420
|
C:+420
|
||||||
|
|
||||||
N:Freephone Schweiz
|
N:Freephone Schweiz
|
||||||
|
@ -611,8 +615,8 @@ C:+40
|
||||||
N:Italien Mobilfunk
|
N:Italien Mobilfunk
|
||||||
C:+39368, +39360, +39349, +39348, +39347, +39339, +39338, +39337, +39336, +39335, +39330, +39329, +39328
|
C:+39368, +39360, +39349, +39348, +39347, +39339, +39338, +39337, +39336, +39335, +39330, +39329, +39328
|
||||||
|
|
||||||
N:Vatikanstadt / Rom
|
N:Vatikan
|
||||||
A:Vatikanstadt, Vatican City
|
A:Vatikanstadt / Rom, Vatikanstadt, Vatican City
|
||||||
C:+379, +3906
|
C:+379, +3906
|
||||||
|
|
||||||
N:Mailand
|
N:Mailand
|
||||||
|
@ -638,8 +642,8 @@ N:Kroatien
|
||||||
A:Croatia
|
A:Croatia
|
||||||
C:+385
|
C:+385
|
||||||
|
|
||||||
N:Jugoslawien(Serbien/Montenegro)
|
N:Jugoslawien
|
||||||
A:Yugoslavia (Servia & Montenegro)
|
A:Jugoslawien (Serbien/Montenegro), Serbien, Montenegro, Yugoslavia (Servia & Montenegro)
|
||||||
C:+381
|
C:+381
|
||||||
|
|
||||||
N:Ukraine
|
N:Ukraine
|
||||||
|
@ -654,8 +658,8 @@ C:+377
|
||||||
N:Andorra
|
N:Andorra
|
||||||
C:+376
|
C:+376
|
||||||
|
|
||||||
N:Weissrussland Belarus
|
N:Weissrussland
|
||||||
A:Belarus
|
A:Weissrussland Belarus, Belarus
|
||||||
C:+375
|
C:+375
|
||||||
|
|
||||||
N:Armenien
|
N:Armenien
|
||||||
|
@ -663,7 +667,7 @@ A:Armenia
|
||||||
C:+374
|
C:+374
|
||||||
|
|
||||||
N:Moldavien Moldau (Republik)
|
N:Moldavien Moldau (Republik)
|
||||||
A:Moldau Republik, Moldavien, Moldawien, Moldau (Republik), Moldau, Moldova
|
A:Moldau Republik, Moldavien, Moldawien, Moldau, Moldova
|
||||||
C:+373
|
C:+373
|
||||||
|
|
||||||
N:Estland
|
N:Estland
|
||||||
|
@ -816,8 +820,8 @@ N:Gr
|
||||||
A:Greenland
|
A:Greenland
|
||||||
C:+299
|
C:+299
|
||||||
|
|
||||||
N:Färöer Faeröer
|
N:Färöer-Inseln
|
||||||
A:Faroe Islands
|
A:Färöer, Faroe Islands
|
||||||
C:+298
|
C:+298
|
||||||
|
|
||||||
N:Aruba
|
N:Aruba
|
||||||
|
@ -884,8 +888,8 @@ C:+257
|
||||||
N:Uganda
|
N:Uganda
|
||||||
C:+256
|
C:+256
|
||||||
|
|
||||||
N:Tansania Sansiba
|
N:Tansania
|
||||||
A:Tanzania
|
A:Sansiba, Tanzania
|
||||||
C:+255
|
C:+255
|
||||||
|
|
||||||
N:Kenia
|
N:Kenia
|
||||||
|
@ -910,8 +914,8 @@ C:+250
|
||||||
N:Sudan
|
N:Sudan
|
||||||
C:+249
|
C:+249
|
||||||
|
|
||||||
N:Seyschellen Seychellen
|
N:Seyschellen
|
||||||
A:Seychelles Islands
|
A:Seychellen, Seychelles Islands
|
||||||
C:+248
|
C:+248
|
||||||
|
|
||||||
N:Ascension
|
N:Ascension
|
||||||
|
@ -960,7 +964,7 @@ A:Zentral Afrika (Rep.), Central African Republic
|
||||||
C:+236
|
C:+236
|
||||||
|
|
||||||
N:Tschad
|
N:Tschad
|
||||||
A:Chad Republic
|
A:Chad, Chad Republic
|
||||||
C:+235
|
C:+235
|
||||||
|
|
||||||
N:Nigeria
|
N:Nigeria
|
||||||
|
@ -989,7 +993,7 @@ A:Niger Republic
|
||||||
C:+227
|
C:+227
|
||||||
|
|
||||||
N:Burkina Faso Obervolta
|
N:Burkina Faso Obervolta
|
||||||
A:Obervolta, Burkina Faso, Burkina-Faso
|
A:Obervolta, Burkina Faso
|
||||||
C:+226
|
C:+226
|
||||||
|
|
||||||
N:Elfenbeinküste Cote de Ivoire
|
N:Elfenbeinküste Cote de Ivoire
|
||||||
|
@ -1013,8 +1017,8 @@ C:+221
|
||||||
N:Gambia
|
N:Gambia
|
||||||
C:+220
|
C:+220
|
||||||
|
|
||||||
N:Libyen Libysch-Arabische Dschamahirija
|
N:Libyen
|
||||||
A:Libya
|
A:Libysch-Arabische Dschamahirija, Libya
|
||||||
C:+218
|
C:+218
|
||||||
|
|
||||||
N:Tunesien
|
N:Tunesien
|
||||||
|
@ -1037,6 +1041,7 @@ N:Alaska
|
||||||
C:+1907
|
C:+1907
|
||||||
|
|
||||||
N:Kanada
|
N:Kanada
|
||||||
|
A:Canada
|
||||||
C:+1905, +1902, +1867, +1819, +1807, +1709, +1705, +1613, +1604, +1600, +1519, +1514, +1506, +1418, +1416, +1403, +1306, +1250, +1204
|
C:+1905, +1902, +1867, +1819, +1807, +1709, +1705, +1613, +1604, +1600, +1519, +1514, +1506, +1418, +1416, +1403, +1306, +1250, +1204
|
||||||
|
|
||||||
N:Jamaika
|
N:Jamaika
|
||||||
|
@ -1044,7 +1049,7 @@ A:Jamaica
|
||||||
C:+1876
|
C:+1876
|
||||||
|
|
||||||
N:St. Kitts und Nevis
|
N:St. Kitts und Nevis
|
||||||
A:St. Kitts & Nevis, Saint Kitts and Nevis, St Kitts, Nevis Islands, St. Kitts
|
A:St. Kitts & Nevis, Saint Kitts und Nevis, Saint Kitts and Nevis, St Kitts, Nevis Islands
|
||||||
C:+1869
|
C:+1869
|
||||||
|
|
||||||
N:Trinidad und Tobago
|
N:Trinidad und Tobago
|
||||||
|
@ -1052,18 +1057,19 @@ A:Trinidad & Tobago, Trinidad and Tobago
|
||||||
C:+1868, +1809680, +180967, +180966, +180965, +180964, +180963, +180962, +1809619
|
C:+1868, +1809680, +180967, +180966, +180965, +180964, +180963, +180962, +1809619
|
||||||
|
|
||||||
N:Dominikanische Republik
|
N:Dominikanische Republik
|
||||||
|
A:Dominican Republic
|
||||||
C:+184, +1809971, +1809970, +1809908, +1809818, +1809814, +1809813, +1809810, +1809808, +1809807, +1809806, +1809710, +1809707, +1809701, +1809699, +1809698, +1809697, +1809696, +1809695, +1809694, +1809689, +1809688, +1809687, +1809686, +1809685, +1809684, +1809683, +1809682, +1809681, +1809616, +1809615, +1809612, +1809606, +1809604, +180959, +180958, +180957, +180956, +1809559, +1809558, +1809557, +1809556, +1809554, +1809553, +1809552, +1809551, +1809550, +180954, +180953, +180952, +1809519, +1809518, +1809512, +1809508, +1809506, +1809504, +1809481, +180947, +1809414, +1809412, +1809350, +1809343, +1809320, +1809310, +1809301, +1809299, +1809295, +1809293, +1809292, +1809291, +1809290, +1809282, +1809281, +1809280, +1809279, +1809278, +1809277, +1809276, +1809275, +1809274, +1809273, +1809248, +1809247, +1809246, +1809245, +1809244, +1809243, +1809242, +1809241, +1809240, +1809239, +1809238, +1809237, +1809236, +1809234, +1809233, +1809231, +1809227, +1809226, +1809225, +1809224, +1809223, +1809222, +1809221, +1809220, +1809209, +1809208, +1809204, +1809188
|
C:+184, +1809971, +1809970, +1809908, +1809818, +1809814, +1809813, +1809810, +1809808, +1809807, +1809806, +1809710, +1809707, +1809701, +1809699, +1809698, +1809697, +1809696, +1809695, +1809694, +1809689, +1809688, +1809687, +1809686, +1809685, +1809684, +1809683, +1809682, +1809681, +1809616, +1809615, +1809612, +1809606, +1809604, +180959, +180958, +180957, +180956, +1809559, +1809558, +1809557, +1809556, +1809554, +1809553, +1809552, +1809551, +1809550, +180954, +180953, +180952, +1809519, +1809518, +1809512, +1809508, +1809506, +1809504, +1809481, +180947, +1809414, +1809412, +1809350, +1809343, +1809320, +1809310, +1809301, +1809299, +1809295, +1809293, +1809292, +1809291, +1809290, +1809282, +1809281, +1809280, +1809279, +1809278, +1809277, +1809276, +1809275, +1809274, +1809273, +1809248, +1809247, +1809246, +1809245, +1809244, +1809243, +1809242, +1809241, +1809240, +1809239, +1809238, +1809237, +1809236, +1809234, +1809233, +1809231, +1809227, +1809226, +1809225, +1809224, +1809223, +1809222, +1809221, +1809220, +1809209, +1809208, +1809204, +1809188
|
||||||
|
|
||||||
N:Turks- und Caicosinseln
|
N:Turks- und Caicosinseln
|
||||||
A:Turks and Caicos Islands
|
A:Turks and Caicos Islands, Turks & Caicos Islands
|
||||||
C:+1809946, +1809941, +1649
|
C:+1809946, +1809941, +1649
|
||||||
|
|
||||||
N:Amerikanische Jungferninseln
|
N:Amerikanische Jungferninseln
|
||||||
A:Jungferninseln (USA), Amerikan. Jungferninseln
|
A:Jungferninseln (USA), Amerikan. Jungferninseln, American Virgin Isles
|
||||||
C:+180977, +1809719, +1809715, +1809714, +1809713, +1809712, +1809693, +1809692, +1809690, +1809611, +1809513, +1340
|
C:+180977, +1809719, +1809715, +1809714, +1809713, +1809712, +1809693, +1809692, +1809690, +1809611, +1809513, +1340
|
||||||
|
|
||||||
N:Britische Jungferninseln
|
N:Britische Jungferninseln
|
||||||
A:Jungferninseln (GB), Jungferninseln (britisch)
|
A:Jungferninseln (GB), Jungferninseln (britisch), British Virgin Isles
|
||||||
C:+1809499, +1809496, +1809495, +1809494, +1809, +1284
|
C:+1809499, +1809496, +1809495, +1809494, +1809, +1284
|
||||||
|
|
||||||
N:St. Vincent und Grenadinen
|
N:St. Vincent und Grenadinen
|
||||||
|
@ -1099,11 +1105,11 @@ N:Bermuda
|
||||||
C:+1441
|
C:+1441
|
||||||
|
|
||||||
N:Kaimaninseln
|
N:Kaimaninseln
|
||||||
A:Cayman Islands
|
A:Cayman-Inseln, Cayman Islands
|
||||||
C:+1345
|
C:+1345
|
||||||
|
|
||||||
N:Antigua und Barbuda
|
N:Antigua und Barbuda
|
||||||
A:Antigua & Barbuda, Antigua & Barbadu, Antigua Und Barbadu
|
A:Antigua & Barbuda, Antigua & Barbadu, Antigua und Barbadu
|
||||||
C:+1268
|
C:+1268
|
||||||
|
|
||||||
N:Anguilla
|
N:Anguilla
|
||||||
|
@ -1116,5 +1122,5 @@ N:Bahamas
|
||||||
C:+1242
|
C:+1242
|
||||||
|
|
||||||
N:USA
|
N:USA
|
||||||
A:United States of America & Canada
|
A:Vereinigte Staaten (USA), United States of America, United States of America & Canada
|
||||||
C:+1
|
C:+1
|
||||||
|
|
4963
isdnlog/rate-at.dat
4963
isdnlog/rate-at.dat
File diff suppressed because it is too large
Load Diff
|
@ -1,4 +1,4 @@
|
||||||
V:1.02-Germany [01-Jun-1999 20:52:32]
|
V:1.02-Germany [03-Jun-1999 19:49:22]
|
||||||
|
|
||||||
# Diese Tariftabelle ist ein Service der I4L-Tarifdatenbank-Crew.
|
# Diese Tariftabelle ist ein Service der I4L-Tarifdatenbank-Crew.
|
||||||
# Alle Angaben erfolgen ohne Gewähr
|
# Alle Angaben erfolgen ohne Gewähr
|
||||||
|
@ -10658,10 +10658,10 @@ Z:10-15 Mobil
|
||||||
T:*/*=0.69/60
|
T:*/*=0.69/60
|
||||||
Z:100 Talknet by call
|
Z:100 Talknet by call
|
||||||
A:019251 # (Benutzername: talknet; Passwort: talknet; DNS-Server: 195.252.128.53)
|
A:019251 # (Benutzername: talknet; Passwort: talknet; DNS-Server: 195.252.128.53)
|
||||||
T:W/07-19=0.09(180)/60
|
T:W/07-19=0.09(60)/180
|
||||||
T:W/19-22=0.07(180)/60
|
T:W/19-22=0.07(60)/180
|
||||||
T:W/22-07=0.059(180)/60
|
T:W/22-07=0.059(60)/180
|
||||||
T:E,H/*=0.06(180)/60
|
T:E,H/*=0.06(60)/180
|
||||||
Z:40 Telefonauskunft
|
Z:40 Telefonauskunft
|
||||||
A:11850
|
A:11850
|
||||||
T:*/*=0.968/0,0.12/7.5
|
T:*/*=0.968/0,0.12/7.5
|
||||||
|
@ -10682,10 +10682,10 @@ C:Adresse: Koenigsallee 60f
|
||||||
C: 40210 Duesseldorf
|
C: 40210 Duesseldorf
|
||||||
Z:2-4 Ferngespräche
|
Z:2-4 Ferngespräche
|
||||||
T:*/*=0.09/60
|
T:*/*=0.09/60
|
||||||
Z:41 Telefonauskunft Inland (Austria, dial 01051004366211811)
|
Z:40 Telefonauskunft Inland (Austria, dial 01051004366211811)
|
||||||
A:+4366211811
|
A:+4366211811
|
||||||
T:*/*=0.25/60
|
T:*/*=0.25/60
|
||||||
Z:42 Telefonauskunft Ausland (Austria, dial 01051004366211812)
|
Z:41 Telefonauskunft Ausland (Austria, dial 01051004366211812)
|
||||||
A:+4366211812
|
A:+4366211812
|
||||||
T:*/*=0.25/60
|
T:*/*=0.25/60
|
||||||
Z:200
|
Z:200
|
||||||
|
@ -11052,12 +11052,13 @@ C:Telecom Deutschland GmbH, Lyoner Str. 15, 60528 Frankfurt 01066
|
||||||
C:Bei Preselection sekundengenaue Taktung
|
C:Bei Preselection sekundengenaue Taktung
|
||||||
G:01.04.1999
|
G:01.04.1999
|
||||||
Z:2-4 National
|
Z:2-4 National
|
||||||
T:W/9-18=0.18/60
|
T:W/08-17=0.14/60
|
||||||
T:W/18-9=0.10/60
|
T:W/17-08=0.08/60
|
||||||
T:E,H/*=0.10/80
|
T:E,H/08-17=0.10/80
|
||||||
|
T:E,H/17-08=0.08/80
|
||||||
Z:10-15 Mobil
|
Z:10-15 Mobil
|
||||||
T:W/9-18=0.58/60
|
T:W/08-17=0.58/60
|
||||||
T:W/18-9=0.48/60
|
T:W/17-08=0.48/60
|
||||||
T:E,H/*=0.48/60
|
T:E,H/*=0.48/60
|
||||||
Z:200 International (Top 12)
|
Z:200 International (Top 12)
|
||||||
A:Australien, Belgien, Dänemark
|
A:Australien, Belgien, Dänemark
|
||||||
|
@ -11066,17 +11067,17 @@ A:Gro
|
||||||
A:Norwegen, Österreich
|
A:Norwegen, Österreich
|
||||||
A:Schweden, Schweiz
|
A:Schweden, Schweiz
|
||||||
A:USA, Kanada
|
A:USA, Kanada
|
||||||
T:W/9-18=0.38/60
|
T:W/08-17=0.38/60
|
||||||
# bei Preselection:
|
# bei Preselection:
|
||||||
# T:W/9-18=0.29(60)/1
|
# T:W/08-17=0.29(60)/1
|
||||||
T:W/18-9=0.29/60
|
T:W/17-08=0.29/60
|
||||||
T:E,H/*=0.29/60
|
T:E,H/*=0.29/60
|
||||||
Z:201 International B
|
Z:201 International B
|
||||||
A:Hong Kong, Irland, Israel
|
A:Hong Kong, Irland, Israel
|
||||||
A:Italien, Japan, Liechtenstein
|
A:Italien, Japan, Liechtenstein
|
||||||
A:Luxemburg, Monaco, Spanien
|
A:Luxemburg, Monaco, Spanien
|
||||||
T:W/9-18=0.48/60
|
T:W/08-17=0.48/60
|
||||||
T:W/18-9=0.38/60
|
T:W/17-08=0.38/60
|
||||||
T:E,H/*=0.38/60
|
T:E,H/*=0.38/60
|
||||||
Z:202 International C
|
Z:202 International C
|
||||||
A:Alaska, Albanien, Algerien
|
A:Alaska, Albanien, Algerien
|
||||||
|
@ -11586,11 +11587,11 @@ T:W/08-20=0.419(60)/1
|
||||||
T:W/20-08=0.399(60)/1
|
T:W/20-08=0.399(60)/1
|
||||||
T:E,H/08-20=0.419(60)/1
|
T:E,H/08-20=0.419(60)/1
|
||||||
T:E,H/20-08=0.399(60)/1
|
T:E,H/20-08=0.399(60)/1
|
||||||
Z:40 Telefonauskunft Inland (Austria)
|
Z:40 Telefonauskunft Inland (Austria, dial 01078004366211811)
|
||||||
A:+4366211811
|
A:+4366211811
|
||||||
T:*/08-20=0.319(60)/1
|
T:*/08-20=0.319(60)/1
|
||||||
T:*/20-08=0.299(60)/1
|
T:*/20-08=0.299(60)/1
|
||||||
Z:41 Telefonauskunft Ausland (Austria)
|
Z:41 Telefonauskunft Ausland (Austria, dial 01078004366211812)
|
||||||
A:+4366211812
|
A:+4366211812
|
||||||
T:*/08-20=0.319(60)/1
|
T:*/08-20=0.319(60)/1
|
||||||
T:*/20-08=0.299(60)/1
|
T:*/20-08=0.299(60)/1
|
||||||
|
@ -12884,13 +12885,14 @@ C:GmbH & Co. KG, Elsenheimer Stra
|
||||||
Z:2-4 Fern
|
Z:2-4 Fern
|
||||||
T:W/08-18=0.15/60 Hauptzeit
|
T:W/08-18=0.15/60 Hauptzeit
|
||||||
T:W/18-21,6-8=0.10/60 Freizeit
|
T:W/18-21,6-8=0.10/60 Freizeit
|
||||||
T:E,H/*=0.10/60 Freizeit
|
# T:E,H/*=0.10/60 Freizeit
|
||||||
|
# Der "Meld' Dich mal wieder" Tarif gilt nur im Juni 1999!
|
||||||
|
T:E,H/*=0.029/60 Meld' Dich mal wieder
|
||||||
T:*/21-6=0.05/60 Traumzeit
|
T:*/21-6=0.05/60 Traumzeit
|
||||||
Z:10-15 Mobil
|
Z:10-15 Mobil
|
||||||
T:W/08-18=0.89/60
|
T:W/08-18=0.89/60
|
||||||
T:W/18-21,6-8=0.10/60 Freizeit
|
T:W/18-08=0.49/60 Freizeit
|
||||||
T:E,H/*=0.10/60 Freizeit
|
T:E,H/*=0.49/60 Traumzeit
|
||||||
T:*/21-6=0.49/60
|
|
||||||
Z:21 Telefonauskunft
|
Z:21 Telefonauskunft
|
||||||
A:11881
|
A:11881
|
||||||
T:*/*=1.59/0,0.22(60)/10
|
T:*/*=1.59/0,0.22(60)/10
|
||||||
|
|
|
@ -19,6 +19,9 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.1 1999/05/27 18:19:57 akool
|
||||||
|
* first release of the new country decoding module
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -42,10 +45,9 @@
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
#include <errno.h>
|
||||||
#if 0
|
#if 0
|
||||||
extern const char *basename (const char *name);
|
extern const char *basename (const char *name);
|
||||||
#else
|
|
||||||
#include <errno.h>
|
|
||||||
#endif
|
#endif
|
||||||
#else
|
#else
|
||||||
#include "isdnlog.h"
|
#include "isdnlog.h"
|
||||||
|
@ -94,7 +96,7 @@ static char *strip (char *s)
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
||||||
static char* str2set (char **s)
|
static char* str2list (char **s)
|
||||||
{
|
{
|
||||||
static char buffer[BUFSIZ];
|
static char buffer[BUFSIZ];
|
||||||
char *p=buffer;
|
char *p=buffer;
|
||||||
|
@ -117,14 +119,17 @@ static char *xlat (char *s)
|
||||||
do {
|
do {
|
||||||
*p=tolower(*s);
|
*p=tolower(*s);
|
||||||
switch (*p) {
|
switch (*p) {
|
||||||
|
case 'Ä':
|
||||||
case 'ä':
|
case 'ä':
|
||||||
*p++='a';
|
*p++='a';
|
||||||
*p ='e';
|
*p ='e';
|
||||||
break;
|
break;
|
||||||
|
case 'Ö':
|
||||||
case 'ö':
|
case 'ö':
|
||||||
*p++='o';
|
*p++='o';
|
||||||
*p ='e';
|
*p ='e';
|
||||||
break;
|
break;
|
||||||
|
case 'Ü':
|
||||||
case 'ü':
|
case 'ü':
|
||||||
*p++='u';
|
*p++='u';
|
||||||
*p ='e';
|
*p ='e';
|
||||||
|
@ -134,8 +139,10 @@ static char *xlat (char *s)
|
||||||
*p ='s';
|
*p ='s';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
p++;
|
if (isalnum(*p))
|
||||||
|
p++;
|
||||||
} while (*s++);
|
} while (*s++);
|
||||||
|
|
||||||
return buffer;
|
return buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -276,10 +283,10 @@ int initCountry(char *path, char **msg)
|
||||||
}
|
}
|
||||||
s+=2;
|
s+=2;
|
||||||
while(1) {
|
while(1) {
|
||||||
if (*(n=strip(str2set(&s)))) {
|
if (*(n=strip(str2list(&s)))) {
|
||||||
x=xlat(n);
|
x=xlat(n);
|
||||||
if ((c=findCountry(x))!=NULL) {
|
if ((c=findCountry(x))!=NULL) {
|
||||||
warning (path, "duplicate entry '%s', ignoring", n);
|
warning (path, "Ignoring duplicate entry '%s'", n);
|
||||||
} else {
|
} else {
|
||||||
Country[Index].Alias=realloc (Country[Index].Alias, (Country[Index].nAlias+1)*sizeof(char*));
|
Country[Index].Alias=realloc (Country[Index].Alias, (Country[Index].nAlias+1)*sizeof(char*));
|
||||||
Country[Index].Alias[Country[Index].nAlias]=strdup(x);
|
Country[Index].Alias[Country[Index].nAlias]=strdup(x);
|
||||||
|
@ -304,11 +311,11 @@ int initCountry(char *path, char **msg)
|
||||||
}
|
}
|
||||||
s+=2;
|
s+=2;
|
||||||
while(1) {
|
while(1) {
|
||||||
if (*(n=strip(str2set(&s)))) {
|
if (*(n=strip(str2list(&s)))) {
|
||||||
if (*n!='+') {
|
if (*n!='+') {
|
||||||
warning (path, "code should start with '+', ignoring", n);
|
warning (path, "Code must start with '+'", n);
|
||||||
} else if ((c=findCountry(n))!=NULL) {
|
} else if ((c=findCountry(n))!=NULL) {
|
||||||
warning (path, "duplicate entry '%s', ignoring", n);
|
warning (path, "Ignoring duplicate entry '%s'", n);
|
||||||
} else {
|
} else {
|
||||||
Country[Index].Code=realloc (Country[Index].Code, (Country[Index].nCode+1)*sizeof(char*));
|
Country[Index].Code=realloc (Country[Index].Code, (Country[Index].nCode+1)*sizeof(char*));
|
||||||
Country[Index].Code[Country[Index].nCode]=strdup(n);
|
Country[Index].Code[Country[Index].nCode]=strdup(n);
|
||||||
|
@ -343,117 +350,63 @@ int initCountry(char *path, char **msg)
|
||||||
return nCountry;
|
return nCountry;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if 0
|
int getCountry (char *name, COUNTRY **country)
|
||||||
static int countrymatch(char *name, char *num)
|
|
||||||
{
|
{
|
||||||
register int i, test = (num == NULL);
|
char *xname;
|
||||||
auto char k[BUFSIZ];
|
int d, i, j, m;
|
||||||
|
|
||||||
|
*country=NULL;
|
||||||
strcpy(k, name);
|
if (*name=='+') {
|
||||||
down(k);
|
for (i=0; i<nCountry; i++) {
|
||||||
|
for (j=0; j<Country[i].nCode; j++) {
|
||||||
for (i = 0; i < nCountry; i++)
|
if (strcmp (name, Country[i].Code[j])==0) {
|
||||||
if ((test || !strncmp(Country[i].prefix, num, strlen(Country[i].prefix))) && !strncmp(Country[i].match, k, strlen(Country[i].match)))
|
*country=&Country[i];
|
||||||
return(i);
|
return 0;
|
||||||
|
}
|
||||||
for (i = 0; i < nCountry; i++)
|
}
|
||||||
if ((test || !strncmp(Country[i].prefix, num, strlen(Country[i].prefix))) && strstr(Country[i].match, k))
|
}
|
||||||
return(i);
|
return UNKNOWN;
|
||||||
|
|
||||||
for (i = 0; i < nCountry; i++)
|
|
||||||
if ((test || !strncmp(Country[i].prefix, num, strlen(Country[i].prefix))) && strstr(Country[i].hints, k))
|
|
||||||
return(i);
|
|
||||||
|
|
||||||
for (i = 0; i < nCountry; i++)
|
|
||||||
if ((test || !strncmp(Country[i].prefix, num, strlen(Country[i].prefix))) && (wld(k, Country[i].match) <= DISTANCE))
|
|
||||||
return(i);
|
|
||||||
|
|
||||||
return(0);
|
|
||||||
} /* countymatch */
|
|
||||||
|
|
||||||
|
|
||||||
/* INPUT: "+372"
|
|
||||||
OUTPUT: "Estland"
|
|
||||||
|
|
||||||
INPUT: "Estland"
|
|
||||||
OUTPUT: "+372"
|
|
||||||
*/
|
|
||||||
|
|
||||||
int abroad(char *key, char *result)
|
|
||||||
{
|
|
||||||
register int i;
|
|
||||||
auto int mode, match = 0, res = 0;
|
|
||||||
auto char k[BUFSIZ];
|
|
||||||
|
|
||||||
|
|
||||||
*result = 0;
|
|
||||||
|
|
||||||
if (!memcmp(key, countryprefix, strlen(countryprefix))) /* +xxx */
|
|
||||||
mode = 1;
|
|
||||||
else { /* "Estland" */
|
|
||||||
mode = 2;
|
|
||||||
|
|
||||||
strcpy(k, key);
|
|
||||||
down(k);
|
|
||||||
} /* else */
|
|
||||||
|
|
||||||
if (mode == 1) {
|
|
||||||
for (i = 0; i < nCountry; i++) {
|
|
||||||
res = strlen(Country[i].prefix);
|
|
||||||
match = !strncmp(Country[i].prefix, key, res);
|
|
||||||
|
|
||||||
if (match)
|
|
||||||
break;
|
|
||||||
} /* for */
|
|
||||||
}
|
}
|
||||||
else { /* mode == 2 */
|
|
||||||
res = 1;
|
|
||||||
|
|
||||||
for (i = 0; i < nCountry; i++)
|
xname=xlat(name);
|
||||||
if ((match = !strncmp(Country[i].match, k, strlen(Country[i].match))))
|
|
||||||
break;
|
|
||||||
|
|
||||||
if (!match)
|
for (i=0; i<nCountry; i++) {
|
||||||
for (i = 0; i < nCountry; i++)
|
for (j=0; j<Country[i].nAlias; j++) {
|
||||||
if ((match = (strstr(Country[i].match, k) != NULL)))
|
if (strcmp(xname, Country[i].Alias[j])==0) {
|
||||||
break;
|
*country=&Country[i];
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!match)
|
m=666; /* the number of the beast */
|
||||||
for (i = 0; i < nCountry; i++)
|
for (i=0; i<nCountry; i++) {
|
||||||
if ((match = (strstr(Country[i].hints, k) != NULL)))
|
for (j=0; j<Country[i].nAlias; j++) {
|
||||||
break;
|
if ((d=wld(xname, Country[i].Alias[j]))<m) {
|
||||||
|
m=d;
|
||||||
|
*country=&Country[i];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return m;
|
||||||
|
}
|
||||||
|
|
||||||
#if 0
|
#ifdef COUNTRYTEST
|
||||||
if (!match)
|
|
||||||
for (i = 0; i < nCountry; i++)
|
|
||||||
if ((match = (wld(k, Country[i].match) <= DISTANCE)))
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
} /* else */
|
|
||||||
|
|
||||||
if (match) {
|
|
||||||
if (mode == 1)
|
|
||||||
strcpy(result, Country[i].name);
|
|
||||||
else
|
|
||||||
strcpy(result, Country[i].prefix);
|
|
||||||
|
|
||||||
return(res);
|
|
||||||
} /* if */
|
|
||||||
|
|
||||||
return(0);
|
|
||||||
} /* abroad */
|
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef STANDALONE
|
|
||||||
void main (int argc, char *argv[])
|
void main (int argc, char *argv[])
|
||||||
{
|
{
|
||||||
char *msg;
|
COUNTRY *country;
|
||||||
|
char *msg;
|
||||||
|
int d, i;
|
||||||
|
|
||||||
initCountry ("../prefixes.dat", &msg);
|
initCountry ("../prefixes.dat", &msg);
|
||||||
printf ("%s\n", msg);
|
printf ("%s\n", msg);
|
||||||
|
|
||||||
|
for (i=1; i<argc; i++) {
|
||||||
|
d=getCountry(argv[i], &country);
|
||||||
|
if (country==NULL)
|
||||||
|
printf ("<%s> unknown country!\n", argv[i]);
|
||||||
|
else
|
||||||
|
printf ("<%s>=<%s> d=%d\n", argv[i], country->Name, d);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -19,6 +19,9 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.1 1999/05/27 18:19:58 akool
|
||||||
|
* first release of the new country decoding module
|
||||||
|
*
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -35,5 +38,6 @@ typedef struct {
|
||||||
|
|
||||||
int initCountry(char *path, char **msg);
|
int initCountry(char *path, char **msg);
|
||||||
void exitCountry(void);
|
void exitCountry(void);
|
||||||
|
int getCountry(char *name, COUNTRY **country);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -4,28 +4,22 @@
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
#define TABSTOP 40
|
#define TABSTOP 35
|
||||||
|
#define TAGSTOP 75
|
||||||
|
|
||||||
#define COUNT(array) sizeof(array)/sizeof(array[0])
|
#define COUNT(array) sizeof(array)/sizeof(array[0])
|
||||||
|
|
||||||
typedef struct {
|
|
||||||
char *code;
|
|
||||||
char *name;
|
|
||||||
} COUNTRY;
|
|
||||||
|
|
||||||
COUNTRY *Country = NULL;
|
|
||||||
int nCountry = 0;
|
|
||||||
|
|
||||||
char *strip (char *s)
|
char *strip (char *s)
|
||||||
{
|
{
|
||||||
char *p;
|
char *p;
|
||||||
|
|
||||||
while (*s==' ' || *s=='\t') s++;
|
while (isblank(*s)) s++;
|
||||||
for (p=s; *p; p++)
|
for (p=s; *p; p++)
|
||||||
if (*p=='#' || *p=='\n') {
|
if (*p=='#' || *p=='\n') {
|
||||||
*p='\0';
|
*p='\0';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
for (p--; p>s && (*p==' '||*p=='\t'); p--)
|
for (p--; p>s && isblank(*p); p--)
|
||||||
*p='\0';
|
*p='\0';
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
@ -49,7 +43,7 @@ void rprintf (char *name, char *fmt, ...)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static char* str2set (char **s)
|
static char* str2list (char **s)
|
||||||
{
|
{
|
||||||
static char buffer[BUFSIZ];
|
static char buffer[BUFSIZ];
|
||||||
char *p=buffer;
|
char *p=buffer;
|
||||||
|
@ -64,179 +58,33 @@ static char* str2set (char **s)
|
||||||
return buffer;
|
return buffer;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *xlat (char *s)
|
|
||||||
{
|
|
||||||
static char buffer[BUFSIZ];
|
|
||||||
char *p = buffer;
|
|
||||||
|
|
||||||
do {
|
|
||||||
*p=tolower(*s);
|
|
||||||
switch (*p) {
|
|
||||||
case 'ä':
|
|
||||||
*p++='a';
|
|
||||||
*p ='e';
|
|
||||||
break;
|
|
||||||
case 'ö':
|
|
||||||
*p++='o';
|
|
||||||
*p ='e';
|
|
||||||
break;
|
|
||||||
case 'ü':
|
|
||||||
*p++='u';
|
|
||||||
*p ='e';
|
|
||||||
break;
|
|
||||||
case 'ß':
|
|
||||||
*p++='s';
|
|
||||||
*p ='s';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
p++;
|
|
||||||
} while (*s++);
|
|
||||||
return buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
int min3(int x, int y, int z)
|
|
||||||
{
|
|
||||||
if (x < y)
|
|
||||||
y = x;
|
|
||||||
if (y < z)
|
|
||||||
z = y;
|
|
||||||
return(z);
|
|
||||||
}
|
|
||||||
|
|
||||||
#define WMAX 64
|
|
||||||
#define P 1
|
|
||||||
#define Q 1
|
|
||||||
#define R 1
|
|
||||||
|
|
||||||
int wld(char *needle, char *haystack) /* weighted Levenshtein distance */
|
|
||||||
{
|
|
||||||
int i, j;
|
|
||||||
int l1 = strlen(needle);
|
|
||||||
int l2 = strlen(haystack);
|
|
||||||
int dw[WMAX+1][WMAX+1];
|
|
||||||
|
|
||||||
dw[0][0]=0;
|
|
||||||
|
|
||||||
for (j=1; j<=WMAX; j++)
|
|
||||||
dw[0][j]=dw[0][j-1]+Q;
|
|
||||||
|
|
||||||
for (i=1; i<=WMAX; i++)
|
|
||||||
dw[i][0]=dw[i-1][0]+R;
|
|
||||||
|
|
||||||
for (i=1; i<=l1; i++)
|
|
||||||
for(j=1; j<=l2; j++)
|
|
||||||
dw[i][j]=min3(dw[i-1][j-1]+((needle[i-1]==haystack[j-1])?0:P),dw[i][j-1]+Q,dw[i-1][j]+R);
|
|
||||||
|
|
||||||
return(dw[l1][l2]);
|
|
||||||
}
|
|
||||||
|
|
||||||
void initCountry (char *path)
|
|
||||||
{
|
|
||||||
FILE *stream;
|
|
||||||
char buffer[BUFSIZ];
|
|
||||||
char *p, *s;
|
|
||||||
int n = 0;
|
|
||||||
|
|
||||||
if ((stream=fopen(path,"r"))==NULL) {
|
|
||||||
fprintf (stderr, "Error: could not load countries from %s: %s\n", path, strerror(errno));
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
while ((s=fgets(buffer,BUFSIZ,stream))!=NULL) {
|
|
||||||
if (*(s=strip(s))=='\0')
|
|
||||||
continue;
|
|
||||||
p=s;
|
|
||||||
while (*p) {
|
|
||||||
if (isblank(*p))
|
|
||||||
break;
|
|
||||||
p++;
|
|
||||||
}
|
|
||||||
if (*p=='\0')
|
|
||||||
continue;
|
|
||||||
|
|
||||||
*p='\0';
|
|
||||||
p=strip(p+1);
|
|
||||||
if (*s=='0' && *(s+1)=='0')
|
|
||||||
*++s='+';
|
|
||||||
|
|
||||||
Country=realloc (Country, (nCountry+1)*sizeof(COUNTRY));
|
|
||||||
Country[nCountry].name=strdup(p);
|
|
||||||
Country[nCountry].code=strdup(s);
|
|
||||||
nCountry++;
|
|
||||||
n++;
|
|
||||||
}
|
|
||||||
fprintf (stderr, "loaded %d countries from %s\n", n, path);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
char *findArea (char *country)
|
|
||||||
{
|
|
||||||
char buffer[BUFSIZ];
|
|
||||||
int c, i, m, w;
|
|
||||||
|
|
||||||
c=0;
|
|
||||||
w=0;
|
|
||||||
m=666;
|
|
||||||
strcpy (buffer, xlat(country));
|
|
||||||
for (i=0; i<nCountry; i++)
|
|
||||||
if ((w=wld (buffer, xlat(Country[i].name)))<m) {
|
|
||||||
m=w;
|
|
||||||
c=i;
|
|
||||||
}
|
|
||||||
if (m>0)
|
|
||||||
fprintf (stderr, "%s = %s?\n", country, Country[c].name);
|
|
||||||
|
|
||||||
return Country[c].code;
|
|
||||||
}
|
|
||||||
|
|
||||||
static int byArea(const void *a, const void *b)
|
|
||||||
{
|
|
||||||
return strcmp (((COUNTRY*)a)->code, ((COUNTRY*)b)->code);
|
|
||||||
}
|
|
||||||
|
|
||||||
void print_area(char *area)
|
void print_area(char *area)
|
||||||
{
|
{
|
||||||
int nArea=0;
|
int col;
|
||||||
COUNTRY *Area=NULL;
|
char *a;
|
||||||
char comment[BUFSIZ];
|
|
||||||
char *a, *b;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
if (!*area)
|
if (!*area)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
col = 0;
|
||||||
while (1) {
|
while (1) {
|
||||||
if (*(a=strip(str2set(&area)))) {
|
if (*(a=strip(str2list(&area)))) {
|
||||||
Area=realloc(Area, (nArea+1)*sizeof(COUNTRY));
|
if (*a=='+' && *(a+1)=='\0') {
|
||||||
if (*a=='+') {
|
if (col) {
|
||||||
Area[nArea].code=strdup(a);
|
printf ("\n");
|
||||||
Area[nArea].name=*(a+1)=='\0'?strdup("alle übrigen Länder"):NULL;
|
col=0;
|
||||||
} else if (strcmp(a,"0663")==0) {
|
}
|
||||||
Area[nArea].code=strdup("+43663");
|
rprintf ("alle übrigen Länder", "A:+");
|
||||||
Area[nArea].name=strdup("C-Netz");
|
|
||||||
} else if (strcmp(a,"0664")==0) {
|
|
||||||
Area[nArea].code=strdup("+43664");
|
|
||||||
Area[nArea].name=strdup("D-Netz");
|
|
||||||
} else if (strcmp(a,"0676")==0) {
|
|
||||||
Area[nArea].code=strdup("+43676");
|
|
||||||
Area[nArea].name=strdup("max.mobil");
|
|
||||||
} else if (strcmp(a,"0699")==0) {
|
|
||||||
Area[nArea].code=strdup("+43699");
|
|
||||||
Area[nArea].name=strdup("one");
|
|
||||||
} else if (strcmp(a,"07189")==0) {
|
|
||||||
Area[nArea].code=strdup("+437189");
|
|
||||||
Area[nArea].name=strdup("Online-Zone");
|
|
||||||
} else if (strcmp(a,"19430")==0) {
|
|
||||||
Area[nArea].code=strdup("+43*19430");
|
|
||||||
Area[nArea].name=strdup("Magnet");
|
|
||||||
} else if (strcmp(a,"19440")==0) {
|
|
||||||
Area[nArea].code=strdup("+43*19440");
|
|
||||||
Area[nArea].name=strdup("A-Online");
|
|
||||||
} else {
|
} else {
|
||||||
Area[nArea].code=strdup(findArea(a));
|
if (col+strlen(a) > TAGSTOP) {
|
||||||
Area[nArea].name=strdup(a);
|
printf ("\n");
|
||||||
|
col=0;
|
||||||
|
}
|
||||||
|
if (col)
|
||||||
|
col+=printf (", %s", a);
|
||||||
|
else
|
||||||
|
col=printf ("A:%s", a);
|
||||||
}
|
}
|
||||||
nArea++;
|
|
||||||
}
|
}
|
||||||
if (*area==',') {
|
if (*area==',') {
|
||||||
area++;
|
area++;
|
||||||
|
@ -244,32 +92,8 @@ void print_area(char *area)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
qsort(Area, nArea, sizeof(COUNTRY), byArea);
|
if (col)
|
||||||
a=""; b="";
|
printf ("\n");
|
||||||
for (i=0; i<nArea; i++) {
|
|
||||||
if (strcmp(a,Area[i].code)==0) {
|
|
||||||
sprintf (comment, "%s, %s", b, Area[i].name);
|
|
||||||
free (Area[i-1].code);Area[i-1].code=NULL;
|
|
||||||
free (Area[i-1].name);Area[i-1].name=NULL;
|
|
||||||
free (Area[i].name);Area[i].name=strdup(comment);
|
|
||||||
}
|
|
||||||
a=Area[i].code;
|
|
||||||
b=Area[i].name;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (i=0; i<nArea; i++) {
|
|
||||||
if (Area[i].code) {
|
|
||||||
if (Area[i].name) {
|
|
||||||
sprintf (comment, "# %s", Area[i].name);
|
|
||||||
rprintf (comment, "A:%s", Area[i].code);
|
|
||||||
free (Area[i].name);
|
|
||||||
} else {
|
|
||||||
rprintf (NULL, "A:%s", Area[i].code);
|
|
||||||
}
|
|
||||||
free (Area[i].code);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
free (Area);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void rate_sample(void) {
|
void rate_sample(void) {
|
||||||
|
@ -303,12 +127,12 @@ void rate_1001(void) {
|
||||||
|
|
||||||
double Tarif[] = { 1.116, 1.056, 0.996, 0.936, 0.816 };
|
double Tarif[] = { 1.116, 1.056, 0.996, 0.936, 0.816 };
|
||||||
|
|
||||||
char *Zone[][2] = {{"FreePhone", "+43660" },
|
char *Zone[][2] = {{"FreePhone", "+43800" },
|
||||||
{ "Regionalzone", "" },
|
{ "Regionalzone", "+43660" },
|
||||||
{ "Fernzone 1", "" },
|
{ "Fernzone 1", "" },
|
||||||
{ "Fernzone 2", "Österreich" },
|
{ "Fernzone 2", "Österreich" },
|
||||||
{ "Online-Tarif", "07189,19430,19440" },
|
{ "Online-Tarif", "+437189,19430,19440" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
{ "Ausland Zone 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
{ "Ausland Zone 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
||||||
{ "Ausland Zone 3", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
{ "Ausland Zone 3", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
||||||
|
@ -412,7 +236,7 @@ void rate_1002(void) {
|
||||||
char *Zone[][2] = {{ "Bundeslandzone", "" },
|
char *Zone[][2] = {{ "Bundeslandzone", "" },
|
||||||
{ "Österreichzone", "Österreich" },
|
{ "Österreichzone", "Österreich" },
|
||||||
{ "special friends", "" },
|
{ "special friends", "" },
|
||||||
{ "Mobilnetz", "0663,0664,0676,0699" },
|
{ "Mobilnetz", "+43663,+43664,+43676,+43699" },
|
||||||
{ "EasyInternet", "" },
|
{ "EasyInternet", "" },
|
||||||
{ "Nachbarländer West", "Deutschland, Italien, Liechtenstein, Schweiz" },
|
{ "Nachbarländer West", "Deutschland, Italien, Liechtenstein, Schweiz" },
|
||||||
{ "Nachbarländer Ost", "Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Nachbarländer Ost", "Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
|
@ -463,7 +287,7 @@ void rate_1003(void) {
|
||||||
{ "Fernzone 1", "" },
|
{ "Fernzone 1", "" },
|
||||||
{ "5 Freunde", "" },
|
{ "5 Freunde", "" },
|
||||||
{ "Fernzone 2", "Österreich" },
|
{ "Fernzone 2", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Deutschland spezial", "Deutschland" },
|
{ "Deutschland spezial", "Deutschland" },
|
||||||
{ "Europa spezial", "Belgien, Frankreich, Großbritannien" },
|
{ "Europa spezial", "Belgien, Frankreich, Großbritannien" },
|
||||||
{ "Ausland Zone 1", "Czech Republic, Hungary, Italy, Slovakia, Slovenia, Switzerland" },
|
{ "Ausland Zone 1", "Czech Republic, Hungary, Italy, Slovakia, Slovenia, Switzerland" },
|
||||||
|
@ -514,7 +338,7 @@ void rate_1003(void) {
|
||||||
void rate_1005(void) {
|
void rate_1005(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "National", "Österreich" },
|
char *Zone[][2] = {{ "National", "Österreich" },
|
||||||
{ "Mobilfunknetz", "0663,0664,0676,0699" },
|
{ "Mobilfunknetz", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Europa 1 / USA", "Belgien, Dänemark, Deutschland, Finnland, Frankreich, Griechenland, Grossbritannien, Irland, Italien, Liechtenstein, Luxemburg, Monaco, Niederlande, Nordirland, Norwegen, Schweden, Schweiz, Slowakei, Slowenien, Spanien, Tschechien, Ungarn" },
|
{ "Europa 1 / USA", "Belgien, Dänemark, Deutschland, Finnland, Frankreich, Griechenland, Grossbritannien, Irland, Italien, Liechtenstein, Luxemburg, Monaco, Niederlande, Nordirland, Norwegen, Schweden, Schweiz, Slowakei, Slowenien, Spanien, Tschechien, Ungarn" },
|
||||||
{ "Europa 2", "Albanien, Algerien, Andorra, Bosnien-Herzegowina, Bulgarien, Estland, Färöer-Inseln, Gibraltar, Island, Israel, Jugoslawien, Kroatien, Lettland, Litauen, Mazedonien, Malta, Marokko, Polen, Portugal, Rumänien, Russland, San Marino, Tunesien, Türkei, Zypern" },
|
{ "Europa 2", "Albanien, Algerien, Andorra, Bosnien-Herzegowina, Bulgarien, Estland, Färöer-Inseln, Gibraltar, Island, Israel, Jugoslawien, Kroatien, Lettland, Litauen, Mazedonien, Malta, Marokko, Polen, Portugal, Rumänien, Russland, San Marino, Tunesien, Türkei, Zypern" },
|
||||||
{ "Welt 1", "Australien, Hongkong, Japan, Neuseeland, Südkorea, Singapur" },
|
{ "Welt 1", "Australien, Hongkong, Japan, Neuseeland, Südkorea, Singapur" },
|
||||||
|
@ -541,7 +365,7 @@ void rate_1007(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Fernzone 1", "" },
|
char *Zone[][2] = {{ "Fernzone 1", "" },
|
||||||
{ "Fernzone 2", "Österreich" },
|
{ "Fernzone 2", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Ausland Zone 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
{ "Ausland Zone 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
{ "Ausland Zone 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
||||||
{ "Ausland Zone 3", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
{ "Ausland Zone 3", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
||||||
|
@ -634,7 +458,7 @@ void rate_1011(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Bundesland", "" },
|
char *Zone[][2] = {{ "Bundesland", "" },
|
||||||
{ "Österreich", "Österreich" },
|
{ "Österreich", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{"Deutschland", "Deutschland"},
|
{"Deutschland", "Deutschland"},
|
||||||
{"Ausland 1", "Frankreich, Großbritannien, Italien, Liechtenstein, Paraguay, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn, Vatikanstadt"},
|
{"Ausland 1", "Frankreich, Großbritannien, Italien, Liechtenstein, Paraguay, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn, Vatikanstadt"},
|
||||||
{"Ausland 2", "Belgien, Dänemark, Finnland, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Papua-Neuguinea, San Marino, Schweden, Spanien, Vereinigte Staaten (USA)"},
|
{"Ausland 2", "Belgien, Dänemark, Finnland, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Papua-Neuguinea, San Marino, Schweden, Spanien, Vereinigte Staaten (USA)"},
|
||||||
|
@ -699,7 +523,7 @@ void rate_1012(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Nah", "" },
|
char *Zone[][2] = {{ "Nah", "" },
|
||||||
{ "Fern", "Österreich" },
|
{ "Fern", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Deutschland spezial", "Deutschland" },
|
{ "Deutschland spezial", "Deutschland" },
|
||||||
{ "Nachbarn", "Frankreich, Italien, Schweiz, Liechtenstein, Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Nachbarn", "Frankreich, Italien, Schweiz, Liechtenstein, Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
{ "Europa 1 + USA", "Belgien, Dänemark, Finnland, Großbritannien, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Schweden, Spanien, Vereinigte Staaten (USA)" },
|
{ "Europa 1 + USA", "Belgien, Dänemark, Finnland, Großbritannien, Irland, Kanada, Luxemburg, Niederlande, Norwegen, Schweden, Spanien, Vereinigte Staaten (USA)" },
|
||||||
|
@ -790,8 +614,8 @@ void rate_1029(void) {
|
||||||
char *Zone[][2] = {{ "Regionalzone", "" },
|
char *Zone[][2] = {{ "Regionalzone", "" },
|
||||||
{ "Fernzone 1", "" },
|
{ "Fernzone 1", "" },
|
||||||
{ "Fernzone 2", "Österreich" },
|
{ "Fernzone 2", "Österreich" },
|
||||||
{ "Mobilfunk A1, max", "0663,0664,0676" },
|
{ "Mobilfunk A1, max", "+43663,+43664,+43676" },
|
||||||
{ "Mobilfunk One", "0699" },
|
{ "Mobilfunk One", "+43699" },
|
||||||
{ "Deutschland", "Deutschland" },
|
{ "Deutschland", "Deutschland" },
|
||||||
{ "Schweiz", "Schweiz" },
|
{ "Schweiz", "Schweiz" },
|
||||||
{ "USA", "Vereinigte Staaten (USA)" },
|
{ "USA", "Vereinigte Staaten (USA)" },
|
||||||
|
@ -859,7 +683,7 @@ void rate_1044(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Regional", "" },
|
char *Zone[][2] = {{ "Regional", "" },
|
||||||
{ "Österreich", "Österreich" },
|
{ "Österreich", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Ausland", "+" }};
|
{ "Ausland", "+" }};
|
||||||
|
|
||||||
double Tarif[][2] = {{ 1.20, 1.20 },
|
double Tarif[][2] = {{ 1.20, 1.20 },
|
||||||
|
@ -892,7 +716,7 @@ void rate_1049(void) {
|
||||||
char *Zone[][2] = {{ "Regionalzone", ""},
|
char *Zone[][2] = {{ "Regionalzone", ""},
|
||||||
{ "Fernzone 1", "" },
|
{ "Fernzone 1", "" },
|
||||||
{ "Fernzone 2", "Österreich" },
|
{ "Fernzone 2", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Europa 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Europa 1", "Deutschland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
{ "Europa 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
{ "Europa 2", "Albanien, Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark,Finnland, Frankreich, Großbritannien, Nordirland, Irland, Jugoslawien, Serbien, Montenegro, Kroatien, Luxemburg, Malta, Mazedonien, Monaco, Niederlande, Norwegen, Rumänien, San Marino, Schweden, Spanien, Ukraine, Vatikanstadt, Zypern" },
|
||||||
{ "Global 1", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
{ "Global 1", "Algerien, Estland, Färöer-Inseln, Georgien, Gibraltar, Island, Israel, Lettland, Litauen, Marokko, Portugal, Russische Föderation, Tadschikistan, Turkmenistan, Usbekistan" },
|
||||||
|
@ -949,9 +773,10 @@ void rate_1066(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Regionalzone", "" },
|
char *Zone[][2] = {{ "Regionalzone", "" },
|
||||||
{ "Österreich", "Österreich" },
|
{ "Österreich", "Österreich" },
|
||||||
{ "Mobilfunk", "0663,0664,0676,0699" },
|
{ "Mobilfunk", "+43663,+43664,+43676,+43699" },
|
||||||
{ "Euro 1", "Deutschland, Frankreich, Großbritannien, Nordirland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
{ "Euro 1", "Deutschland, Frankreich, Großbritannien, Nordirland, Italien, Liechtenstein, Schweiz, Slowakei, Slowenien, Tschechien, Ungarn" },
|
||||||
{ "Euro 2", "Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark, Estland, Finnland, Griechenland, Irland, Jugoslawien, Kroatien, Luxemburg, Monaco, Niederlande, Norwegen, Polen, Portugal, Rumänien, San Marino, Schweden, Spanien, Tunesien, Türkei, Ukraine, Vatikanstadt, Zypern" },
|
{ "Euro 2", "Andorra, Belarus, Belgien, Bosnien-Herzegowina, Bulgarien, Dänemark, Estland, Finnland, Griechenland, Irland, Jugoslawien, Kroatien, Luxemburg, Monaco, Niederlande, Norwegen, Polen, Portugal, Rumänien, San Marino, Schweden, Spanien, Tunesien, Türkei, Ukraine, Vatikanstadt, Zypern" },
|
||||||
|
/* Fixme: nur Stadt Luxemburg! (wie nennen wir's?) */
|
||||||
{ "Euro City", "Amsterdam, Brüssel, Frankfurt, London, Luxemburg, Mailand, Paris, Zürich" },
|
{ "Euro City", "Amsterdam, Brüssel, Frankfurt, London, Luxemburg, Mailand, Paris, Zürich" },
|
||||||
{ "Welt 1", "Hawaii, Amerikanische Jungferninseln, Puerto Rico, Vereinigte Staaten (USA), Kanada" },
|
{ "Welt 1", "Hawaii, Amerikanische Jungferninseln, Puerto Rico, Vereinigte Staaten (USA), Kanada" },
|
||||||
{ "Welt 2", "Albanien, Antarktis, Armenien, Aserbaidschan, Australien, Bahamas, Chile, Weihnachtsinseln, Kokosinseln, Dominikanische Republik, Georgien, Gibraltar, Guadeloupe, Französisch-Guayana, Hongkong, Island, Israel, Japan, Lettland, Libyen, Litauen, Mazedonien, Malaysia, Malta, Marokko, Martinique, Mayotte, Moldau, Neuseeland, Niederländische Antillen, Philippinen, Russische Föderation, Reunion, St. Pierre und Miquelon, Singapur, Südafrika, Südkorea, Saipan" },
|
{ "Welt 2", "Albanien, Antarktis, Armenien, Aserbaidschan, Australien, Bahamas, Chile, Weihnachtsinseln, Kokosinseln, Dominikanische Republik, Georgien, Gibraltar, Guadeloupe, Französisch-Guayana, Hongkong, Island, Israel, Japan, Lettland, Libyen, Litauen, Mazedonien, Malaysia, Malta, Marokko, Martinique, Mayotte, Moldau, Neuseeland, Niederländische Antillen, Philippinen, Russische Föderation, Reunion, St. Pierre und Miquelon, Singapur, Südafrika, Südkorea, Saipan" },
|
||||||
|
@ -989,8 +814,8 @@ void rate_1066(void) {
|
||||||
void rate_1069(void) {
|
void rate_1069(void) {
|
||||||
|
|
||||||
char *Zone[][2] = {{ "Festnetz", "Österreich" },
|
char *Zone[][2] = {{ "Festnetz", "Österreich" },
|
||||||
{ "ONE Mobilfunknetz", "0699" },
|
{ "One Mobilfunknetz", "+43699" },
|
||||||
{ "andere Mobilfunknetze", "0663,0664,0676" },
|
{ "andere Mobilfunknetze", "+43663,+43664,+43676" },
|
||||||
{ "EU und Nachbarländer", "Belgien, Dänemark, Deutschland, Finnland, Frankreich, Großbritannien, Irland, Italien, Liechtenstein, Luxemburg, Niederlande, Norwegen, Schweden, Schweiz, Slowakei, Slowenien, Spanien, Tschechien, Ungarn" },
|
{ "EU und Nachbarländer", "Belgien, Dänemark, Deutschland, Finnland, Frankreich, Großbritannien, Irland, Italien, Liechtenstein, Luxemburg, Niederlande, Norwegen, Schweden, Schweiz, Slowakei, Slowenien, Spanien, Tschechien, Ungarn" },
|
||||||
{ "Internationale Zone 2", "Andorra, Australien, Bosnien-Herzegowina, Griechenland, Island, Japan, Jugoslawien, Kanada, Kroatien, Malta, Monaco, Neuseeland, Polen, Portugal, Puerto Rico, Mazedonien, San Marino, Vereinigte Staaten (USA), Vatikanstadt" },
|
{ "Internationale Zone 2", "Andorra, Australien, Bosnien-Herzegowina, Griechenland, Island, Japan, Jugoslawien, Kanada, Kroatien, Malta, Monaco, Neuseeland, Polen, Portugal, Puerto Rico, Mazedonien, San Marino, Vereinigte Staaten (USA), Vatikanstadt" },
|
||||||
{ "Internationale Zone 3", "Albanien, Algerien, Bulgarien, Estland, Gibraltar, Hongkong, Israel, Lettland,Litauen, Marokko, Rumänien, Rußland, Singapur, Tunesien, Türkei, Ukraine, Weißrußland, Zypern" },
|
{ "Internationale Zone 3", "Albanien, Algerien, Bulgarien, Estland, Gibraltar, Hongkong, Israel, Lettland,Litauen, Marokko, Rumänien, Rußland, Singapur, Tunesien, Türkei, Ukraine, Weißrußland, Zypern" },
|
||||||
|
@ -1020,10 +845,6 @@ void rate_1069(void) {
|
||||||
|
|
||||||
void main (int argc, char *argv[])
|
void main (int argc, char *argv[])
|
||||||
{
|
{
|
||||||
initCountry ("../countries-at.dat");
|
|
||||||
initCountry ("../countries-de.dat");
|
|
||||||
initCountry ("../countries-us.dat");
|
|
||||||
|
|
||||||
printf ("# created by rate-at.c\n\n");
|
printf ("# created by rate-at.c\n\n");
|
||||||
printf ("# The information herein was machine-generated,\n");
|
printf ("# The information herein was machine-generated,\n");
|
||||||
printf ("# so do not contribute patches to this file.\n\n");
|
printf ("# so do not contribute patches to this file.\n\n");
|
||||||
|
@ -1032,7 +853,8 @@ void 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.22-Austria [28-Apr-1999]\n");
|
printf ("V:1.40-Austria [01-Jun-1999]\n\n");
|
||||||
|
printf ("F:%%.3f öS\n");
|
||||||
|
|
||||||
#if 0
|
#if 0
|
||||||
rate_1066();
|
rate_1066();
|
||||||
|
|
|
@ -19,6 +19,20 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.27 1999/05/22 10:19:33 akool
|
||||||
|
* isdnlog Version 3.29
|
||||||
|
*
|
||||||
|
* - processing of "sonderrufnummern" much more faster
|
||||||
|
* - detection for sonderrufnummern of other provider's implemented
|
||||||
|
* (like 01929:FreeNet)
|
||||||
|
* - Patch from Oliver Lauer <Oliver.Lauer@coburg.baynet.de>
|
||||||
|
* - Patch from Markus Schoepflin <schoepflin@ginit.de>
|
||||||
|
* - easter computing corrected
|
||||||
|
* - rate-de.dat 1.02-Germany [22-May-1999 11:37:33] (from rate-CVS)
|
||||||
|
* - countries-de.dat 1.02-Germany [22-May-1999 11:37:47] (from rate-CVS)
|
||||||
|
* - new option "-B" added (see README)
|
||||||
|
* (using "isdnlog -B16 ..." isdnlog now works in the Netherlands!)
|
||||||
|
*
|
||||||
* Revision 1.26 1999/05/09 18:24:28 akool
|
* Revision 1.26 1999/05/09 18:24:28 akool
|
||||||
* isdnlog Version 3.25
|
* isdnlog Version 3.25
|
||||||
*
|
*
|
||||||
|
@ -678,7 +692,11 @@ char *vnum(int chan, int who)
|
||||||
} /* if */
|
} /* if */
|
||||||
} /* if */
|
} /* if */
|
||||||
|
|
||||||
if ((ptr = get_areacode(call[chan].num[who], &ll, flag)) != 0) {
|
if (!memcmp(call[chan].num[who], "+49173", 5)) {
|
||||||
|
strcpy(call[chan].area[who], "D2 Mobilfunknetz");
|
||||||
|
l = 6;
|
||||||
|
}
|
||||||
|
else if ((ptr = get_areacode(call[chan].num[who], &ll, flag)) != 0) {
|
||||||
strcpy(call[chan].area[who], ptr);
|
strcpy(call[chan].area[who], ptr);
|
||||||
l = ll;
|
l = ll;
|
||||||
got++;
|
got++;
|
||||||
|
|
|
@ -20,6 +20,20 @@
|
||||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||||
*
|
*
|
||||||
* $Log$
|
* $Log$
|
||||||
|
* Revision 1.42 1999/05/22 10:19:36 akool
|
||||||
|
* isdnlog Version 3.29
|
||||||
|
*
|
||||||
|
* - processing of "sonderrufnummern" much more faster
|
||||||
|
* - detection for sonderrufnummern of other provider's implemented
|
||||||
|
* (like 01929:FreeNet)
|
||||||
|
* - Patch from Oliver Lauer <Oliver.Lauer@coburg.baynet.de>
|
||||||
|
* - Patch from Markus Schoepflin <schoepflin@ginit.de>
|
||||||
|
* - easter computing corrected
|
||||||
|
* - rate-de.dat 1.02-Germany [22-May-1999 11:37:33] (from rate-CVS)
|
||||||
|
* - countries-de.dat 1.02-Germany [22-May-1999 11:37:47] (from rate-CVS)
|
||||||
|
* - new option "-B" added (see README)
|
||||||
|
* (using "isdnlog -B16 ..." isdnlog now works in the Netherlands!)
|
||||||
|
*
|
||||||
* Revision 1.41 1999/05/13 11:40:11 akool
|
* Revision 1.41 1999/05/13 11:40:11 akool
|
||||||
* isdnlog Version 3.28
|
* isdnlog Version 3.28
|
||||||
*
|
*
|
||||||
|
@ -514,22 +528,15 @@
|
||||||
#define CITYCALL 2
|
#define CITYCALL 2
|
||||||
#define REGIOCALL 3
|
#define REGIOCALL 3
|
||||||
#define GERMANCALL 4
|
#define GERMANCALL 4
|
||||||
#define C_MOBILBOX 5
|
#define C_MOBILBOX 10
|
||||||
#define C_NETZ 6
|
#define C_NETZ 10
|
||||||
#define D1_NETZ 7
|
#define D1_NETZ 10
|
||||||
#define D2_NETZ 8
|
#define D2_NETZ 10
|
||||||
#define E_PLUS_NETZ 9
|
#define E_PLUS_NETZ 10
|
||||||
#define E2_NETZ 10
|
#define E2_NETZ 10
|
||||||
#define EURO_CITY 11
|
#define INTERNET 100
|
||||||
#define EURO_1 12
|
#define AUKUNFT_IN 40
|
||||||
#define EURO_2 13
|
#define AUSKUNFT_AUS 41
|
||||||
#define WELT_1 14
|
|
||||||
#define WELT_2 15
|
|
||||||
#define WELT_3 16
|
|
||||||
#define WELT_4 17
|
|
||||||
#define INTERNET 20
|
|
||||||
#define AUKUNFT_IN 21
|
|
||||||
#define AUSKUNFT_AUS 22
|
|
||||||
|
|
||||||
/* Fixme: this is specific to Germany */
|
/* Fixme: this is specific to Germany */
|
||||||
#define DTAG 33
|
#define DTAG 33
|
||||||
|
|
Loading…
Reference in New Issue