[Asterisk-Users] Working with an ongoing call
Darren Wiebe
darren at aleph-com.net
Wed Jul 20 20:09:11 MST 2005
If you visit voipjets site, they say a little about how they work with
issues like that. I plan to integrate something similar to what they
have into ASTPP but it has not happened yet.
Darren Wiebe
darren at aleph-com.net
Waldo Rubinstein wrote:
> Eivind,
>
> I was thinking of doing something similar and came across a slight
> variation of your problem.
>
> While testing a home-grown prepaid solution, a beta-"friend" informed
> me that he detected a problem I could run into, which I will attempt
> to describe below.
>
> Say he makes a call and is informed he has 30 minutes left on the
> call. After, say, 9 minutes, he hook flashes in order to get the
> second line (just like call-waiting/three-way-calling feature). At
> this point he can me a second call where he MAY be informed
> accurately that now he has 21 minutes left. The problem is that the
> first call has not hung up so he is not necessarily informed of the
> accurate time left for the second call. Additionally, say he speaks
> for another 10-15 minutes (regardless of whether or not he hook-
> flashes again to do three-way calling) and then returns to the first
> call. At that point he can continue on the first call for the
> original full 30 minutes, even though he consumed (potentially) 40-45
> minutes.
>
> Has anyone worked some solution for this (as well as Eivind's
> problem) in all the prepaid solutions out there I see constantly on
> the list?
>
> Thanks,
> Waldo
>
> On Jul 20, 2005, at 4:49 AM, Eivind Trondsen wrote:
>
>> Hi list
>>
>> I plan to implement a prepaid solution where the system needs to
>> check for
>> remaining credit periodically during a call. The reason for this is
>> that this
>> is a system where the credit pool can be used simultaneously by more
>> people,
>> and not only for calling.
>>
>> I have a problem figuring how to be able to run logic while a call
>> is in
>> progress. The L(x:y:z) option to Dial() is good, but not quite what
>> I need.
>> In both the dialplan an an AGI the Dial command blocks, so what do I
>> do?
>>
>> I have not yet tried a multi-threaded AGI, but assume the
>> possibility of
>> success with that scenario to be slim...
>>
>> Ideally; I want to code things like this:
>>
>> Fetch cost of requested call;
>> # The reserve functions also supplies total remaining credit
>> unless (Reserve credit for N seconds) exit with message;
>> INITIATE CALL;
>> If answered {
>> while(1) {
>> Wait for N-x seconds;
>> Reserve credit for N seconds;
>> if (close to credit limit) PLAY WARNING BEEP;
>> else if (out of credit) EXIT WITH MESSAGE;
>> }
>> }
>>
>> hangup_trap:
>> Commit credit based on actual call length;
>>
>> EOF
>>
>> I realize that this probably needs to be done as a combination of
>> dialplan
>> logic and AGIs, but my main concern is the ability to
>>
>> 1) send sound to the caller of an ongoing call
>> 2) retain control so the call can be terminated based on a timer (or
>> whatever)
>>
>> Any tips would be greatly appreciated! Thanks in advance.
>>
>> --
>> Eivind Trondsen
>>
>> "People are destined to be party animals,
>> and the technology will follow"
>> - Linus Torvalds
>> _______________________________________________
>> Asterisk-Users mailing list
>> Asterisk-Users at lists.digium.com
>> http://lists.digium.com/mailman/listinfo/asterisk-users
>> To UNSUBSCRIBE or update options visit:
>> http://lists.digium.com/mailman/listinfo/asterisk-users
>>
>
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
> To UNSUBSCRIBE or update options visit:
> http://lists.digium.com/mailman/listinfo/asterisk-users
>
More information about the asterisk-users
mailing list