added framework docs and patch to allow for raising and lowering of meetme participants volume level
git-svn-id: svn://192.168.202.10@328 3d104415-ff17-0410-8863-d5cf3c621b8a
This commit is contained in:
@@ -80,6 +80,11 @@ cd ../asterisk-1.2.12.1
|
||||
wget http://www.eflo.net/files/channel.c-42600.patch
|
||||
patch -p1 < ./channel.c-42600.patch
|
||||
- File to patch: channel.c
|
||||
*OPTIONAL*(1.2 tree) apply the meetme volume control patch
|
||||
wget http://www.eflo.net/files/meetmeadmin_volume_control.patch
|
||||
patch -p1 < ./meetmeadmin_volume_control.patch
|
||||
- File to patch: app_meetme.c.c
|
||||
|
||||
make clean
|
||||
make
|
||||
make install
|
||||
|
||||
@@ -808,6 +808,10 @@ with the following patch:
|
||||
- wget http://www.eflo.net/files/channel.c-42600.patch
|
||||
- patch -p1 < ./channel.c-42600.patch
|
||||
- File to patch: channel.c
|
||||
-*OPTIONAL*(1.2 tree) apply the meetme volume control patch
|
||||
- wget http://www.eflo.net/files/meetmeadmin_volume_control.patch
|
||||
- patch -p1 < ./meetmeadmin_volume_control.patch
|
||||
- File to patch: app_meetme.c.c
|
||||
|
||||
- make clean
|
||||
- make
|
||||
@@ -1950,6 +1954,16 @@ exten => 8600029,1,Meetme,8600029|q
|
||||
entries(this is a pure addition, nothing is being modified):
|
||||
NOTE: see below these entries for app_conference instructions is used
|
||||
######------ START extensions.conf changes for VD conf ------######
|
||||
exten => _X48600XXX,1,MeetMeAdmin(${EXTEN:2},T,${EXTEN:0:1})
|
||||
exten => _X48600XXX,2,MeetMeAdmin(${EXTEN:2},U,${EXTEN:0:1})
|
||||
exten => _X48600XXX,3,Hangup
|
||||
|
||||
exten => _X38600XXX,1,MeetMeAdmin(${EXTEN:2},t,${EXTEN:0:1})
|
||||
exten => _X38600XXX,2,MeetMeAdmin(${EXTEN:2},u,${EXTEN:0:1})
|
||||
exten => _X38600XXX,3,Hangup
|
||||
|
||||
exten => 8300,1,Hangup
|
||||
|
||||
exten => 8600051,1,Meetme,8600051
|
||||
exten => 8600052,1,Meetme,8600052
|
||||
exten => 8600053,1,Meetme,8600053
|
||||
|
||||
@@ -259,6 +259,16 @@ exten => 8600027,1,Meetme,8600027|q
|
||||
exten => 8600028,1,Meetme,8600028|q
|
||||
exten => 8600029,1,Meetme,8600029|q
|
||||
|
||||
exten => _X48600XXX,1,MeetMeAdmin(${EXTEN:2},T,${EXTEN:0:1})
|
||||
exten => _X48600XXX,2,MeetMeAdmin(${EXTEN:2},U,${EXTEN:0:1})
|
||||
exten => _X48600XXX,3,Hangup
|
||||
|
||||
exten => _X38600XXX,1,MeetMeAdmin(${EXTEN:2},t,${EXTEN:0:1})
|
||||
exten => _X38600XXX,2,MeetMeAdmin(${EXTEN:2},u,${EXTEN:0:1})
|
||||
exten => _X38600XXX,3,Hangup
|
||||
|
||||
exten => 8300,1,Hangup
|
||||
|
||||
; VICIDIAL conferences
|
||||
exten => 8600051,1,Meetme,8600051
|
||||
exten => 8600052,1,Meetme,8600052
|
||||
|
||||
@@ -0,0 +1,180 @@
|
||||
--- app_meetme-orig.c 2006-10-04 12:00:55.000000000 -0400
|
||||
+++ app_meetme.c 2006-10-04 14:01:02.000000000 -0400
|
||||
@@ -121,6 +121,16 @@
|
||||
" 'M' -- Mute conference\n"
|
||||
" 'n' -- Unmute entire conference (except admin)\n"
|
||||
" 'N' -- Mute entire conference (except admin)\n"
|
||||
+" 'S' -- Raise entire conference speaking volume\n"
|
||||
+" 's' -- Lower entire conference speaking volume\n"
|
||||
+" 'V' -- Raise entire conference listening volume\n"
|
||||
+" 'v' -- Lower entire conference listening volume\n"
|
||||
+" 'T' -- Raise one user's talk volume\n"
|
||||
+" 't' -- Lower one user's talk volume\n"
|
||||
+" 'U' -- Raise one user's listen volume\n"
|
||||
+" 'u' -- Lower one user's listen volume\n"
|
||||
+" 'R' -- Reset all user's volume settings\n"
|
||||
+" 'r' -- Reset one user's volume settings\n"
|
||||
"";
|
||||
|
||||
#define CONFIG_FILE_NAME "meetme.conf"
|
||||
@@ -2095,13 +2105,12 @@
|
||||
break;
|
||||
case 75: /* K: kick all users*/
|
||||
user = cnf->firstuser;
|
||||
- while(user) {
|
||||
+ while (user) {
|
||||
user->adminflags |= ADMINFLAG_KICKME;
|
||||
- if (user->nextuser) {
|
||||
+ if (user->nextuser)
|
||||
user = user->nextuser;
|
||||
- } else {
|
||||
+ else
|
||||
break;
|
||||
- }
|
||||
}
|
||||
break;
|
||||
case 101: /* e: Eject last user*/
|
||||
@@ -2113,51 +2122,125 @@
|
||||
ast_log(LOG_NOTICE, "Not kicking last user, is an Admin!\n");
|
||||
break;
|
||||
case 77: /* M: Mute */
|
||||
- if (user) {
|
||||
+ if (user)
|
||||
user->adminflags |= ADMINFLAG_MUTED;
|
||||
- } else {
|
||||
+ else
|
||||
ast_log(LOG_NOTICE, "Specified User not found!\n");
|
||||
- }
|
||||
break;
|
||||
case 78: /* N: Mute all users */
|
||||
user = cnf->firstuser;
|
||||
- while(user) {
|
||||
+ while (user) {
|
||||
if (user && !(user->userflags & CONFFLAG_ADMIN))
|
||||
user->adminflags |= ADMINFLAG_MUTED;
|
||||
- if (user->nextuser) {
|
||||
+ if (user->nextuser)
|
||||
user = user->nextuser;
|
||||
- } else {
|
||||
+ else
|
||||
break;
|
||||
- }
|
||||
}
|
||||
break;
|
||||
case 109: /* m: Unmute */
|
||||
- if (user && (user->adminflags & ADMINFLAG_MUTED)) {
|
||||
+ if (user && (user->adminflags & ADMINFLAG_MUTED))
|
||||
user->adminflags ^= ADMINFLAG_MUTED;
|
||||
- } else {
|
||||
+ else
|
||||
ast_log(LOG_NOTICE, "Specified User not found or he muted himself!\n");
|
||||
- }
|
||||
break;
|
||||
case 110: /* n: Unmute all users */
|
||||
user = cnf->firstuser;
|
||||
- while(user) {
|
||||
- if (user && (user-> adminflags & ADMINFLAG_MUTED)) {
|
||||
+ while (user) {
|
||||
+ if (user && (user-> adminflags & ADMINFLAG_MUTED))
|
||||
user->adminflags ^= ADMINFLAG_MUTED;
|
||||
- }
|
||||
- if (user->nextuser) {
|
||||
+ if (user->nextuser)
|
||||
user = user->nextuser;
|
||||
- } else {
|
||||
+ else
|
||||
break;
|
||||
- }
|
||||
}
|
||||
break;
|
||||
case 107: /* k: Kick user */
|
||||
- if (user) {
|
||||
+ if (user)
|
||||
user->adminflags |= ADMINFLAG_KICKME;
|
||||
- } else {
|
||||
+ else
|
||||
ast_log(LOG_NOTICE, "Specified User not found!\n");
|
||||
+ break;
|
||||
+ case 118: /* v: Lower all users listen volume */
|
||||
+ user = cnf->firstuser;
|
||||
+ while(user) {
|
||||
+ tweak_listen_volume(user, VOL_DOWN);
|
||||
+ if (user->nextuser)
|
||||
+ user = user->nextuser;
|
||||
+ else
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 86: /* V: Raise all users listen volume */
|
||||
+ user = cnf->firstuser;
|
||||
+ while (user) {
|
||||
+ tweak_listen_volume(user, VOL_UP);
|
||||
+ if (user->nextuser)
|
||||
+ user = user->nextuser;
|
||||
+ else
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 115: /* s: Lower all users speaking volume */
|
||||
+ user = cnf->firstuser;
|
||||
+ while (user) {
|
||||
+ tweak_talk_volume(user, VOL_DOWN);
|
||||
+ if (user->nextuser)
|
||||
+ user = user->nextuser;
|
||||
+ else
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 83: /* S: Raise all users speaking volume */
|
||||
+ user = cnf->firstuser;
|
||||
+ while (user) {
|
||||
+ tweak_talk_volume(user, VOL_UP);
|
||||
+ if (user->nextuser)
|
||||
+ user = user->nextuser;
|
||||
+ else
|
||||
+ break;
|
||||
}
|
||||
break;
|
||||
+ case 82: /* R: Reset all volume levels */
|
||||
+ user = cnf->firstuser;
|
||||
+ while (user) {
|
||||
+ reset_volumes(user);
|
||||
+ if (user->nextuser)
|
||||
+ user = user->nextuser;
|
||||
+ else
|
||||
+ break;
|
||||
+ }
|
||||
+ break;
|
||||
+ case 114: /* r: Reset user's volume level */
|
||||
+ if (user)
|
||||
+ reset_volumes(user);
|
||||
+ else
|
||||
+ ast_log(LOG_NOTICE, "Specified User not found!");
|
||||
+ break;
|
||||
+ case 85: /* U: Raise user's listen volume */
|
||||
+ if (user)
|
||||
+ tweak_listen_volume(user, VOL_UP);
|
||||
+ else
|
||||
+ ast_log(LOG_NOTICE, "Specified User not found!");
|
||||
+ break;
|
||||
+ case 117: /* u: Lower user's listen volume */
|
||||
+ if (user)
|
||||
+ tweak_listen_volume(user, VOL_DOWN);
|
||||
+ else
|
||||
+ ast_log(LOG_NOTICE, "Specified User not found!");
|
||||
+ break;
|
||||
+ case 84: /* T: Raise user's talk volume */
|
||||
+ if (user)
|
||||
+ tweak_talk_volume(user, VOL_UP);
|
||||
+ else
|
||||
+ ast_log(LOG_NOTICE, "Specified User not found!");
|
||||
+ break;
|
||||
+ case 116: /* t: Lower user's talk volume */
|
||||
+ if (user)
|
||||
+ tweak_talk_volume(user, VOL_DOWN);
|
||||
+ else
|
||||
+ ast_log(LOG_NOTICE, "Specified User not found!");
|
||||
+ break;
|
||||
}
|
||||
} else {
|
||||
ast_log(LOG_NOTICE, "Conference Number not found\n");
|
||||
Reference in New Issue
Block a user