<?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>don't_panic</title>
	<atom:link href="http://mikepultz.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://mikepultz.com</link>
	<description>personal and professional blog of mike pultz, technology specialist and serial entrepreneur;</description>
	<lastBuildDate>Fri, 16 Jul 2010 05:26:53 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Mr.DNS Network Tools v1.6</title>
		<link>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-6/</link>
		<comments>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-6/#comments</comments>
		<pubDate>Fri, 16 Jul 2010 05:26:53 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Mr.DNS]]></category>
		<category><![CDATA[Mr.Host]]></category>

		<guid isPermaLink="false">http://mikepultz.com/?p=517</guid>
		<description><![CDATA[I've released a new version of the Mr.DNS Network Tools website. New features include: SPF Parsing and Validation: DNS SRV Records: HTTP Header Parsing for any HTTP/HTTPS URL: and many other small changes and fixes.]]></description>
			<content:encoded><![CDATA[<p class='fb-like'><iframe src='http://www.facebook.com/plugins/like.php?href=http://mikepultz.com/2010/07/mr-dns-network-tools-v1-6/&amp;layout=&amp;show_faces=true&amp;width=260&amp;action=&amp;colorscheme=light' scrolling='no' frameborder='0' allowTransparency='true' style='border:none; overflow:hidden; width:260px; height:26px'></iframe></p><p>I've released a new version of the <a href="http://mrdns.com" target="_blank">Mr.DNS Network Tools</a> website.</p>
<p>New features include:</p>
<p>SPF Parsing and Validation:</p>
<p><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_spf1.png"><img class="size-full wp-image-520 alignnone" title="mrdns_spf" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_spf1.png" alt="" width="700" height="317" /></a></p>
<p>DNS SRV Records:</p>
<p><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_srv.png"><img class="alignnone size-full wp-image-522" title="mrdns_srv" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_srv.png" alt="" width="700" height="319" /></a></p>
<p>HTTP Header Parsing for any HTTP/HTTPS URL:</p>
<p><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_http.png"><img class="alignnone size-full wp-image-523" title="mrdns_http" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns_http.png" alt="" width="700" height="371" /></a></p>
<p>and many other small changes and fixes.</p>
]]></content:encoded>
			<wfw:commentRss>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-6/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mr.DNS Network Tools v1.4</title>
		<link>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-4/</link>
		<comments>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-4/#comments</comments>
		<pubDate>Tue, 06 Jul 2010 20:15:34 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Mr.DNS]]></category>
		<category><![CDATA[Mr.Host]]></category>

		<guid isPermaLink="false">http://mikepultz.com/?p=499</guid>
		<description><![CDATA[I've updated the Mr.DNS site and included several new features: Visual Trace Routes - overlays each hop of the trace route on a google map: Real-Time Multi-RBL and URIBL checks: Real-Time SMTP Server Validation: more features to come soon.]]></description>
			<content:encoded><![CDATA[<p class='fb-like'><iframe src='http://www.facebook.com/plugins/like.php?href=http://mikepultz.com/2010/07/mr-dns-network-tools-v1-4/&amp;layout=&amp;show_faces=true&amp;width=260&amp;action=&amp;colorscheme=light' scrolling='no' frameborder='0' allowTransparency='true' style='border:none; overflow:hidden; width:260px; height:26px'></iframe></p><p>I've updated the <a href="http://mrdns.com" target="_blank">Mr.DNS site</a> and included several new features:</p>
<p>Visual Trace Routes - overlays each hop of the trace route on a google map:</p>
<p style="text-align: center;"><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns12.png"><img class="aligncenter size-full wp-image-509" title="Mr.DNS Visual Traceroute" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns12.png" alt="" width="700" height="646" /></a></p>
<p>Real-Time Multi-RBL and URIBL checks:</p>
<p><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns21.png"><img class="aligncenter size-full wp-image-510" title="Mr.DNS Multi-RBL Check" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns21.png" alt="" width="700" height="488" /></a></p>
<p>Real-Time SMTP Server Validation:</p>
<p><a href="http://mikepultz.com/wp-content/uploads/2010/07/mrdns31.png"><img class="aligncenter size-full wp-image-511" title="Mr.DNS SMTP Check" src="http://mikepultz.com/wp-content/uploads/2010/07/mrdns31.png" alt="" width="700" height="484" /></a></p>
<p>more features to come soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://mikepultz.com/2010/07/mr-dns-network-tools-v1-4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Almost Time to Invest</title>
		<link>http://mikepultz.com/2010/05/almost-time-to-invest/</link>
		<comments>http://mikepultz.com/2010/05/almost-time-to-invest/#comments</comments>
		<pubDate>Mon, 31 May 2010 04:13:35 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://mikepultz.com/?p=491</guid>
		<description><![CDATA[On a related note, BP's current share price of 42.95 might mean it's almost time to pickup some of the company on the cheap. The company has had a five year low of 35.15/share- it'll be interesting to see how it opens on Tuesday given the failure of the Top Kill solution- I'd say depending [...]]]></description>
			<content:encoded><![CDATA[<p class='fb-like'><iframe src='http://www.facebook.com/plugins/like.php?href=http://mikepultz.com/2010/05/almost-time-to-invest/&amp;layout=&amp;show_faces=true&amp;width=260&amp;action=&amp;colorscheme=light' scrolling='no' frameborder='0' allowTransparency='true' style='border:none; overflow:hidden; width:260px; height:26px'></iframe></p><p>On a related note, BP's current share price of 42.95 might mean it's almost time to pickup some of the company on the cheap.</p>
<p>The company has had a five year low of 35.15/share- it'll be interesting to see how it opens on Tuesday given the failure of the <a href="http://news.yahoo.com/s/ap/20100530/ap_on_bi_ge/us_gulf_oil_spill">Top Kill solution</a>- I'd say depending on the feasibility of the next idea, if it gets into the low 30's, it's probably a good buy.</p>
<p>With the extra money, you can throw a really nice funeral for that part of you that dies.<br/><br/></p>
<div align="center"><script src="http://charts.wikinvest.com/wikinvest/wikichart/javascript/scripts.php" type="text/javascript"></script></p>
<div id="wikichartContainer_70C7D7DA-28AE-B288-5234-EC850D5A676D">
<div style="width: 570px; text-align: center; vertical-align: center; margin-top: 82px;"><a href="http://get.adobe.com/flashplayer/"><img style="border-width: 0px;" src="http://cdn.wikinvest.com/wikinvest/images/adobe_flash_logo.gif" alt="Flash" /> Flash Player 9 or higher is required to view the chart <strong>Click here to download Flash Player now</strong></a></div>
</div>
<p><script type="text/javascript">// <![CDATA[
if (typeof(embedWikichart) != "undefined") {embedWikichart("http://charts.wikinvest.com/WikiChartMini.swf","wikichartContainer_70C7D7DA-28AE-B288-5234-EC850D5A676D","570","365",{"ticker":"BP","liveQuote":"true","embedCodeDate":"2010-5-31","startDate":"28-11-2009","showAnnotations":"true","endDate":"28-05-2010"},{});}
// ]]&gt;</script></p>
<div style="font-size: 9px; text-align: right; width: 570px; font-family: Verdana;"><a style="text-decoration: underline; color: #0000ee;" href="http://www.wikinvest.com/chart/BP">View the full BP chart</a> at <a href="http://www.wikinvest.com/">Wikinvest</a></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://mikepultz.com/2010/05/almost-time-to-invest/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Oil Makes People Forget</title>
		<link>http://mikepultz.com/2010/05/oil-makes-people-forget/</link>
		<comments>http://mikepultz.com/2010/05/oil-makes-people-forget/#comments</comments>
		<pubDate>Mon, 31 May 2010 03:50:30 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[Media]]></category>

		<guid isPermaLink="false">http://mikepultz.com/?p=475</guid>
		<description><![CDATA[I recently made a trip to Seattle, and to nobodies surprise, the Deepwater Horizon Oil spill is all over the news- fed to the masses in a way only the US media can do. When they first started talking about it, they referred to how it "could easily be the worst oil spill in history"- [...]]]></description>
			<content:encoded><![CDATA[<p class='fb-like'><iframe src='http://www.facebook.com/plugins/like.php?href=http://mikepultz.com/2010/05/oil-makes-people-forget/&amp;layout=&amp;show_faces=true&amp;width=260&amp;action=&amp;colorscheme=light' scrolling='no' frameborder='0' allowTransparency='true' style='border:none; overflow:hidden; width:260px; height:26px'></iframe></p><p>I recently made a trip to Seattle, and to nobodies surprise, the<a href="http://en.wikipedia.org/wiki/Deepwater_Horizon_oil_spill"> Deepwater Horizon Oil spill</a> is all over the news- fed to the masses in a way only the US media can do.</p>
<p>When they first started talking about it, they referred to how it "could easily be the worst oil spill in history"- which is just an insane over-exaggeration of the facts- then they slowing started pulling that back, to "easily the worst spill in US history", using the<a href="http://en.wikipedia.org/wiki/Exxon_Valdez_oil_spill"> Exxon Valdez spill</a> as a barometer for "badness".</p>
<p>To put some perspective around this- the Exxon Valdez spill was 37,000 tonnes (~270,000 barrels), which is not even in the top 30 biggest oil spills on record, and it's only the 3rd worst in US history. The worst on record, was the <a href="http://en.wikipedia.org/wiki/Gulf_War_oil_spill">Gulf War oil spill</a> at ~1,500,000 tonnes (~10,995,000 barrels of oil).</p>
<p>The current, most widely accepted flow rate for the Horizon Oil spill is ~12,000 to 19,000 barrels/day (so ~15,500 barrels / day, or ~2,114 tonnes /day)- which means there has been ~86,000 tonnes (~635,500 barrels) to date- which would make it the third worst in US history next to the <a href="http://en.wikipedia.org/wiki/Greenpoint_oil_spill">Greenpoint Brooklyn</a> and Hawaiian Patriot spills, and around the 20th worst on record in the world.</p>
<p>Obviously, all these numbers are estimates, but the point is, while it's really really bad, and of course is something that needs to be stopped as soon as possible-  it's happened before- it's not new- it's just the story of the moment, so people are instructed to be outraged right now- but people will lose interested and stop caring- especially if it takes until Aug to drill the relief wells.</p>
<p>Even better,  the Ixtoc spill 31 years ago, which btw- is the second biggest spill ever.<br/><br/></p>
<div align="center"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="560" height="340" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.youtube.com/v/GHmhxpQEGPo&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" /><param name="allowfullscreen" value="true" /><embed type="application/x-shockwave-flash" width="560" height="340" src="http://www.youtube.com/v/GHmhxpQEGPo&amp;hl=en_US&amp;fs=1&amp;color1=0x3a3a3a&amp;color2=0x999999" allowscriptaccess="always" allowfullscreen="true"></embed></object></div>
<p><br/><br />
Humans Fail.<br/><br/></p>
]]></content:encoded>
			<wfw:commentRss>http://mikepultz.com/2010/05/oil-makes-people-forget/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Automatic Dial Resource Fail-over in Asterisk</title>
		<link>http://mikepultz.com/2010/05/automatic-dial-resource-fail-over-in-asterisk/</link>
		<comments>http://mikepultz.com/2010/05/automatic-dial-resource-fail-over-in-asterisk/#comments</comments>
		<pubDate>Mon, 17 May 2010 03:01:30 +0000</pubDate>
		<dc:creator>mike</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[Telephony]]></category>

		<guid isPermaLink="false">http://mikepultz.com/?p=467</guid>
		<description><![CDATA[Asterisk is generally pretty reliable, but termination providers aren't always so good; in a market where anybody can re-sell an upstream provider, or setup a few Asterisk boxes and start routing calls for people, it's generally a good idea to have a "backup" provider (or three) to route your calls through. You can easily setup [...]]]></description>
			<content:encoded><![CDATA[<p class='fb-like'><iframe src='http://www.facebook.com/plugins/like.php?href=http://mikepultz.com/2010/05/automatic-dial-resource-fail-over-in-asterisk/&amp;layout=&amp;show_faces=true&amp;width=260&amp;action=&amp;colorscheme=light' scrolling='no' frameborder='0' allowTransparency='true' style='border:none; overflow:hidden; width:260px; height:26px'></iframe></p><p><a href="http://asterisk.org">Asterisk</a> is generally pretty reliable, but termination providers aren't always so good; in a market where anybody can re-sell an upstream provider, or setup a few Asterisk boxes and start routing calls for people, it's generally a good idea to have a "backup" provider (or three) to route your calls through.</p>
<p>You can easily setup an Asterisk system, to fail-over to secondary systems, if your primary provider fails for some reason- and this can all be done right in the dial plan, using a simple MACRO.</p>
<p>Add this MACRO to your dial plan:</p>
<pre>[macro-direct-dial]
exten =&gt; s,1,Set(CALL_ATTEMPT=1)
exten =&gt; s,2,Set(TERM_PROVIDER=${TERM_PROVIDER1})
exten =&gt; s,3,Dial(${TERM_PROVIDER}/${ARG1},60)
exten =&gt; s,4,GotoIf($["${CALL_ATTEMPT}" &gt;= "${MAX_PROVIDERS}"]?s-CANCEL,1)
exten =&gt; s,5,Set(CALL_ATTEMPT=$[${CALL_ATTEMPT} + 1])
exten =&gt; s,6,Goto(s-${DIALSTATUS},1)

exten =&gt; s-BUSY,1,Noop()
exten =&gt; s-NOANSWER,1,Noop()
exten =&gt; s-CANCEL,1,Hangup()
exten =&gt; s-HANGUP,1,Hangup()

exten =&gt; s-CHANUNAVAIL,1,Set(TERM_PROVIDER=${EVAL(${TERM_PROVIDER${CALL_ATTEMPT}})})
exten =&gt; s-CHANUNAVAIL,2,Goto(s,3)

exten =&gt; s-CONGESTION,1,Set(TERM_PROVIDER=${EVAL(${TERM_PROVIDER${CALL_ATTEMPT}})})
exten =&gt; s-CONGESTION,2,Goto(s,3)</pre>
<p>Now you'll need to route your calls into this MACRO; this can vary by dial plan, as you may have a special configuration for different area codes, or country codes, or based on some least-cost-routing business decisions, but a simple example would be something like this:</p>
<pre>[default]
exten =&gt; _1NXXNXXXXXX,1,Answer()
exten =&gt; _1NXXNXXXXXX,2,Macro(direct-dial,${EXTEN})
exten =&gt; _1NXXNXXXXXX,3,Hangup()</pre>
<p>This routes any <a href="http://www.nanpa.com/">NANPA</a> numbers through the direct-dial MACRO above, passing in the phone number as the first argument to the MACRO.</p>
<p>Now, before this will work, you'll need to configure some variables; this can be done in many places- in my working configuration, I have these variables dynamically generated via an AGI script, based on the phone number being dialed. This way I can control dial-groups, by phone number, based on a cost/preference/etc.</p>
<p>In this example, we'll simply set these values in the globals section of the extensions.conf file:</p>
<pre>[globals]
TERM_PROVIDER1 = SIP/first_provider
TERM_PROVIDER2 = IAX/second_provider
TERM_PROVIDER3 = SIP/last_provider
MAX_PROVIDERS = 3</pre>
<p>So I've configured three fictitious termination providers; you can specify as many as you like, as long as the TERM_PROVIDER increments one for each, and you set the MAX_PROVIDERS value to the total number of providers listed.</p>
<p>This is obviously more useful if this list is automatically generated somehow, or changed based on the phone number being dialed, otherwise the retries could simply be hard-coded into the dial plan.</p>
<p>Now when you dial your number, it will start with the first (default) provider; if the dial() function returns a congestion or channel un-available error, the MACRO will cycle to the next provider, until it as gone through all of the providers listed.</p>
]]></content:encoded>
			<wfw:commentRss>http://mikepultz.com/2010/05/automatic-dial-resource-fail-over-in-asterisk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
