Hey,<div><br></div><div>Looks like I found a solution to this one as well, and turns out ESL is MUCH more powerful then I thought, I've updated the wiki page for filters if anyone wants to have a peek <a href="http://wiki.freeswitch.org/wiki/Mod_event_socket#filter">http://wiki.freeswitch.org/wiki/Mod_event_socket#filter</a></div>
<div><br></div><div>Short answer, <span style="font-family:monospace;font-size:10px;line-height:19.046875px;background-color:rgb(249,249,249)">filter Conference-Unique-ID $ConfUUID</span><br><br><div class="gmail_quote">
On Wed, Feb 13, 2013 at 3:32 PM, <span dir="ltr"><<a href="mailto:freeswitch-users-request@lists.freeswitch.org" target="_blank">freeswitch-users-request@lists.freeswitch.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">---------- Forwarded message ----------<br>From: Usama Zaidi <<a href="mailto:itsusama@gmail.com">itsusama@gmail.com</a>><br>
To: <a href="mailto:freeswitch-users@lists.freeswitch.org">freeswitch-users@lists.freeswitch.org</a><br>Cc: <br>Date: Wed, 13 Feb 2013 15:24:58 +0500<br>Subject: [Freeswitch-users] ESL Mod_Conference Observations<br>Hi,<div>
<br></div><div>Just wanted to know why don't I get any events on start/stop speaking conference joins/leaves if I do something like this:</div><div><br></div><div><div>$con->events("plain","all");</div>
<div>$con->events("plain","CUSTOM conference::maintenance");</div><div>$con->sendRecv("filter Unique-ID $confUUID");</div><div><br></div><div>Instead I've to do something like this:</div>
<div><br></div><div><div>$con->events("plain","all");</div><div>$con->events("plain","CUSTOM conference::maintenance");</div><div>$con->sendRecv("filter Unique-ID $confmember1");</div>
</div><div>$con->sendRecv("filter Unique-ID $confmember2");</div><div>$con->sendRecv("filter Unique-ID $confmember3");</div><div>.</div><div>.</div><div>.</div><div><br></div><div>Which is useless in case you want to check if a user is entering/leaving a particular conference in a single inbound ESL script...</div>
<div><br></div><div>What I'm doing instead now is something on these lines:</div><div><br></div><div><div>$con->events("plain","all");</div><div>$con->sendRecv("filter Unique-ID $CONFNAME");</div>
</div><div>i//psuedocode</div><div>if event equals PRESENCE_IN and presence-call-direction equals inbound then</div><div>{</div><div> execute API command conference list confname</div><div> parse uuid from members add a filter update the hashtable for existing confmembers</div>
<div>}</div><div>//once we have the uuid filter added we'll get to know if that user leaves, so the logic for removing the filter is straight forward</div><div><div>if event equals CUSTOM and subtype is CONFERENCE::MAINTANANCE</div>
<div>{</div><div> if event action=del-member remove filter for UUID</div><div>}</div></div><div><br></div><div>I don't get ANY event if I'm filtering on conference UUID... I think that needs to be fixed, because its mod_conference which is throwing all those events.</div>
<div><br></div><div>Regards.</div><div><br></div>-- <br>I'd love to change the world, but they wont gimme the source code to it</div></blockquote></div></div>