<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Chesty&#039;s Blog &#187; FreeSWITCH</title>
	<atom:link href="http://chesterton.id.au/blog/category/freeswitch/feed/" rel="self" type="application/rss+xml" />
	<link>http://chesterton.id.au/blog</link>
	<description>Press Belly Button to Begin</description>
	<lastBuildDate>Sat, 02 Apr 2011 01:24:11 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Latest FreeSWITCH, PennyTel and Billion 5200N development</title>
		<link>http://chesterton.id.au/blog/2009/11/28/latest-freeswitch-pennytel-and-billion-5200n-development/</link>
		<comments>http://chesterton.id.au/blog/2009/11/28/latest-freeswitch-pennytel-and-billion-5200n-development/#comments</comments>
		<pubDate>Sat, 28 Nov 2009 07:27:56 +0000</pubDate>
		<dc:creator>chesty</dc:creator>
				<category><![CDATA[FreeSWITCH]]></category>
		<category><![CDATA[LA]]></category>
		<category><![CDATA[OSIA]]></category>
		<category><![CDATA[Slug]]></category>
		<category><![CDATA[ubuntu-au]]></category>
		<category><![CDATA[billion]]></category>
		<category><![CDATA[e65]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[voip]]></category>

		<guid isPermaLink="false">http://chesterton.id.au/blog/?p=63</guid>
		<description><![CDATA[<p><a href="http://chesterton.id.au/blog/2009/11/28/latest-freeswitch-pennytel-and-billion-5200n-development/">Latest FreeSWITCH, PennyTel and Billion 5200N development</a></p>
Latest FreeSWITCH, PennyTel and Billion 5200N development For a while now, I had not being using FreeSWITCH for my VoIP, but just logging into PennyTel directly with my Nokia E65. It worked OK, but the voice quality wasn&#8217;t as good as going through FreeSWITCH. A month ago my old ADSL router died, so I bought [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chesterton.id.au/blog/2009/11/28/latest-freeswitch-pennytel-and-billion-5200n-development/">Latest FreeSWITCH, PennyTel and Billion 5200N development</a></p>
<p>For a while now, I had not being using FreeSWITCH for my VoIP, but just logging into PennyTel directly with my Nokia E65. It worked OK, but the voice quality wasn&#8217;t as good as going through FreeSWITCH.</p>
<p>A month ago my old ADSL router died, so I bought a Billion 5200N to replace it. Since then, I&#8217;d been having weird problems with VoIP not working, and the Wifi to LAN bridging stopping dead whenever there was a bit of traffic over it.</p>
<p>It took me a while to sort out all the peculiarities of the Billion.</p>
<p>1. A change of ethernet ports on the router fixed the bridge locking up problem. It took a lot of time and weird theories before I fixed that.<br />
2. When setting up the router from factory defaults, I have to save the wireless interface twice when I change the SSID before it will allow my wireless devices to authenticate.<br />
3. UPnP was interfering with FreeSWITCH, and probably my Nokia. Turning that off on the router fixed FreeSWITCH.<br />
4. Selecting some settings on the router made the routers wireless interface disappear, and the only way to get it back was a factory reset.</p>
<p>So, FreeSWITCH is a breeze to set up for PennyTel now. It takes editing two files.<br />
conf/vars.xml and conf/dialplan/default/000pennytel.xml.</p>
<p>In conf/vars.xml I changed the following</p>
<pre>
&lt;X-PRE-PROCESS cmd="set" data="default_password=whateveryouwant"/>
</pre>
<p>That password is used for phones authenticating to FreeSWITCH, it has nothing to do with PennyTel.</p>
<p><code><br />
&lt;X-PRE-PROCESS cmd="set" data="domain=switch.gruntnet"/><br />
</code></p>
<p>What the phones use as their realm, it should be in the DNS with the ip pointing to FreeSWITCH.</p>
<p><code><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider=sip.pennytel.com"/><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider_username=61281955555"/><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider_password=55555/><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider_from_domain=sip.pennytel.com"/><br />
  &lt;!-- true or false --><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider_register=true"/><br />
  &lt;X-PRE-PROCESS cmd="set" data="default_provider_contact=1000"/><br />
</code></p>
<p>All the PennyTel setting goes above, I use 1000 to receive incoming calls, my only phone on the network.</p>
<p>Then in conf/dialplan/default/000penntel.xml</p>
<p><code><br />
   &lt;extension name="pennytel"><br />
    &lt;condition field="destination_number" expression="^(.*)$"><br />
      &lt;action application="set" data="effective_caller_id_number=61281955555"/><br />
      &lt;action application="bridge" data="sofia/gateway/sip.pennytel.com/$1"/><br />
     &lt;/condition><br />
   &lt;/extension><br />
</code></p>
]]></content:encoded>
			<wfw:commentRss>http://chesterton.id.au/blog/2009/11/28/latest-freeswitch-pennytel-and-billion-5200n-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>My Telephone Setup</title>
		<link>http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/</link>
		<comments>http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/#comments</comments>
		<pubDate>Mon, 03 Mar 2008 08:17:36 +0000</pubDate>
		<dc:creator>chesty</dc:creator>
				<category><![CDATA[FreeSWITCH]]></category>
		<category><![CDATA[Slug]]></category>
		<category><![CDATA[ubuntu-au]]></category>
		<category><![CDATA[bridge]]></category>
		<category><![CDATA[e65]]></category>
		<category><![CDATA[exhange]]></category>
		<category><![CDATA[iinet]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[nokia]]></category>
		<category><![CDATA[qos]]></category>
		<category><![CDATA[sip]]></category>
		<category><![CDATA[tc]]></category>
		<category><![CDATA[telephone]]></category>
		<category><![CDATA[voip]]></category>
		<category><![CDATA[wifi]]></category>

		<guid isPermaLink="false">http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/</guid>
		<description><![CDATA[<p><a href="http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/">My Telephone Setup</a></p>
My Telephone Setup I thought I&#8217;d document my current phone setup, probably look back in 10 years time and think how primitive it was. The brains of it are handled by freeswitch, I luurv freeswitch ;), running on a little VM with 128M of memory, and a few gigs of disk. My internet provider is [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/">My Telephone Setup</a></p>
<p>I thought I&#8217;d document my current phone setup, probably look back in 10 years time and think how primitive it was. The brains of it are handled by freeswitch, I luurv freeswitch ;), running on a little VM with 128M of memory, and a few gigs of disk.</p>
<p>My internet provider is iinet, I get 10Mbps down and 1Mbps up. My VOIP provider is pennytel, chosen for their price. $5/month, includes $4 of free calls, it&#8217;s 8c a call untimed for Australia and about 20 other countries. Mobiles are 10.5c/minute billed by the second. They have a fax to email service for another $5/month, but no email to fax. So I can&#8217;t throw away the fax machine just yet. There&#8217;s a few other handy services they offer that I use, they come with the plan.</p>
<p>I was willing to pay extra and go with iinet&#8217;s VOIP for the reason of being closer network wise, and unshaped if I exceed my monthly download limit. But iinet only lets you use their VOIP from the iinet network, not sure why that would be, but I ruled them out based on that. Pennytel has the disadvantage of being further away network wise, and affected by shaping, so my phone doesn&#8217;t work from home if I get shaped. But it works wherever I am on the planet, assuming I can get a fairly consistent trip time. (I could be in America, and take and make calls from my Australian VOIP number)</p>
<p>My VOIP phone is a nokia E65 with WiFi and SIP. Dial a number, and it goes via SIP if it&#8217;s available, otherwise it uses the mobile network. Wifi drains the battery, but I&#8217;ve gotten used to charging it every other day, or whatever it is. </p>
<p>The only thing I haven&#8217;t tested much is QoS, I&#8217;ve recently adjusted it on my ADSL router, but there&#8217;s no real way of seeing if it works, other than experimenting. I&#8217;m considering putting the router in bridge mode, and using tc on linux. That&#8217;s going to require another network card, though.</p>
<p>I still have a landline, my fax machine is connected to it.</p>
]]></content:encoded>
			<wfw:commentRss>http://chesterton.id.au/blog/2008/03/03/my-telephone-setup/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>FreeSWITCH &#8211; Google Talk &#8211; Dingaling &#8211; Jingle All The Way</title>
		<link>http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/</link>
		<comments>http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/#comments</comments>
		<pubDate>Wed, 02 Jan 2008 13:16:38 +0000</pubDate>
		<dc:creator>chesty</dc:creator>
				<category><![CDATA[FreeSWITCH]]></category>
		<category><![CDATA[LA]]></category>
		<category><![CDATA[Slug]]></category>

		<guid isPermaLink="false">http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/</guid>
		<description><![CDATA[<p><a href="http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/">FreeSWITCH &#8211; Google Talk &#8211; Dingaling &#8211; Jingle All The Way</a></p>
FreeSWITCH &#8211; Google Talk &#8211; Dingaling &#8211; Jingle All The Way I got freeswitch working with google talk. There were a few bugs in mod_dingaling that were causing segfaults, they&#8217;re fixed in the latest update. I called from gtalk on my XP vm to my e65 via SIP, audio is working. I commented out the [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/">FreeSWITCH &#8211; Google Talk &#8211; Dingaling &#8211; Jingle All The Way</a></p>
<p>I got freeswitch working with google talk. There were a few bugs in mod_dingaling that were causing segfaults, they&#8217;re fixed in the latest update.</p>
<p>I called from gtalk on my XP vm to my e65 via SIP, audio is working. I commented out the line &lt;param name=&#8221;ext-rtp-ip&#8221; value=&#8221;$${external_rtp_ip}&#8221;/&gt; from conf/jingle_profiles/client.xml .</p>
<p>To make calls from the SIP e65 to google talk users, I added to the dialplan conf/dialplan/default.xml</p>
<p>&lt;extension name=&#8221;sip2jingle&#8221;&gt;<br />
&nbsp;&nbsp;&lt;condition field=&#8221;source&#8221; expression=&#8221;mod_sofia&#8221;/&gt;<br />
&nbsp;&nbsp;&lt;condition field=&#8221;destination_number&#8221; expression=&#8221;^gmail\+([^\@]+)\@?(.*)$&#8221;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;bridge&#8221; data=&#8221;dingaling/gmail.com/$1@gmail.com&#8221;/&gt;<br />
&nbsp;&nbsp;&lt;/condition&gt;<br />
&lt;/extension&gt;</p>
<p>Then from the e65 I dial gmail+user@switch.gruntnet .</p>
<p>See <a href="http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/">FreeSWITCH and Google Talk</a> for the rest of the setup.</p>
<p>I still need to do more testing, and understand how it traverses through the NAT firewall before I give out my google talk address to people. Did I mention the I love freeswitch?</p>
]]></content:encoded>
			<wfw:commentRss>http://chesterton.id.au/blog/2008/01/02/freeswitch-google-talk-dingaling-jingle-all-the-way/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>FreeSWITCH and Google Talk</title>
		<link>http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/</link>
		<comments>http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/#comments</comments>
		<pubDate>Sun, 30 Dec 2007 22:29:40 +0000</pubDate>
		<dc:creator>chesty</dc:creator>
				<category><![CDATA[FreeSWITCH]]></category>
		<category><![CDATA[LA]]></category>
		<category><![CDATA[Slug]]></category>
		<category><![CDATA[ubuntu-au]]></category>

		<guid isPermaLink="false">http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/</guid>
		<description><![CDATA[<p><a href="http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/">FreeSWITCH and Google Talk</a></p>
FreeSWITCH and Google Talk One of the reasons I chose to spend time with freeswitch over yate was google talk integration. Was a good choice, I think, for more than just gtalk. The endpoint that talks to gtalk is mod_dingaling, and it&#8217;s not compiled by default. So to enable it, uncomment #endpoints/mod_dingaling from modules.conf in [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/">FreeSWITCH and Google Talk</a></p>
<p>One of the reasons I chose to spend time with freeswitch over yate was google talk integration. Was a good choice, I think, for more than just gtalk.</p>
<p>The endpoint that talks to gtalk is mod_dingaling, and it&#8217;s not compiled by default. So to enable it, uncomment #endpoints/mod_dingaling from modules.conf in your source tree and recompile.</p>
<p>I had to install gnutls-devel to get gtalk working, but check freeswitch.spec for other build packages you might need.</p>
<p>The configuration is pretty straight forward. Make sure in conf/autoload_configs/modules.conf.xml mod_dingaling is loaded.
<p>I set it up as a client, I think later I might play around with it as a server. My conf/jingle_profiles/client.xml looks like this:</p>
<p>
&lt;include&gt;<br />
&nbsp;&nbsp;&lt;!&#8211; Client Profile (Original mode) &#8211;&gt;<br />
&nbsp;&nbsp;&lt;profile type=&#8221;client&#8221;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;name&#8221; value=&#8221;gmail.com&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;login&#8221; value=&#8221;michael.chesterton@gmail.com/gtalk&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;password&#8221; value=&#8221;bellybutton&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;server&#8221; value=&#8221;talk.google.com&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;dialplan&#8221; value=&#8221;XML&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;context&#8221; value=&#8221;public&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;message&#8221; value=&#8221;Press Belly Button to Begin&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;rtp-ip&#8221; value=&#8221;$${bind_server_ip}&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;ext-rtp-ip&#8221; value=&#8221;$${external_rtp_ip}&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;auto-login&#8221; value=&#8221;true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; SASL &#8220;plain&#8221; or &#8220;md5&#8243; &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;sasl&#8221; value=&#8221;plain&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; if the server where the jabber is hosted is not the same as the one in the jid &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211;&lt;param name=&#8221;server&#8221; value=&#8221;alternate.server.com&#8221;/&gt;&#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; Enable TLS or not &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;tls&#8221; value=&#8221;true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; disable to trade async for more calls &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;use-rtp-timer&#8221; value=&#8221;true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; default extension (if one cannot be determined) &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;exten&#8221; value=&#8221;5551212&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; VAD choose one &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; &lt;param name=&#8221;vad&#8221; value=&#8221;in&#8221;/&gt; &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211; &lt;param name=&#8221;vad&#8221; value=&#8221;out&#8221;/&gt; &#8211;&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;param name=&#8221;vad&#8221; value=&#8221;both&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp; &lt;!&#8211;&lt;param name=&#8221;avatar&#8221; value=&#8221;/path/to/tiny.jpg&#8221;/&gt;&#8211;&gt;<br />
&nbsp;&nbsp;&lt;/profile&gt;<br />
&lt;/include&gt;
</p>
<p>When editing conf/jingle_profiles/client.xml, pay attention to the line  &nbsp;&nbsp;&lt;profile type=&#8221;client&#8221;&gt; make sure it&#8217;s profile , and not x-profile. It comes as x-profile out of the box to stop it from loading. 5551212 is the phone gtalk calls will go to as defined by exten</p>
<p>One other thing is do is add a vcard to your directory entry, I added it to conf/directory/default/1000.xml and directory/default/5551212.xml, mine looks like:</p>
<p>
&lt;include&gt;<br />
&nbsp;&nbsp;&lt;user id=&#8221;1000&#8243; mailbox=&#8221;1000&#8243;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;params&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name=&#8221;password&#8221; value=&#8221;1234&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name=&#8221;vm-password&#8221; value=&#8221;1234&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name=&#8221;vm-mailto&#8221; value=&#8221;chesty@chesterton.id.au&#8221;/&gt;<br />
&lt;!&#8211;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;param name=&#8221;vm-email-all-messages&#8221; value=&#8221;true&#8221;/&gt;<br />
&#8211;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/params&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;variables&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;variable name=&#8221;user_context&#8221; value=&#8221;default&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;variable name=&#8221;ruleset&#8221; value=&#8221;internal&#8221; /&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;variable name=&#8221;effective_caller_id_name&#8221; value=&#8221;Michael Chesterton&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;variable name=&#8221;effective_caller_id_number&#8221; value=&#8221;1000&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/variables&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;vcard xmlns=&#8217;vcard-temp&#8217;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;FN&gt;Michael Chesterton&lt;/FN&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;N&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;FAMILY&gt;Chesterton&lt;/FAMILY&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;GIVEN&gt;Michael&lt;/GIVEN&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;MIDDLE/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/N&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;NICKNAME&gt;Michael&lt;/NICKNAME&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;URL&gt;http://barrang.com.au/&lt;/URL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;BDAY&gt;1974-11-21&lt;/BDAY&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ORG&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ORGNAME&gt;Barrang&lt;/ORGNAME&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ORGUNIT&gt;Barrang&lt;/ORGUNIT&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/ORG&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TITLE&gt;Owner&lt;/TITLE&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ROLE&gt;Engineer&lt;/ROLE&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;WORK/&gt;&lt;VOICE/&gt;&lt;NUMBER&gt;5551212&lt;/NUMBER&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;WORK/&gt;&lt;CELL/&gt;&lt;NUMBER&gt;614205555&lt;/NUMBER&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;WORK/&gt;&lt;FAX/&gt;&lt;NUMBER/&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;WORK/&gt;&lt;MSG/&gt;&lt;NUMBER/&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ADR&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;WORK/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;EXTADD/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;STREET/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;LOCALITY&gt;Panania&lt;/LOCALITY&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;REGION&gt;NSW&lt;/REGION&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;PCODE&gt;2213&lt;/PCODE&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;CTRY&gt;Australia&lt;/CTRY&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/ADR&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;HOME/&gt;&lt;VOICE/&gt;&lt;NUMBER/&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;HOME/&gt;&lt;FAX/&gt;&lt;NUMBER/&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;TEL&gt;&lt;HOME/&gt;&lt;MSG/&gt;&lt;NUMBER/&gt;&lt;/TEL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;ADR&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;HOME/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;EXTADD/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;STREET/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;LOCALITY/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;REGION/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;PCODE/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;CTRY/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/ADR&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;EMAIL&gt;&lt;INTERNET/&gt;&lt;PREF/&gt;&lt;USERID&gt;michael.chesterton@barrang.com.au&lt;/USERID&gt;&lt;/EMAIL&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;JABBERID&gt;michael.chesterton@gmail.com&lt;/JABBERID&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;DESC&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;More information about me is located on my<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;personal website: http://barrang.com.au/<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;/DESC&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;/vcard&gt;<br />
&nbsp;&nbsp;&lt;/user&gt;<br />
&lt;/include&gt;
</p>
<p>That will get you signed in to gtalk ready to receive and make calls. Now we need a dialplan to direct gtalk calls to a SIP phone. Part of my conf/dialplan/public.xml looks like:</p>
<p>
&lt;extension name=&#8221;public_did&#8221;&gt;<br />
&nbsp;&nbsp;&lt;condition field=&#8221;caller_id_number&#8221; expression=&#8221;^([^@]+)&#8221; break=&#8221;never&#8221;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;effective_caller_id_number=$1&#8243;/&gt;<br />
&nbsp;&nbsp;&lt;/condition&gt;<br />
&nbsp;&nbsp;&lt;condition field=&#8221;destination_number&#8221; expression=&#8221;^(5551212)$&#8221;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;call_timeout=18&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;continue_on_fail=true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;hangup_after_bridge=true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;bridge&#8221; data=&#8221;sofia/switch.gruntnet/1000,sofia/switch.gruntnet/1001&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;answer&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;voicemail&#8221; data=&#8221;default $${domain} 1000&#8243;/&gt;<br />
&nbsp;&nbsp;&lt;/condition&gt;<br />
&lt;/extension&gt;
</p>
<p>
The first condition field strips out the @ character from the caller id number, my e65 doesn&#8217;t like the @ character and rejects the call. Gtalk sets the caller id number as something like barrang.com@gmail.com/Talk.v1047F0FC7A5. The rest I&#8217;ve already talked about <a href="http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/">here</a>
</p>
<p>I&#8217;ve only tested setting up a call from an XP vm to my SIP enabled mobile phone, I haven&#8217;t tested audio yet. But I&#8217;m getting there, I&#8217;m waiting for a friend to install gtalk so they can test with me. Then I just need a dialplan entry so I can make gtalk calls from SIP clients.</p>
]]></content:encoded>
			<wfw:commentRss>http://chesterton.id.au/blog/2007/12/31/freeswitch-and-google-talk/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>FreeSWITCH and Voicemail</title>
		<link>http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/</link>
		<comments>http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/#comments</comments>
		<pubDate>Sat, 29 Dec 2007 23:52:41 +0000</pubDate>
		<dc:creator>chesty</dc:creator>
				<category><![CDATA[FreeSWITCH]]></category>
		<category><![CDATA[LA]]></category>
		<category><![CDATA[Slug]]></category>

		<guid isPermaLink="false">http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/</guid>
		<description><![CDATA[<p><a href="http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/">FreeSWITCH and Voicemail</a></p>
FreeSWITCH and Voicemail I updated my FreeSWITCH svn tree the other day and was surprised how much had changed. The configuration structure was completely rearranged. I had to start from scratch. Lots of new goodies, though. My VoIP provider has their own voicemail system that kicks in after 20 seconds, there doesn&#8217;t appear to be [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/">FreeSWITCH and Voicemail</a></p>
<p>I updated my FreeSWITCH svn tree the other day and was surprised how much had changed. The configuration structure was completely rearranged. I had to start from scratch. Lots of new goodies, though.</p>
<p>My VoIP provider has their own voicemail system that kicks in after 20 seconds, there doesn&#8217;t appear to be a way to turn it off. I want to use my own voicemail using FreeSWITCH, so I&#8217;ve got to answer the call before 20 seconds are up.</p>
<p>First thing I needed was some sounds. There&#8217;s some prerecorded sounds available via <em>make sounds-install</em>, except it doesn&#8217;t work in trunk at the moment. They are easily downloaded manually, though. I chose <a href="http://files.freeswitch.org/freeswitch-sounds-en-us-callie-8000-1.0.pre3.tar.gz">http://files.freeswitch.org/freeswitch-sounds-en-us-callie-8000-1.0.pre3.tar.gz</a> and <a href="http://files.freeswitch.org/freeswitch-sounds-music-8000-1.0.pre3.tar.gz">http://files.freeswitch.org/freeswitch-sounds-music-8000-1.0.pre3.tar.gz</a></p>
<p>Unpack the files in /usr/local/freeswitch/sounds/. I found that FreeSwitch was looking for the sounds in (for example) /usr/local/freeswitch/sounds/en/us/callie/voicemail/ but the sounds unpacked to en/us/callie/voicemail/8000/. So I went through every 8000/ directory and moved the sound files to the parent.</p>
<p>Check in conf/autoload_configs/modules.conf.xml that mod_voicemail is being loaded. There&#8217;s a few things to edit in conf/autoload_configs/voicemail.conf.xml, the main one being the storage-dir. I created a directory /usr/local/freeswitch/vm and set &lt;param name=&#8221;storage-dir&#8221; value=&#8221;/usr/local/freeswitch/vm&#8221;/&gt;. The only other thing that really needs setting is email-from. I haven&#8217;t setup email yet.</p>
<p>Now we just need a dialplan to send unanswered calls to voicemail
<p>
&lt;extension name=&#8221;public_did&#8221;&gt;<br />
&nbsp;&nbsp;&lt;condition field=&#8221;destination_number&#8221; expression=&#8221;^(5551212)$&#8221;&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;call_timeout=18&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;continue_on_fail=true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;set&#8221; data=&#8221;hangup_after_bridge=true&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;bridge&#8221; data=&#8221;sofia/switch.gruntnet/1000,sofia/switch.gruntnet/1001&#8243;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;answer&#8221;/&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&lt;action application=&#8221;voicemail&#8221; data=&#8221;default $${domain} 1000&#8243;/&gt;<br />
&nbsp;&nbsp;&lt;/condition&gt;<br />
&lt;/extension&gt;
</p>
<p>In this plan, when someone calls 5551212 (that&#8217;s the number my VoIP provider sends calls to) we set the timeout to 18 seconds, so if it&#8217;s not answered before then, it goes to voicemail.</p>
<p>continue_on_fail means if the bridge fails for whatever reason, one being no one answered it, continue processing the rest of the plan so the call goes to voicemail.</p>
<p>hangup_after_bridge means if someone answered the phone within the 18 seconds, then stop processing the rest of the plan when the call terminates, ie, don&#8217;t send it to voicemail.</p>
<p>I&#8217;m sending the call to two phones in parallel, 1000 and 1001. If neither of them pickup the call, FreeSWITCH answers the call, and launches the voicemail application, sending the call to voicemail box 1000</p>
<p>I commented out &lt;param name=&#8221;vm-email-all-messages&#8221; value=&#8221;true&#8221;/&gt; in conf/directory/default/1000.xml because I haven&#8217;t setup email yet. Plus if you do enable that option, the messages aren&#8217;t saved on FreeSWITCH, they get emailed and deleted.</p>
<p>The only other thing left to do is call 1000 from 1000 to access voicemail, and setup a greeting</p>
<p>Annoyingly my Nokia E65 doesn&#8217;t appear to subscribe to new message notification. So I&#8217;m going to have to setup some sort of email/sms solution later to alert me of new messages</p>
]]></content:encoded>
			<wfw:commentRss>http://chesterton.id.au/blog/2007/12/30/freeswitch-and-voicemail/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

