Auto-provisioning with Asterisk and ST2030 Technicolor/Thomson phones

An introduction to the ST2030 The ST2030 is one of the few SIP phones distributed by Thomson (now changed name to Technicolor). In fact there are only 2 models: the ST2020, and the ST2030, and also a new one, the TB30, which is the successor to the ST2030. The ST2030 is supposed to have an End-of-Life set to the end of this year (2010), but I read that its EOL has been extended to the end of 2012. In my personal experience, I think the ST2030 has the best price/functionalities/quality ratio. It has features like: PoE (Power over Ethernet). Headphone plug with a button on the phone to pickup with the headphone (or if you have a compatible headphone, pickup directly with a button on the headphone). XML based Directory support, that you can interface with a remote HTTP server. 4 differents lines/profiles (but not at the same time). BLF ...(Read More)

Asterisk cirpack problem with Free and

If you configured your Asterisk/FreeSWITCH server to talk to your (french Free ISP provider), you’ll see in the logs the following warning message: [Feb 12 09:29:06] WARNING[9228]: chan_sip.c:6624 determine_firstline_parts: Bad request protocol Packet This is not really a problem, but an annoyance, as it fills up your logs. This is a known problem for more than years, but has never been corrected (neither by Asterisk nor by Cirpack devs). The usual correction was to add the following line to your startup scripts (/etc/rc.local on Debian for example): iptables -A INPUT -p udp -m udp --dport 5060 -m string --string "Cirpack KeepAlive Packet" -j DROP But the syntax has changed in iptables, and you’ll get the error: iptables v1.3.6: STRING match: You must specify `--algo' so, just add one of the 2 available algorithms (bm and kmp): iptables -A INPUT -p udp -m udp --dport 5060 -m string --string "Cirpack ...(Read More)

How to dial a number using Asterisk and Python

I didn’t find any example in Python on how to Dial a number from an Asterisk server and link it to another channel. So here’s a quick code to do it. You just need to have a manager defined in your /etc/asterisk/manager.conf defined. [crayon-5743ec28046e3162806584/]