Andres has posted details of a release from Cedric Hans of a UNISTIM channel driver for Asterisk:
Cedric Hans has released an UNISTIM channel driver for asterisk (stable).
You can download it at :
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).
How to configure i2004 phones :
- 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
- 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
- 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.
- 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
- December 20, 2004: *-Users PA1688 Chipset IP Phones and ATA's
- October 21, 2004: Asterisk-Dev: New Channel Driver: chan_bluetooth
- May 11, 2005: *-Dev: New h.323 channel driver
- September 23, 2005: VoIP Magazine: Intel and Digium Jointly Develop Channel Driver
- October 27, 2005: *-Dev: Announcing chan_ss7, a GPLed SS7 channel driver
- February 7, 2006: Review of Xorcoms new USB channel bank
- August 22, 2007: AST-2007-020: Resource Exhaustion vulnerability in SIP channel driver
- June 3, 2008: Channel Event Logging (CEL) design goals and changes
- November 5, 2008: Implement ast_channel_search_locked to expensive per-notify channel walk in chan_sip
- March 11, 2009: AST-2009-002: Remote Crash Vulnerability in SIP channel driver
- September 17, 2009: Create a list of channel variables to be posted within AMI call events
- January 20, 2011: AST-2011-001: Stack buffer overflow in SIP channel driver
- November 23, 2012: New SIP channel driver project page
- April 10, 2013: AST-2013-003: Username disclosure in SIP channel driver