ChanCapiChat

Telephone conferences aka 'meetme'

New chan-capi provides a chat mechanism to create telephone conferences without using the CPU for mixing the voice data.

The DSPs onboard the ISDN cards will be used instead.

It works with CAPI channels and non-CAPI channels like SIP, IAX, ...

Requirements

If you want to use this feature, you need:

* Dialogic DIVA Server card(s) of at least revision 2.

* Melware V3 divas driver or new Dialogic package.

Command usage

The command to put a caller into a ''chatroom'' is

exten => s,1,capicommand(chat|<roomname>|<options>|<controller>)

    • <roomname> is just a string. If this name is yet unused, a new room with that name will be created. If the string matches with another one, the caller is placed in that room.

    • <options> is currently unused: there are no options yet.

    • <controller> here you can specify which CAPI controller(s) should be used for virtual channels which are needed for non-CAPI channels. The default is '1', but you should provide all controllers (DIVA adapters) to have full resources. E.g. if you have a 4BRI, use "1-4". Or with 2 4BRI: "1-8". If there are non-DIVA controllers : "1-4,6,8". If more than one controller is specified as parameter, chat will use the first controller with lowest count of virtual channels.

Codec

Currently with chan-capi the DIVA cards only accept aLaw or uLaw (depends on your ISDN line/country). So any other setting of a SIP/IAX/... connection will be changed when entering the chat. So non alaw/ulaw connections will use the transcodec mechanism of Asterisk, just like it would be if you have a normal CAPI connection with your SIP-phone.

The DIVA cards (currently new 2PRI/4PRI only) could also do the codec, but this is another software interface chan-capi would need to use and is not implemented yet.

How the DIVA cards do that

The voice stream of a CAPI channel will be mixed with the other channels using the the DSPs without chan-capi/Asterisk interaction on the card.[[BR]]

For non-CAPI channels, a virtual CAPI channels is created (called NULL-PLCI). This channel is acting like a normal CAPI channel, but

    • without a real B-channel.

    • no further DSP resources (no additional echo-cancel, no DTMF detection), which not neccessary actually.

The voice stream of a non-CAPI channel will be sent to the DSP and mixed with the other channels in the specified chat-room.

Limits

    • No limit in the amount of chat-rooms.

    • The amount of CAPI channels of course is the amount of available ports/B-channels.

    • Per controller, 4 additional virtual channels can be used.

    • Example:

    • BRI : 2 CAPI members + 4 non-CAPI members.

    • 4BRI : 8 CAPI members + 16 non-CAPI members as a summary of one or more rooms. (If you have specified all controllers in the chat command)

If there are no more NULL-PLCIs available, the chat-command will end after about 1 second and the log says: "Out of PLCIs".

The virtual CAPI channels (NULL-PLCI for non-CAPI connections) do not affect the real CAPI channels in any way.