The dial string of chan_misdn got more complex, because we added more features, so the generic dial string looks like:
mISDN/<port>|g:<group>/<extension>[/<OPTIONSSTRING>] The Optionsstring looks Like: :<optchar1><OptParam1>:<optchar2><OptParam2> the ":" character is the delimiter. The available Optchars are: d - Send display text on called phone, text is the optparam n - don't detect dtmf tones on called channel h - make digital outgoing call c - make crypted outgoing call, param is keyindex e - perform echo cancellation on this channel, takes taps as arguments (32,64,128,256) s - send Non Inband DTMF as inband vr - rxgain control vt - txgain control
chan_misdn registers a new dial plan application "misdn_set_opt" when loaded. This application takes the Optionsstring as argument. The Syntax is:
misdn_set_opt(<OPTIONSSTRING>)
When you set options in the dialstring, the options are set in the external channel. When you set options with misdn_set_opt, they are set in the current incoming channel. So if you like to use static encryption, the scenario looks as follows:
Phone1 --> * Box 1 --> PSTN_TE PSTN_TE --> * Box 2 --> Phone2
The Encryption must be done on the PSTN sides, so the dialplan on the boxes are:
* Box 1: exten => _${CRYPT_PREFIX}X.,1,Dial(mISDN/g:outbound/:c1) * Box 2: exten => ${CRYPT_MSN},1,misdn_set_opt(:c1) exten => ${CRYPT_MSN},2,dial(${PHONE2})