[Freeswitch-users] dynamic conference
Carole O.
carole.olivier at enst.fr
Sun Dec 21 23:25:33 PST 2008
Hello,
Ray, thanks for your detailed answer!!
Fidibus83, when are you pressing *1 ? Because the last version of the
program I gave is thought to be executed like the following:
- A and B are on call
- A and B decide to change their call into a conference in order to invite
other people. So A or B press first *2. In this way, both legs are
transferred to the extension named transf_both_legs. In this extension, the
name of the conference will be created and added in the database so you can
not skip it.
- A and B are now in a conference
- A (or B) puts B (or A) on hold.
- A (or B) calls C.
- if C answers and agrees then A (or B) press *1. This transfers the
opposite leg, this means C, to the extension transf_opposite_leg. C will be
here transferred to the conference whose name will also be added in the db
as an entry for C.
- A (or B) comes back to the conference it had put on hold.
- A, B and C are now all in the conference.
So I am not sure but maybe you press first *1 instead of *2 isn't?
If this is not the case then you could press F8 to debug and find out what's
wrong. I am sorry but I can not help you more, I am new with freeswitch and
not very experienced.
Thanks to all of you for your help,
I am going to improve this small program,
Best regards,
Carole
Raymond Chandler-2 wrote:
>
> Carole O. wrote:
>> Hello,
>>
>> Thanks for your answers!
>> Concerning the creation of a new variable for the conference the problem
>> is
>> that I do not create channels from the conference. I call separately a
>> new
>> member on a new channel and add it on the conference only if he agrees to
>> enter it. So it was the same problem as for the uuid, I am not sure I can
>> access the good variable from anywhere in case many conferences are
>> running.
>>
>>
> you could use the db app to hold state across multiple calls... maybe
> use the ${caller_id_number} and the ${destination_number} as keys for
> the insert/select so that there's something constant to use in the
> select... and another extension or two may be needed...
>
> You could do the db lookup before you make the call so that you see if
> your caller is already a member of a conference.... if he is, then the
> transfer from *1 would work much the same as it does now except you'd
> use the result of the db lookup as the conference number... if he's not
> a member of an existing conference, then you could generate the uuid
> like Anthony said before, then do a db insert for ${caller_id_number}
> and ${destination_number} to insert that newly created uuid and use it
> as the conference number.... one caveat that i see here is that the
> destination_number would have to be exactly the same as if that user
> were callling and it was his caller_id_number, otherwise your query will
> fail.
>
> you'll also need to "clean" the db when you hangup, which should be able
> to be accomplished with an execute_on_hangup that does a delete of the
> conf data for each user
>
> -Ray
>
> _______________________________________________
> Freeswitch-users mailing list
> Freeswitch-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>
>
--
View this message in context: http://www.nabble.com/dynamic-conference-tp21053181p21123756.html
Sent from the Freeswitch-users mailing list archive at Nabble.com.
More information about the FreeSWITCH-users
mailing list