Re: [Freeswitch-dev] mod_conference - User Classes

2010-06-09 Thread Bret McDanel
On Wed, 2010-06-09 at 16:30 -0500, David Swardstrom wrote:
> Some things like Mute and Deaf are dynamic and I want to control them 
> with application code (JavaScript in this case).
> 
> In regards to using multiple profiles & conference controls for any one 
> conference.
> The mod_conference Wiki says it is not possible/practical. 
> What would happen if the same conference name was used with two separate 
> profiles?
> Does it use the profile to set up the member or does it use the profile
> to affect the entire conference?
> 
> The comments by Bret McDanel would seem to indicate that the later 
> effect occurs, when a profile is specified for a conference, it affects
> the entire conference.
> 

my comments were suggesting a patch idea that would go with what the OP
discussed.  I may not  have been clear (it seems I wasnt) so let me
rephrase it.

If the profiles were made so that they affected little globally for that
conference and instead only affected the participant, then dtmf events,
sounds, and other things could be set up on a per member basis.  This
would mean that any flags that you wanted, such as default mute, would
only affect that individual user and not everyone who enters after the
first person.  It means that you could have a front end that would take
"pins" (as used by many of the conference systems) and assign people to
conferences with different profiles such as moderator, speaker and
listener with (probably) the biggest differences being the dtmf bindings
and the flags set.

This was suggested as an alternative to another flag, since it is likely
that you can accomplish everything without a new flag if this is done
(there may be some cases that this does not work, but that is the point
of discussing things so they can be identified and resolved).

The current method requires that you toggle the flags after entry to get
a variable set of defaults (which usually would be mute, but some people
may want others).  This means event socket or a lua (event listener)
script has to be written to manage the flipping of flags on a per user
basis where the ability to make different profiles would take care of
all that in one go.


> But I still would like the capability I have proposed which would 
> have the mod_conference code do the loop over the members to do
> mute and unmute when I want to mute/unmute a class.
> 

I had considered making a listener queue, which could be done either in
lua or perl (what I was playing with at one point, in contrib/trixter
somewhere there is a perl script that I think does something similar -
framework only).  I might make a lua one at some point if I get bored.

Basically the queue works where any 'listener' class user can press a
given dtmf key to signal they want to ask a question.  The speaker or
moderator can hit a given dtmf key that will unmute listeners one at a
time from a queue for that conference.  When they hit the key again that
person is muted and the next is unmuted until the queue is exhausted.  

In this way you can have a large group of people listen to a lecture or
similar, then in an orderly fashion ask questions similar to a Q&A
microphone at a lecture hall.  Interestingly it would also work for a
"radio call in" type program as well which could work for some of the
many online webcasts that people do (like justin.tv and many others).  

This should not be that difficult to do in lua, everything needed
already exists, but I get distracted by shiny spinning objects easily so
I will have to be less distracted at some point.



___
FreeSWITCH-dev mailing list
[email protected]
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org


Re: [Freeswitch-dev] mod_conference - User Classes

2010-06-09 Thread Anthony Minessale
aww teaser...
I want to hear about the suprises!

On Tue, Jun 8, 2010 at 10:25 AM, David Swardstrom <
[email protected]> wrote:

> Video is a separate topic. Would like to get into it someday.
>
> I refer you to the following example of a conference.
> This is the type of conference capability I am replicating to FreeSwitch.
> http://www.conferencecall1.com
> This type of conference requires an IVR front end to determine the
> room number and Host identifier. It also requires additional IVR
> capability to handle the menu enabled by a menu key.
> One of the features of this conference type is the ability to
> mute everyone who did not login as a host.
>
> I have used several different conference systems and have been working with
> the RemoteLink conference capabilities for over a year. Recently I spent
> some time looking at a outside "free" conferencing capability.
> I really have several primary goals:
> * Simple conferencing,
> * Replicate RemoteLink conferencing,
> * Provide a configurable system that can do even more sophisticated things.
>
> In conference types, there could be the capability of having more
> than two classes of Conferees. I have come up with 5 that seem to
> fit the range of capabilities desired.
> * Classes whose members are always allowed to speak.
>  Host/Moderator - Owner of the conference.
>  Assistant - Someone one who can control the conference (not owner).
>  Speaker - Think of this as a panel or a series of speakers.
> * Class of conferees that can be muted or unmuted by host/assistant
> control.
>  Guest
> * Class of conferees that are never allowed to speak
>  Participant
>
> I spent some more time looking over the mod_conference code and think
> that I would like to add two flags:
> * guest
> * listener
> At this time I do not see the need to have mod_conference track the
> difference between the 3 classes of speakers.
>
> Any API that uses “CONF_API_SUB_MEMBER_TARGET” is a potential
> user of these flags. For example.
> > To allow the capability to mute/unmute all guests.
> * mute  mute <[member_id|all|last|guest]>
> * unmute  mute <[member_id|all|last|guest]>
> > To allow the capability to deaf/undef all guests and listeners.
> * deaf  mute <[member_id|all|last|guest|listener]>
> * undeaf  mute <[member_id|all|last|guest|listener]>
> > To kick off guests or listeners only leaving the speakers:
> * kick  mute <[member_id|all|last|guest|listener]>
>
> Note: I have found some other surprises in the code that I will address
> some other time.
>
> Regards, David Swardstrom
> (profile)http://wiki.freeswitch.org/wiki/User:Dswardstrom
>
> ___
> FreeSWITCH-dev mailing list
> [email protected]
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
> http://www.freeswitch.org
>



