Bernhard Suttner schrieb:
Hi,
Did you try to hangup the session (not the peer session). This should freeswitch force to hangup all related channels (the session + the connected sessions).
BR, Bernhard
-----Ursprüngliche Nachricht----- Von: freeswitch-dev-bounces@lists.freeswitch.org [mailto:freeswitch-dev-bounces@lists.freeswitch.org] Im Auftrag von Achim Stamm Gesendet: Freitag, 1. Oktober 2010 18:02 An: freeswitch-dev@lists.freeswitch.org Betreff: [Freeswitch-dev] How to hangup bridged sessions
How to hangup bridged sessions
Hello,
i have following problem:
I used following code for brdiging my current session to multiple Voip Phones in a freeswitch thread (same as bgapi):
switch_ivr_originate(session, &peer_session, &cause, "user/60@192.168.1.50,user/61@192.168.1.50", timelimit, NULL, NULL, NULL, NULL, NULL, SOF_NONE,NULL) != SWITCH_STATUS_SUCCESS)
Both Phones with number 60 and 61 rings.
In a special case I need to force hangup both Phones (stop ringing). I use following code for hangup bridged sessions:
char * my_uuid = switch_core_session_get_uuid(session); char other_uuid[255]; switch_ivr_find_bridged_uuid(my_uuid, other_uuid,255 ); sessionNebenstelle = switch_core_session_locate(other_uuid); if (sessionNebenstelle) { channelNebenstelle = switch_core_session_get_channel(sessionNebenstelle); switch_channel_hangup(channelNebenstelle,SWITCH_CAUSE_NO_ANSWER); if (switch_core_session_private_event_count(sessionNebenstelle)) { switch_ivr_parse_all_events(sessionNebenstelle); } }
This Code works only for one phone, so Phone 61 stops ringing, but Phone 60 continue ringing.
It is possible, that i can hangup the other phone ?
Is there a better solution for cancel switch_ivr_originate (hangup all originating sessions ?)
Greetings
Achim Stamm
For my special case: I need my session alive for doing read and write frame in a while loop. After hanging up the peer Sessions. I do an answer (for my session) and enter the while loop. The "Connection" to another Session (also in a read and write frame while loop) is done by exchanging manually audio frames. Thanks for your question. -- Achim Stamm, Dipl.-Inform. (FH) Lyncker & Theis GmbH Wilhelmstr. 16 65185 Wiesbaden Germany Fon +49 611/9006951 Fax +49 611/9406125 Handelsregister: HRB 23156 Amtsgericht Wiesbaden Steuernummer: 04323897052 USt-IdNr.: DE255806399 Geschäftsführer: Filip Lyncker, Armin Theis