[Workaround] MeetMe 'L' and 'S' ignore 'C' option

Using MeetMe with options ‘S’ or ‘L’, in conjunction with ‘C’ fails. When the time-limit is up (L or S) the user’s channel is given a soft hangup instead of following the context as expected. If the user is kicked using MeetMeAdmin or MeetMeChannelAdmin, it does follow context as expected.

Meetme ‘L’ option does not state that line will be hungup - though it does not state that it will not be hungup either:

Meetme ‘S’ option does not state that the line will be hungup, it states the user will be ‘kicked’ from the conference. This would create an assumption that ‘C’ flag would be utilised and the context followed, however this is not the case:

Is this intended behaviour (exactly as Dial works), or is the ignoring of ‘C’ in conjunction with ‘L’ or ‘S’ a bug which needs to be reported?

EDIT: The above explanation was tested with Asterisk, dahdi 2.2.1, libpri with a Digium TE220 card on Debian 5.0.4 (x86)

Until this behaviour is changed, the continuing/non-hangup alternatives to MeetMe ‘L’ and ‘S’ options I have found are:

[ul]1.) Use an AGI background script with MeetMe option “b”. Example script use: Wait(${CONFTIMELIMIT}) and then MeetMeChannelAdmin (or MeetMeAdmin?) to kick the channels associated with the MeetMe conference.

2.) Use Set(TIMEOUT(absolute)=$[${CURRENTCALLTIME} + ${CONFTIMELIMIT}]), once the absolute time has been reached for the given channel, user of said channel will be transferred to the ‘T’ extension and follow a context from there.[/ul]

Options which end in Hangup and do not follow context:

[ul]1.) Limit the scheduled conference via realtime to have an ‘endtime’ associated with the total length of conference time required.

2.) Use a Marked user, when last marked user leaves all users are removed from conference.

3.) MeetMe with ‘L’ option, MeetMe with ‘L’ and ‘C’ options together

4.) MeetMe with ‘S’ option, and MeetMe with ‘S’ and ‘C’ options together[/ul]