- change AGI to just query for the conference and have meetme executed in the dialplan. This allows us to handle more calls as the AGI ends right away.
- Put in dialplan entry (extensions.conf) in INSTALL text git-svn-id: http://bigbluebutton.googlecode.com/svn/trunk@1712 af16638f-c34d-0410-8cfa-b39d5352b314
This commit is contained in:
parent
847b9e7bce
commit
120750bd97
@ -9,3 +9,34 @@
|
||||
mysql> create database vo_prod;
|
||||
|
||||
mysql> grant all on vo_dev.* to 'vo'@'localhost' identified by 'secret';
|
||||
|
||||
|
||||
====
|
||||
Dialplan
|
||||
|
||||
[default]
|
||||
exten => s,1,Set(TRIES=1)
|
||||
exten => s,n,Goto(prompt,s,1)
|
||||
|
||||
[prompt]
|
||||
exten => s,1,Read(CONF_NUM,conf-getconfno,6,,3,10)
|
||||
exten => s,n,Set(CONF_LEN=${LEN(${CONF_NUM})})
|
||||
exten => s,n,GotoIf($[${CONF_LEN} = 4]?vo,${CONF_NUM},1:others,${CONF_NUM},1)
|
||||
|
||||
[vo]
|
||||
exten => _XXXX,1,Agi(agi://192.168.0.199/findConference?conference=${EXTEN})
|
||||
exten => _XXXX,n,GotoIf($[${EXTEN} = ${CONFERENCE_FOUND}]?valid:invalid)
|
||||
exten => _XXXX,n(valid),Playback(conf-placeintoconf)
|
||||
exten => _XXXX,n,MeetMe(${CONFERENCE_FOUND},dMq)
|
||||
exten => _XXXX,n(invalid),Goto(handle-invalid-conference,s,1)
|
||||
|
||||
[others]
|
||||
exten => _XXXX.,1,MeetMe(${EXTEN},cMqsT)
|
||||
|
||||
[handle-invalid-conference]
|
||||
exten => s,1,Playback(conf-invalid)
|
||||
exten => s,n,GotoIf($[${TRIES} < 3]?try-again:do-not-try-again)
|
||||
exten => s,n(try-again),Set(TRIES=$[${TRIES} + 1])
|
||||
exten => s,n,Goto(prompt,s,1)
|
||||
exten => s,n(do-not-try-again),Hangup
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
// "file:${userHome}/.grails/${appName}-config.properties",
|
||||
// "file:${userHome}/.grails/${appName}-config.groovy"]
|
||||
|
||||
grails.config.locations = [ "classpath:vo.properties", "file:${userHome}/.volunteerottawa/vo.properties"]
|
||||
grails.config.locations = [ "classpath:vo.properties", "file:${userHome}/.volunteerottawa/vo2.properties"]
|
||||
|
||||
// if(System.properties["${appName}.config.location"]) {
|
||||
// grails.config.locations << "file:" + System.properties["${appName}.config.location"]
|
||||
|
@ -9,7 +9,7 @@ class ConferenceController extends BaseController {
|
||||
def allowedMethods = [delete:'POST', save:'POST', update:'POST']
|
||||
|
||||
def list = {
|
||||
if(!params.max) params.max = 10
|
||||
if(!params.max) params.max = 50
|
||||
def email = session.email.toString()
|
||||
if (params.past)
|
||||
return [ conferenceList: Conference.findAllByEmailAndStartDateTimeLessThan(email, new Date())]
|
||||
@ -93,7 +93,7 @@ class ConferenceController extends BaseController {
|
||||
if (highestConfId) {
|
||||
nextConfId = highestConfId[0].conferenceNumber + 1
|
||||
} else {
|
||||
nextConfId = 8000 + 1
|
||||
nextConfId = 6000 + 1
|
||||
}
|
||||
conference.conferenceNumber = nextConfId
|
||||
conference.email = session.email
|
||||
|
@ -35,12 +35,11 @@ class FindConferenceAgi implements AgiScript {
|
||||
channel.setVariable("CONFERENCE_FOUND", number)
|
||||
} else {
|
||||
println ("CONFERENCE_FOUND=")
|
||||
channel.setVariable("CONFERENCE_FOUND", '')
|
||||
channel.setVariable("CONFERENCE_FOUND", "0")
|
||||
}
|
||||
} else {
|
||||
println ("CONFERENCE_INVALID=TRUE")
|
||||
channel.setVariable("CONFERENCE_FOUND", '')
|
||||
channel.setVariable("CONFERENCE_FOUND", "0")
|
||||
}
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user