<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2658.2">
<TITLE>Proposed changes to implementation of MeetMe conferences</TITLE>
</HEAD>
<BODY>

<P><FONT SIZE=2>As part of Aculab's work on a channel driver for Asterisk we have been looking at how best to make use of the DSP hardware resources on our Prosody hardware.</FONT></P>

<P><FONT SIZE=2>One feature we already have good API support for is conferencing. Currently MeetMe is implemented by making direct ioctl calls to the Zap channel driver. For native Zap calls, this works perfectly well, but for any other channel technology pseudo Zap channels are created and aggregated by the Zap driver. To make use of Aculab (and potentially other channel technology) hardware it would be necessary to hide the ioctl calls behind a conference API.</FONT></P>

<P><FONT SIZE=2>I still need to flesh out detailed scenarios for different combinations of channels, but it seems, on the face of it, to be a clean abstraction. Something along these lines:</FONT></P>

<P><FONT SIZE=2>Probable API calls and parameters:</FONT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2>*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; create conference channel with announce and/or monitor capability</FONT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2>*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; add channel to conference channel with talk and/or listen capability</FONT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2>*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; remove channel from the conference channel</FONT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2>*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; destroy a conference channel, removing any remaining member channels</FONT>
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <FONT SIZE=2>*&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; change a participant talk capability</FONT>
</P>

<P><FONT SIZE=2>Essentially, the aim would be to allow multiple conference participants on the same technology to be aggregated into a &quot;super-conference&quot; by that technology, if supported, and thereby offload some of the processing required to the technology hardware.</FONT></P>

<P><FONT SIZE=2>Comments and suggestions will be much appreciated :)</FONT>
</P>

<P><FONT SIZE=2>Trevor Raynsford</FONT>
<BR><FONT SIZE=2>Software Engineer</FONT>
<BR><FONT SIZE=2>Aculab</FONT>
<BR><FONT SIZE=2>Tel: +44 (0)1908-273800</FONT>
<BR><FONT SIZE=2>Fax: +44 (0)1908-273801</FONT>
<BR><FONT SIZE=2>Email: <A HREF="mailto:trevor.raynsford@aculab.com">mailto:trevor.raynsford@aculab.com</A></FONT>
<BR><FONT SIZE=2>Website: <A HREF="http://www.aculab.com/" TARGET="_blank">http://www.aculab.com/</A> </FONT>
</P>
<BR>

</BODY>
</HTML>