-- 
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:[email protected] 
GTALK/JABBER/PAYPAL:[email protected]
IRC: irc.freenode.net #freeswitch

FreeSWITCH Developer Conference
sip:[email protected] 
googletalk:[email protected]
pstn:+19193869900
___
FreeSWITCH-dev mailing list
[email protected]
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org


Re: [Freeswitch-dev] mod_conference - User Classes

2010-06-09 Thread David Swardstrom
Some things like Mute and Deaf are dynamic and I want to control them 
with application code (JavaScript in this case).

In regards to using multiple profiles & conference controls for any one 
conference.
The mod_conference Wiki says it is not possible/practical. 
What would happen if the same conference name was used with two separate 
profiles?
Does it use the profile to set up the member or does it use the profile
to affect the entire conference?

The comments by Bret McDanel would seem to indicate that the later 
effect occurs, when a profile is specified for a conference, it affects
the entire conference.

Sometimes you have to go by the axiom "The devil is in the details."
I have not looked at mod_conference.c.
In this case, I would like to check to see what the code is doing.

And: Yes, I could use the more multiple profile/control capability.

But I still would like the capability I have proposed which would 
have the mod_conference code do the loop over the members to do
mute and unmute when I want to mute/unmute a class.

Regards,
David Swardstrom
(profile)http://wiki.freeswitch.org/wiki/User:Dswardstrom

___
FreeSWITCH-dev mailing list
[email protected]
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org


Re: [Freeswitch-dev] mod_conference - User Classes

2010-06-09 Thread Bret McDanel
On Mon, 2010-06-07 at 14:36 -0500, David Swardstrom wrote:
> One feature that many conferences have is classes of users. There is the 
> Host/Moderator, speakers, and Guests/participants. In such conferences, the 
> Host may have the ability to Mute all non-speaking Conferees. Currently this 
> requires a separate flag for each user indicating the user class. To toggle 
> conference level mute, the application will need to get a conference list and 
> run through it. For each conferee in the list, the current mute status and 
> user class must be determined. 
> 
> I would like to propose introducing a new member flag: speaker. 
> This indicates that the member is a speaker and should not be automatically 
> muted. This would be provided as a “speaker” flag as part of the status on a 
> list.
> 

would it not be better to have a profile set for each member instead of
for the conference as a whole?  This could mean that you can have some
muted, some not, some with extra dtmf events some with less, etc.  One
thing that I ran into was if you set sounds, dtmf events, etc its for
everyone and if you change it for the 2nd person entering you lose that.

In this way it would allow you to use  different pins for a moderator,
speaker and listener like some other conferences I have seen elsewhere.




___
FreeSWITCH-dev mailing list
[email protected]
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org


Re: [Freeswitch-dev] mod_conference - User Classes

2010-06-07 Thread Fowler, Peter (Peter)
Would the speaker's video always be presented even if the speaker is not the 
loudest? Just not entirely clear on the proposed
semantics of "speaker". Would it be used in lecture/presentation style 
conferences?

Peter


From: Anthony Minessale [mailto:[email protected]]
Sent: Monday, June 07, 2010 3:48 PM
To: [email protected]
Subject: Re: [Freeswitch-dev] mod_conference - User Classes

sounds useful enough, lets see how you do.


On Mon, Jun 7, 2010 at 2:36 PM, David Swardstrom 
mailto:[email protected]>> wrote:
One feature that many conferences have is classes of users. There is the 
Host/Moderator, speakers, and Guests/participants. In such conferences, the 
Host may have the ability to Mute all non-speaking Conferees. Currently this 
requires a separate flag for each user indicating the user class. To toggle 
conference level mute, the application will need to get a conference list and 
run through it. For each conferee in the list, the current mute status and user 
class must be determined.

I would like to propose introducing a new member flag: speaker.
This indicates that the member is a speaker and should not be automatically 
muted. This would be provided as a "speaker" flag as part of the status on a 
list.

A new set of Conference APIs would be also be provided: mute & unmute at the 
conference level.
When issued, any member that does not have a moderator or speaker flag set 
would be muted or unmuted.

If the conference is "guest muted", the first line of the list API response 
would indicate this a "muted" similar to the locked indicator currently 
provided.

If this seems like a reasonable proposal, I would take a stab at modifying
mod_conference and testing it and then submit it via a Jira request.

Regards,
Paul David Swardstrom


___
FreeSWITCH-dev mailing list
[email protected]<mailto:[email protected]>
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org



--
Anthony Minessale II

FreeSWITCH http://www.freeswitch.org/
ClueCon http://www.cluecon.com/
Twitter: http://twitter.com/FreeSWITCH_wire

AIM: anthm
MSN:[email protected]<mailto:msn%[email protected]>
GTALK/JABBER/PAYPAL:[email protected]<mailto:paypal%[email protected]>
IRC: irc.freenode.net<http://irc.freenode.net> #freeswitch

FreeSWITCH Developer Conference
sip:[email protected]<mailto:sip%[email protected]>
googletalk:[email protected]<mailto:googletalk%3aconf%[email protected]>
pstn:+19193869900
___
FreeSWITCH-dev mailing list
[email protected]
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
http://www.freeswitch.org