A lonely conference timeout interval can now be set for a channel assistant.

git-svn-id: http://voip.null.ro/svn/yate@4302 acf43c95-373e-0410-b603-e72c3f656dc1
This commit is contained in:
marian 2011-04-15 15:03:30 +00:00
parent 4ddfcbf943
commit 78d63eb8fd
2 changed files with 12 additions and 1 deletions

View File

@ -48,6 +48,13 @@
; Defaults to yes
;dropconfhangup=yes
; lonelytimeout: integer: The interval (in milliseconds) a lonely user is allowed to
; remain in conference
; This parameter can be overridden from routing by a 'pbxlonelytimeout' parameter
; This parameter is applied on reload
; Defaults to 0 (stay until hangup)
;lonelytimeout=0
; Every other section defines an operation to trigger
;[operation]

View File

@ -153,6 +153,9 @@ static String s_lang;
// Drop conference on hangup
static bool s_dropConfHangup = true;
// Conference lonely timeout
static int s_lonely = 0;
// on-hangup transfer list
static ObjList s_transList;
static Mutex s_transMutex(false,"PBXAssist::transfer");
@ -252,6 +255,7 @@ void PBXList::initialize()
s_error = s_cfg.getValue("general","error","tone/outoforder");
s_lang = s_cfg.getValue("general","lang");
s_dropConfHangup = s_cfg.getBoolValue("general","dropconfhangup",true);
s_lonely = s_cfg.getIntValue("general","lonelytimeout");
unlock();
if (s_cfg.getBoolValue("general","enabled",false))
ChanAssistList::initialize();
@ -810,7 +814,7 @@ bool PBXAssist::operConference(Message& msg)
Message m("call.conference");
m.addParam("id",id());
m.userData(c);
m.addParam("lonely","yes");
m.addParam("lonely",m_keep.getValue("pbxlonelytimeout",String(s_lonely)));
if (room)
m.addParam("room",room);
m.addParam("pbxstate",state());