Asterisk Prepaid Konto

Imox

Mitglied
Mitglied seit
16 Mrz 2008
Beiträge
206
Punkte für Reaktionen
0
Punkte
16
Hallo,

ich suche ein ganz einfaches Asterisk prepaid addon (callingcard). Was am besten an MySQL angebunden ist.

Ich brauche unbedingt eine Unterstützung für mehrere gleichzeitige Gespräche.

Ich habe auch schonmal so ein addons gefunden aber leider finde ich es nicht mehr.

Hat jemand von euch eine Idee?

vielen Dank schonmal

Imox
 
A2Billing?
 
Danke aber ich brauch ne anbindung keine komplette software. Außer du kannst mir sagen wie die das gemacht haben :)
 
Was meinst Du mit Anbindung?

Man könnte vor dem Gespräch mittels AGI Skript eine Datenbankabfrage über Tarif und Guthaben machen und ein Call-Timeout setzen.
Damit sich das Guthaben während des Gesprächs ändert, falls ein Benutzer mehrere Gespräche gleichzeitig führt, müsste wahrscheinlich ein Daemon laufen, der zB. über AMI die laufenden Gespräche überprüft und ggf. die Timeouts neu setzt.
 
ja genau sowas mein ich :)

Das asterisk ein Tarif raussucht und ein Timeout setzt das ist ja nicht schwer. Aber das mit dem deamon das ist das schwere. Hast du denn eine genaue Idee? bzw. eine Lösung per parat?

So einen deamon habe wir schonmal in Java geschrieben funktioniert auch alles super bis auf ein paar kleinigkeiten und ich wollte eigentlich nciht son java zeugs da laufen lassen.
 
Hast du denn eine genaue Idee? bzw. eine Lösung per parat?

Wie genau? Und nö.

Was spricht gegen das "Java-Zeug", wenn es schon vorhanden ist und grundsätzlich funktioniert?
Wenn Du keine fertige Lösung haben willst, wirst Du irgend so etwas machen müssen.
 
Wobei das Spannende ist, wie man während eines Gespräches (bei erlaubten concurrent calls) ein zuvor gesetztes CallLimit neu justieren will, dazu fällt mir nämlich nix ein ... (wenn man nicht einfach einen harten Hangup machen will)
 
Doch, das geht über die AMI Action AbsoluteTimeout. Wobei das einem Hangup relativ gleich kommt, weil man die Ansage der verbleibenden Gesprächszeit des L-Flags nicht beeinflussen kann.
 
Naja weil ich mir nicht so 100% sicher bin ob das perfekt funktioniert. Also mit nen paar sip accounts haben wa da rumgespielt und es hat funktioniert. Aber irgendwie wäre mir ne andere lösung lieber ;)

kennt jemand von euch astcc.agi ? http://www.voip-info.org/wiki/view/ASTCC

das ist wohl ein callingcard addon für freepbx. habs mal installiert ohne freepbx. hat sogar ne eigene oberfläche. und es wird alles in mysql tabelle gespeichert. ich muss mich mal nochmal heute abend oder so genauer damit geschäftigen aber vielleicht ist es ja das was ich suche ;)
 
@rentier-s: eben, genau da ist das Problem. Dass ich den Timeout über AMI ändern kann, ist mir klar, das Problem ist aber, dass hierdurch die Soundeinspielungen, die durch den L-Parameter gesetzt wurden, nicht beeinflußt werden. Der Trick wäre natürlich, nur auf dem Caller-Channel via AMI einen Sound einzuspielen, aber da fehlt mir eben die Idee ...

@Imox:
Beim schnellen Überfliegen fiel mir das hier auf:

sub checkinuse() {
my ($cardno) = @_;
my $carddata = &getcard($cardno);
if ($carddata->{inuse}) {
if ($quiet < 5 ) {
$AGI->stream_file("your");
$AGI->stream_file("card-number");
$AGI->stream_file("is-in-use");
$AGI->stream_file("please-try-again");
$AGI->stream_file("later");
$AGI->stream_file("vm-goodbye");
}
exit(0);
}
return;
}

Demnach gehe ich davon aus, dass das Framework die gewünschten concurrent calls nicht unterstützt.
 
Zuletzt bearbeitet:
doch das wird unterstützt VoipOnCD (http://www.voiponcd.de/) hat das auch benutzt. Habe mit dem Programmiere gesprochen und der meinte ja das geht. Es steht auch in seiner Doku drinne, dass er das genommen hat. Er hat nur leider keine lust mir da einen support zu geben ;(

Also wenn jemand von euch weiß wie ich es damit hinbekommen kann wäre cool. Ich raffs nicht so ganz.

Vielen Dank

Imox
 
Soweit ich das sehe, wird da lediglich beim Dial ein Limit gesetzt. Dabei wird das zum Zeitpunkt des Wählens vorhandene Guthaben für die Berechnung der maximalen Gesprächslänge verwendet. Wenn man damit gleichzeitige Gespräche über ein Konto erlaubt, werden die nicht richtig berechnet.

Ich bleibe dabei, dass es ohne Daemon nicht richtig funktionieren kann. :meinemei:

abw1oim, meinst Du es würde funktionieren, den Anrufer mittels AMI in einen mit neu berechnetem Limit versehenen Local-Channel zu schicken? Dann könnte man den angerufenen irgendwie kurz parken und die beiden dann wieder bridgen.
 
Mmh, das habe ich noch nicht ausprobiert, aber theoretisch müsste es gehen können -> Park für callee via AMI, Aufbau eines neuen Channels mit dem verkleinerten Limit via Local-Channel und danach den Parked Call zurückbridgen. Allerdings bin ich überfragt, wie sich das für Caller und Callee anhören würde ...

Die eigentlich spannende Frage wäre aber - und da hab' ich noch nicht hingeschaut - ob man die mit L übergebenen Variablen des Dial-Befehls (das sind ja letztlich CHANNEL-Variablen des MASTER_CHANNELS) nachträglich per AMI manipulieren kann (grundsätzlich kann man ja Variablen auf beliebigen Channeln setzen, wenn man den Channel-Namen kennt), z.B. so:

PHP:
<?php
    $var = 'digits/' . rand(0, 9);

    $foo = 0;
    $bar = 0;

    $socket = fsockopen ("127.0.0.1", 5038, $foo, $bar, 20);
    fputs($socket, "Action: login\r\n");
    fputs($socket, "Events: off\r\n");
    fputs($socket, "Username: user\r\n");
    fputs($socket, "Secret: password\r\n\r\n");
    fputs($socket, "Action: Setvar\r\n");
    fputs($socket, "Channel: $channel\r\n");
    fputs($socket, "Variable: TEST\r\n");
    fputs($socket, "Value: $var\r\n");
    fputs($socket, "Action: Logoff\r\n\r\n");
    fclose($socket);
?>

Ob das auch für L-Optionen greifen würde, habe ich aber noch nie durchprobiert ...
 
Kann ich mir kaum vorstellen das es nicht geht. Schaut euch mal VoipOnCD an damit geht das und es wird auch richtig abgerechnet. Und VoipOnCD nutzt dieses astcc.agi. Naja mal schauen wenn ich dem nochmal einen Mail schreiben vielleicht verrät der mir ja ein bisschen mehr ;)

Wie macht das denn http://www.asterisk2billing.org ??



Edit 10:03 Uhr: Also ich habe den Macher von VoipOnCD nochmal erreicht und er meinte er hat nur astcc.agi eingesetzt und nichts anderes. Also funktioniert das damit. Jetzt ist nur noch rauszufinden wie :-D
 
Zuletzt bearbeitet:
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.