[Asterisk-Users] UNISTIM channel driver available

Carl Sempla cas at accld.com
Mon Mar 7 21:25:57 MST 2005


Hello,

Cedric Hans has released an UNISTIM channel driver for asterisk (stable).
You can download it at :
http://mlkj.net/asterisk/chan_unistim-0.9.2.tar.bz2

Copy of README :
This is a channel driver for Unistim protocol. You can use at least Nortel
i2004 phones with it.
Only few features are supported : Send/Receive CallerID, Redial, SoftKeys,
SendText(), Music On Hold, Message Waiting Indication (MWI).


Install :
- This version works on asterisk stable (tested with 1.0.5 and 1.0.6)
- tar xvjf chan_unistim-0.9.2.tar.bz2 && cd chan_unistim-0.9.2
- make && make install && make config (should work with a default install of
asterisk)
- edit /etc/asterisk/unistim.conf
- start asterisk

How to configure i2004 phones :
- Power on the phone
- Wait for message "Nortel Networks"
- Press quickly the four buttons just below the LCD screen, from left to
right
- If you see "Locating server", power off and try again
- DHCP : 0
- SET IP : a free ip of your network
- NETMSK / DEF GW : netmask and default gateway
- S1 IP : ip of the asterisk server
- S1 PORT : 5000
- S1 ACTION : 1
- S1 RETRY COUNT : 10
- S2 : same as S1

Issues :
- As always, NAT can be tricky. If a phone is behind a NAT, you should port
forward UDP 5000 (or change [general] port= in unistim.conf) and UDP 10000
(or change [yourphone] rtp_port=)
- Only one phone per public IP (multiple phones behind the same NAT don't
work). Setup a VPN if you want to do that.
- If asterisk is behind a NAT, you must set [general] bindaddr= with your
public IP. If you don't do that or the bindaddr is invalid (or no longer
valid, eg dynamic IP), phones should be able to display messages but will be
unable to send/receive RTP packets (no sound)
- Don't forget : this work is based entirely on a reverse engineering, so
you may encounter compatibility issues. At this time, I know three ways to
establish a RTP session. You can modify [yourphone] rtp_method= with 0, 1 or
2. 0 is the default method, should work. 1 can be used on new firmware
(black i2004) and 2 on old violet i2004.
- If you have difficulties, try unistim debug and set verbose 3 on the
asterisk CLI. For extra debug, uncomment #define DUMP_PACKET 1 and recompile
chan_unistim.

TODO :
- bridging. Beware, it's a dangerous feature with the picky RTP stack of
i2004 phones. RTP peer must send packets with a precise timing (every 20ms,
160 bytes payload for G711).
- three way calling / multiple lines / transfer
- call history
- better codec negociation : if you enable g723/g729, although it works with
asterisk in pass-thru, it's not great.
- reload config




More information about the asterisk-users mailing list