Bradley Brashier wrote: ...
Before I go further, I want to make sure I understand what you're proposing. What you're essentially saying is that when the command to kick someone is pressed the person should be transferred out of the conference, checked for moderator status, asked whom to kick (if so), and then let back in while the system kicks that person. The other commands would work similarly. Does this sound like a correct summary?
Absolutely what I am trying to do. ...
Followed by (I picked up the "kick" syntax from the wiki):
<action application="conference" data="$(conf-id) kick $(conf-user-id)"/>
This is a significant new fact for me. What you seem to be doing is calling the commands referenced in the conference api here http://wiki.freeswitch.org/wiki/Mod_conference#API_Reference by using application="conference" and then the data string as the second part of the command. Am I correct in the assumption that you can do this.
Bigger problem: the conf-user-id he enters has to be the member ID that FS chose for the user he's trying to kick. That number will make sense if you're following the system closely, but for someone who doesn't know FS internals, it will be impossible to know unless you broadcast it to him somehow. To my knowledge, there's no way to use any other identifier (like caller-id) to kick them with.
If my assumption about the use of the API above is correct, then couldn't I do something like <action application="set" data="member-list=${conference(${conf-id} list)}"/> <action application="execute_extension" data="do-kick"/> and the figure out a regular expression to get participant-id and caller-id out of the resultant string. Or is this not how its done? -- Alan Chandler http://www.chandlerfamily.org.uk