<?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>chris moos&#039;s blog &#187; iphone</title>
	<atom:link href="http://chrismoos.com/tag/iphone/feed/" rel="self" type="application/rss+xml" />
	<link>http://chrismoos.com</link>
	<description>coding my way through life</description>
	<lastBuildDate>Sun, 18 Sep 2011 19:48:04 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
		<item>
		<title>MoosTrax released for&#160;iPhone</title>
		<link>http://chrismoos.com/2010/07/29/moostrax-released-for-iphone/</link>
		<comments>http://chrismoos.com/2010/07/29/moostrax-released-for-iphone/#comments</comments>
		<pubDate>Fri, 30 Jul 2010 04:01:59 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[moostrax]]></category>
		<category><![CDATA[app store]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[released]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=859</guid>
		<description><![CDATA[I am happy to say that MoosTrax has been approved by Apple and is now available for download in the App Store. Thanks to everyone who helped with the beta testing &#8212; it was a great help. Note: MoosTrax works on devices running iOS 4+. iPhone Support/Help MoosTrax iTunes Link]]></description>
			<content:encoded><![CDATA[<p>I am happy to say that MoosTrax has been approved by Apple and is now available for download in the App Store. Thanks to everyone who helped with the beta testing &#8212; it was a great help.</p>
<p><strong>Note:</strong> MoosTrax works on devices running iOS 4+.</p>
<p><a href="http://trac.moostrax.com/trac/wiki/iPhone">iPhone Support/Help</a><br />
<a href="itms://itunes.apple.com/us/app/moostrax/id383812018?mt=8">MoosTrax iTunes Link</a></p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2010/07/29/moostrax-released-for-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MoosTrax for iPhone Beta&#160;Updates</title>
		<link>http://chrismoos.com/2010/07/12/moostrax-for-iphone-beta-updates/</link>
		<comments>http://chrismoos.com/2010/07/12/moostrax-for-iphone-beta-updates/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 05:59:04 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[moostrax]]></category>
		<category><![CDATA[beta]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=841</guid>
		<description><![CDATA[I&#8217;ve been working a lot on getting MoosTrax ready for the App Store and the latest beta adds a lot of great features. View a list of all of your devices View the current location of any device on your account. Enhanced battery usage through the &#8220;Conserve Battery&#8221; feature. The beta is still open, so [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been working a lot on getting MoosTrax ready for the App Store and the latest beta adds a lot of great features.</p>
<ul>
<li>View a list of all of your devices</li>
<li>View the current location of any device on your account.</li>
<li>Enhanced battery usage through the &#8220;Conserve Battery&#8221; feature.</li>
</ul>
<p>The beta is still open, so send an e-mail to <a href="mailto:moostraxsupport@gmail.com">moostraxsupport@gmail.com</a> to join.</p>
<p><img src="http://cdn.chrismoos.com/wp-content/uploads/2010/07/settings.png" style="width: 300px;float:left;" /><img src="http://cdn.chrismoos.com/wp-content/uploads/2010/07/devices.png" style="padding-left: 10px; width: 300px;float:left;"/><br style="clear:both;"/></p>
<p><img src="http://cdn.chrismoos.com/wp-content/uploads/2010/07/device_info.png" style="width: 300px;"/></p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2010/07/12/moostrax-for-iphone-beta-updates/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MoosTrax for iPhone&#160;iOS4</title>
		<link>http://chrismoos.com/2010/06/27/moostrax-for-iphone-ios4/</link>
		<comments>http://chrismoos.com/2010/06/27/moostrax-for-iphone-ios4/#comments</comments>
		<pubDate>Mon, 28 Jun 2010 02:47:51 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[moostrax]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=829</guid>
		<description><![CDATA[I just got a new iPhone 4 with iOS4&#8230;and it supports background location updates! I&#8217;ve decided to bring MoosTrax back to the iPhone. I&#8217;m looking for beta testers&#8230;and then soon I&#8217;ll be pushing it to the App Store. Applying for the beta Please e-mail moostraxsupport@gmail.com with your iPhone&#8217;s UDID. For information on finding the UDID, [...]]]></description>
			<content:encoded><![CDATA[<p>I just got a new iPhone 4 with iOS4&#8230;and it supports background location updates! I&#8217;ve decided to bring MoosTrax back to the iPhone.</p>
<p>I&#8217;m looking for beta testers&#8230;and then soon I&#8217;ll be pushing it to the App Store.</p>
<h2>Applying for the beta</h2>
<p>Please e-mail <a href="mailto:moostraxsupport@gmail.com">moostraxsupport@gmail.com</a> with your iPhone&#8217;s UDID. </p>
<p>For information on finding the UDID, go here: <a href="http://www.geekology.co.za/blog/2009/07/how-to-check-your-iphones-udid-from-itunes/">http://www.geekology.co.za/blog/2009/07/how-to-check-your-iphones-udid-from-itunes/</a></p>
<h2>Screenshots</h2>
<p><img src="http://www.moostrax.com/images/moostraxiphone2.png" style="float:left;"/><br />
<img src="http://www.moostrax.com/images/moostraxiphone.png" style="padding-left: 10px; float: left;"/><br />
<br style="clear:both;"/></p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2010/06/27/moostrax-for-iphone-ios4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Unlocking the full potential of the&#160;iPhone</title>
		<link>http://chrismoos.com/2010/04/17/unlocking-the-full-potential-of-the-iphone/</link>
		<comments>http://chrismoos.com/2010/04/17/unlocking-the-full-potential-of-the-iphone/#comments</comments>
		<pubDate>Sun, 18 Apr 2010 04:43:48 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[future]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=753</guid>
		<description><![CDATA[Since Apple launched the iPhone in 2007 there has been an unprecedented growth in the mobile phone market. From new advances in hardware, such as touch screens, to operating systems mimicking the full power of a desktop computer. Never has a smartphone been able to penetrate the demographics of 10 year olds, to teenagers, or [...]]]></description>
			<content:encoded><![CDATA[<p>Since Apple launched the iPhone in 2007 there has been an unprecedented growth in the mobile phone market. From new advances in hardware, such as touch screens, to operating systems mimicking the full power of a desktop computer. Never has a smartphone been able to penetrate the demographics of 10 year olds, to teenagers, or mom and dad &#8212; until the iPhone. </p>
<p>There are now hundreds of thousands of applications built for mobile phones, with every use case you can imagine. But even with the growth and advances of the past few years, the industry is still in its youth. </p>
<p>Apple, with its enormous success, is still constantly on the front page because of its questionable practice &#8212; sole control of the iPhone platform. Unlike desktop operating systems, such as Windows or Mac OS X, where the user is in complete control of the operating system, the iPhone is a jail, with Apple deciding what can come in and go out.</p>
<p>The App Store, the only way for a developer to target an iPhone, or a user to install an application on the iPhone, is in constant censorship mode. Certain API&#8217;s are not allowed and questionable content is put to rest. </p>
<p>It is time that Apple realizes that it is not only the hardware in the iPhone, or the software that powers it, that makes it a powerful force in the mobile phone market. The power is in the <em>apps</em>, the platform, and in the imaginations of developers.</p>
<p>Even though there are many applications for the iPhone, there could be so much more. The iPhone is a powerful device that can be used to provide a platform for mobile applications in every industry possible. Medical, industrial, retail &#8212; the list goes on. But as long as Apple is in control of what happens on the iPhone, developers will never be able to harness the full potential of such a beautiful device.</p>
<p>Apple now has the ability to turn the iPhone, and the new iPad, into a commodity device. The PC of the mobile world. My intuition tells me that Apple won&#8217;t let this happen. They prefer to maintain complete control of their platform, and while making it a premium and luxury item, they stop it from attaining the growth that it most definitely can achieve. </p>
<p>The future is in Apple&#8217;s hands &#8212; and they have the ability to make it an awesome place.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2010/04/17/unlocking-the-full-potential-of-the-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Colloquy for iPhone &#8212; Push Notification&#160;Server</title>
		<link>http://chrismoos.com/2009/10/22/colloquy-for-iphone-push-notification-server/</link>
		<comments>http://chrismoos.com/2009/10/22/colloquy-for-iphone-push-notification-server/#comments</comments>
		<pubDate>Fri, 23 Oct 2009 00:04:42 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[colloquy]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[push]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=590</guid>
		<description><![CDATA[Colloquy is a great IRC client for Mac, as well as the iPhone. Currently, to run Colloquy on the iPhone you must purchase the mobile version from the App Store. The other option is to download the source and build it yourself, but you must be a registered iPhone developer to run it on an [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://colloquy.info/">Colloquy</a> is a great IRC client for Mac, as well as the iPhone. Currently, to run Colloquy on the iPhone you must purchase the mobile version from the App Store. The other option is to download the source and <a href="http://colloquy.info/project/wiki/MobileFAQs#CanIgetthesourcetobuildMobileColloquymyself">build it yourself</a>, but you must be a registered iPhone developer to run it on an actual iPhone. Also, if you intend to use push notifications (via the Colloquy ZNC plugin), you must have a push certificate as well. </p>
<h2>Getting Started</h2>
<p>I am going to assume that you have znc installed, and you know how to use it. Next, we need to install the Colloquy ZNC module, so that Colloquy can communicate with ZNC (and allow us to have push functionality). See <a href="http://colloquy.info/project/wiki/PushNotifications#ZNCforMacOSXandLinux">this page</a> for complete instructions.</p>
<p>The module for ZNC accepts commands from the Colloquy client, notably information on push notifications(device token, etc,.).</p>
<h2>Modifying the Colloquy Mobile Source</h2>
<p>Next, we need to download and <a href="http://colloquy.info/project/wiki/MobileFAQs#CanIgetthesourcetobuildMobileColloquymyself">build the source</a>. Once you have downloaded the source and loaded up the Mobile Colloquy project in Xcode, we need to make a few modifications.</p>
<h4>Certificates</h4>
<p>To run any application on an actual iPhone device, it must be signed. Login to your Developer portal on Apple&#8217;s site and generate a certificate (and make sure to enable push). Download the certificate and install it. Next, assign that certificate to the Colloquy Mobile Project. <em>Project&#8230;Edit Active Target</em>. Make sure that under the <em>Properties</em> tab, you have the same Identifier name that you used when generating the certificate. Go to Build, and then <em>Code Signing Identity</em> and select the certificate.</p>
<h4>Modifying the source</h4>
<p>Next, find the <em>CQConnectionsController.m</em> file (Controllers/Connections) and change the following line from:</p>
<div class="codecolorer-container objc blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">&#91;</span>self sendRawMessage<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;PUSH service colloquy.mobi 7906&quot;</span><span style="color: #002200;">&#93;</span>;</div></td></tr></tbody></table></div>
<p>and change it to:</p>
<div class="codecolorer-container objc blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #002200;">&#91;</span>self sendRawMessage<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;PUSH service 127.0.0.1 7906&quot;</span><span style="color: #002200;">&#93;</span>;</div></td></tr></tbody></table></div>
<p>This will make the client tell the Colloquy ZNC module to send push notifications to our custom server.</p>
<p>Build the project and put it onto your device.</p>
<h2>Push Server</h2>
<p>I wrote a simple python script that waits on port 7906, receives a connection from the Colloquy ZNC module, and then pushes a notification to your phone (via Apple&#8217;s Push Service).</p>
<p>The script requires your push certificate and private key file so it can authenticate to Apple&#8217;s push service.</p>
<p>Export the push certificate and private key as a .p12 from Keychain Access. After that, we have to convert it to PEM format:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">openssl pkcs12 <span style="color: #660033;">-in</span> key.p12 <span style="color: #660033;">-out</span> certs.pem <span style="color: #660033;">-nodes</span></div></td></tr></tbody></table></div>
<p>where key.p12 is the file exported from Keychain access.</p>
<p>After that, you may need to put that certs.pem file on your server that you are running ZNC on.</p>
<h4>Installing the Colloquy Push Server</h4>
<p>Run the following to install the Colloquy Push Server:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">sudo</span> easy_install http:<span style="color: #000000; font-weight: bold;">//</span>www.tech9computers.com<span style="color: #000000; font-weight: bold;">/</span>ColloquyPushServer-<span style="color: #000000;">0.1</span>.tar.gz</div></td></tr></tbody></table></div>
<p>Next, run the command <em>colloquypushsrv.py</em> to make sure installation was successful. </p>
<p>The usage looks like this:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">usage: <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>colloquypushsrv.py <span style="color: #7a0874; font-weight: bold;">&#91;</span>-p listen_port<span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>--sandbox<span style="color: #7a0874; font-weight: bold;">&#93;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span>-b<span style="color: #7a0874; font-weight: bold;">&#93;</span> certs_file<br />
&nbsp; &nbsp; Command Summary:<br />
&nbsp; &nbsp; &nbsp; &nbsp; certs_file&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; PEM encoded Apple Push certificate and private key <span style="color: #c20cb9; font-weight: bold;">file</span><span style="color: #7a0874; font-weight: bold;">&#40;</span>absolute path<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #660033;">-p</span> listen_port&nbsp; Default Listen Port: <span style="color: #000000;">7906</span> &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #660033;">--sandbox</span> &nbsp; Connect to Sandbox Service<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #660033;">-b</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Run <span style="color: #000000; font-weight: bold;">in</span> background</div></td></tr></tbody></table></div>
<p>Now, let&#8217;s start the push server in the foreground. Make sure to specify the full path to the pem file we created.</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">colloquypushsrv.py ~<span style="color: #000000; font-weight: bold;">/</span>certs.pem</div></td></tr></tbody></table></div>
<h2>Conclusion</h2>
<p>Finally, connect to your ZNC server with the custom built Colloquy Mobile. Your iPhone should register with the ZNC module. After, exit the Colloquy Mobile application and pull up Colloquy (or any other IRC client) on your desktop. Send yourself a message, and see if you get the push notification!</p>
<p>I realize this process may not be completely clear, so if you have any questions, I would be happy to walk you through the process.</p>
<p>Also, I just wrote this up today, so it may not be production ready <img src='http://cdn.chrismoos.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2009/10/22/colloquy-for-iphone-push-notification-server/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>AT&amp;T, Loopt, and the iPhone &#8212; moving the world into a more ethical&#160;place</title>
		<link>http://chrismoos.com/2009/09/04/att-loopt-and-the-iphone-moving-the-world-into-a-more-ethical-place/</link>
		<comments>http://chrismoos.com/2009/09/04/att-loopt-and-the-iphone-moving-the-world-into-a-more-ethical-place/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 22:07:49 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[att]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[loopt]]></category>
		<category><![CDATA[moostrax]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=453</guid>
		<description><![CDATA[AT&#038;T is going to permit Loopt, a location based services vendor, access to exclusive background functionality on the iPhone. As the primary developer and owner of a free web based location services site, moostrax.com, I am absolutely infuriated with what is taking place. When I discovered the aforemetioned, I realized that the key to being [...]]]></description>
			<content:encoded><![CDATA[<p>AT&#038;T is going to permit Loopt, a location based services vendor, <a href="http://www.businessinsider.com/loopt-to-run-in-the-background-on-iphone-2009-6">access to exclusive background functionality on the iPhone</a>. As the primary developer and owner of a free web based location services site, moostrax.com, I am absolutely infuriated with what is taking place.</p>
<p>When I discovered the aforemetioned, I realized that the key to being able to take advantage of a closed platform(as a software developer, and in this case, the iPhone platform), is to strike a deal with the carrier and put some money in their pockets.</p>
<p>And as a consumer, if I want to run a background application on MY iPhone, which I payed good money for, I need to pay the carrier an additional monthly fee(in this case, per application), and HOPE that the application I wish to background, has a deal with the carrier(so I can pay them money, of course).</p>
<p>Honestly, it is disgusting what is happening in this world. Patents are ubiquitous and exclusivity is everywhere. The DMCA and similar laws cripple consumers&#8217; rights to take control of our purchases. </p>
<p>Attempting to jailbreak an iPhone (and giving a user access to his own phone) can void your warranty. Why? Because Apple doesn&#8217;t want you to have control over the iPhone. They want you to use the iTunes store. They want your experience to be guided by their extensive expertise. </p>
<p>I&#8217;ll definitely be posting more on this subject soon, but its late now, and I need to sleep. </p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2009/09/04/att-loopt-and-the-iphone-moving-the-world-into-a-more-ethical-place/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MoosTrax for iPhone &#8211; Looking for&#160;testers</title>
		<link>http://chrismoos.com/2009/08/07/moostrax-for-iphone-looking-for-testers/</link>
		<comments>http://chrismoos.com/2009/08/07/moostrax-for-iphone-looking-for-testers/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 17:15:35 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[moostrax]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[iphone]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=445</guid>
		<description><![CDATA[I just made a very basic MoosTrax location updater for the iPhone. Currently it just sends your location to MoosTrax when you press the Update Now button. I will be adding push notifications soon so that when someone pulls up the Live Tracking page on the MoosTrax website, you will receive a notification on your [...]]]></description>
			<content:encoded><![CDATA[<p>I just made a very basic MoosTrax location updater for the iPhone. Currently it just sends your location to MoosTrax when you press the <em>Update Now</em> button.</p>
<p>I will be adding push notifications soon so that when someone pulls up the <em>Live Tracking</em> page on the MoosTrax website, you will receive a notification on your iPhone requesting you to update your location. That is really all I can do for now, as background applications are still not permitted.</p>
<p>If anyone wants to help me test this first version, please email moostraxsupport@gmail.com.</p>
<p>Screenshots:</p>
<p><img src="http://cdn.chrismoos.com/wp-content/uploads/2009/08/moostrax-iphone-1.png" style="width: 200px;"/></p>
<p><br style="clear:both;"/></p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2009/08/07/moostrax-for-iphone-looking-for-testers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apple Push Notification Library for&#160;Haskell</title>
		<link>http://chrismoos.com/2009/07/13/apple-push-notification-library-for-haskell/</link>
		<comments>http://chrismoos.com/2009/07/13/apple-push-notification-library-for-haskell/#comments</comments>
		<pubDate>Mon, 13 Jul 2009 20:40:29 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[apple]]></category>
		<category><![CDATA[haskell]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[push]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=421</guid>
		<description><![CDATA[I have been working with Apple&#8217;s Push Notification service recently and decided to make a library to send notifications with Haskell. It is very simple and has a few helpers to make notifications with an alert, sound, etc,. ApplePush Hackage ApplePush Documentation When using the library, you must use an SSL tunnel, because Haskell&#8217;s SSL [...]]]></description>
			<content:encoded><![CDATA[<p>I have been working with Apple&#8217;s Push Notification service recently and decided to make a library to send notifications with Haskell. It is very simple and has a few helpers to make notifications with an alert, sound, etc,. </p>
<p><img src="http://cdn.chrismoos.com/wp-content/uploads/2009/07/push.jpg" style="padding: 25px; width: 350px; float: right;"/></p>
<p><a href="http://hackage.haskell.org/package/ApplePush-0.1">ApplePush Hackage</a></p>
<p><a href="http://chrismoos.com/static/ApplePush/">ApplePush Documentation</a></p>
<p>When using the library, you must use an SSL tunnel, because Haskell&#8217;s SSL support is incomplete. I use stunnel4, which works great, and offloads the SSL processing as well. Here are some basic instructions on getting started with the library.</p>
<p><span id="more-421"></span></p>
<h3>Stunnel setup</h3>
<p>Download your certificate from Apple. If you are using a Mac, export the certificate (.cer) into a directory. Also, export your private key as a .p12 file. Stunnel needs the certificate/key in one file, in the following format:</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #660033;">-----BEGIN</span> RSA PRIVATE KEY-----<br />
YOUR KEY<br />
<span style="color: #660033;">-----END</span> RSA PRIVATE KEY-----<br />
<span style="color: #660033;">-----BEGIN</span> CERTIFICATE-----<br />
YOUR CERTIFICATE<br />
<span style="color: #660033;">-----END</span> CERTIFICATE-----</div></td></tr></tbody></table></div>
<p>Run the following commands to convert and concatenate your certificate/private key.</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">openssl x509 <span style="color: #660033;">-in</span> cert.cer <span style="color: #660033;">-inform</span> DER <span style="color: #660033;">-outform</span> PEM <span style="color: #660033;">-out</span> cert.pem<br />
openssl pkcs12 <span style="color: #660033;">-in</span> key.p12 <span style="color: #660033;">-out</span> key.pem <span style="color: #660033;">-nodes</span><br />
<span style="color: #c20cb9; font-weight: bold;">cat</span> key.pem cert.pem <span style="color: #000000; font-weight: bold;">&gt;</span> certs.pem</div></td></tr></tbody></table></div>
<p>Create a file called tun.conf, which will configure stunnel.</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #007800;">client</span>=<span style="color: #c20cb9; font-weight: bold;">yes</span><br />
<span style="color: #007800;">debug</span>=<span style="color: #000000;">5</span><br />
<span style="color: #007800;">foreground</span>=no<br />
<span style="color: #007800;">pid</span>=tun.pid<br />
<span style="color: #7a0874; font-weight: bold;">&#91;</span>service<span style="color: #7a0874; font-weight: bold;">&#93;</span><br />
<span style="color: #007800;">accept</span>=<span style="color: #000000;">2195</span><br />
<span style="color: #007800;">connect</span>=gateway.sandbox.push.apple.com:<span style="color: #000000;">2195</span><br />
<span style="color: #007800;">cert</span>=certs.pem</div></td></tr></tbody></table></div>
<p>This will bind stunnel to the local port 2195, and tunnel traffic via SSL to <em>gateway.sandbox.push.apple.com:2195</em>.</p>
<p>Next run the following command to start <em>stunnel</em>.</p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">stunnel tun.conf</div></td></tr></tbody></table></div>
<h3>ApplePush Haskell Library</h3>
<p>Let&#8217;s update our cabal packages, and then install.</p>
<div class="codecolorer-container sh blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="sh codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">cabal update<br />
cabal <span style="color: #c20cb9; font-weight: bold;">install</span> ApplePush</div></td></tr></tbody></table></div>
<p>In addition to the library, an application, called <em>applepushtest</em>, is also installed so that you can test the library and your SSL tunnel setup. Let&#8217;s try it out. </p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">c10k:~ chris$ ~<span style="color: #000000; font-weight: bold;">/</span>.cabal<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>applepushtest <br />
Apple Push Test, Version <span style="color: #000000;">0.1</span><br />
usage: applepushtest device_token<span style="color: #7a0874; font-weight: bold;">&#40;</span>hex<span style="color: #7a0874; font-weight: bold;">&#41;</span></div></td></tr></tbody></table></div>
<p>You must pass a parameter, device_token, to the application. This tells the library which device to send the notification to. This token must be retrieved in your client application using <a href="http://developer.apple.com/iphone/library/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/IPhoneOSClientImp/IPhoneOSClientImp.html#//apple_ref/doc/uid/TP40008194-CH103-SW1">registerForRemoteNotificationTypes:</a>. Once you have your token, run the following command. </p>
<div class="codecolorer-container bash blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">c10k:~ chris$ ~<span style="color: #000000; font-weight: bold;">/</span>.cabal<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span>applepushtest <span style="color: #7a0874; font-weight: bold;">&#40;</span>yourtoken<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
Device Token: <span style="color: #7a0874; font-weight: bold;">&#40;</span>yourtoken<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
Message<span style="color: #000000; font-weight: bold;">&gt;</span> hey<br />
Message<span style="color: #000000; font-weight: bold;">&gt;</span> whats up?<br />
Message<span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #7a0874; font-weight: bold;">test</span><span style="color: #000000; font-weight: bold;">!!</span><br />
Message<span style="color: #000000; font-weight: bold;">&gt;</span></div></td></tr></tbody></table></div>
<p>To use the library in your application, check out Main.hs for an example.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2009/07/13/apple-push-notification-library-for-haskell/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MoosTrax, iPhone, and Push&#160;Notifications</title>
		<link>http://chrismoos.com/2009/07/03/moostrax-iphone-and-push-notifications/</link>
		<comments>http://chrismoos.com/2009/07/03/moostrax-iphone-and-push-notifications/#comments</comments>
		<pubDate>Fri, 03 Jul 2009 22:39:01 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[moostrax]]></category>
		<category><![CDATA[Technology]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[push]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=404</guid>
		<description><![CDATA[I recently traded my T-Mobile G1, with Android, for an iPhone 3G. I am hoping to get MoosTrax running on the iPhone, but unfortunately, even with push notifications, it might not be the same as the BlackBerry and Android versions. Here are some reasons why. No automatic location updates The iPhone OS does not allow [...]]]></description>
			<content:encoded><![CDATA[<p>I recently traded my T-Mobile G1, with Android, for an iPhone 3G. I am hoping to get MoosTrax running on the iPhone, but unfortunately, even with <a href="http://www.engadget.com/2009/05/18/developers-get-first-look-at-apple-push-notification-service-on/">push notifications</a>, it might not be the same as the BlackBerry and Android versions. Here are some reasons why.</p>
<p><img style="float: right;" src="http://cdn.chrismoos.com/wp-content/uploads/2009/07/iphone.gif" /></p>
<h4>No automatic location updates</h4>
<p>The iPhone OS does not allow applications to run in the background, which means MoosTrax cannot check your location and send it to the server at a fixed interval.</p>
<h4>Push Notifications aren&#8217;t the whole solution</h4>
<p>
MoosTrax could send a push notification to your phone, telling it to send a location update to the server, but unfortunately it requires user interaction. It wouldn&#8217;t be too convenient to have your phone vibrating every few minutes asking you to update your location.
</p>
<h4>Manual updates</h4>
<p>Initially, MoosTrax for iPhone will have support for sending location updates to the server manually when you open the application.</p>
<h4>Stay tuned</h4>
<p>
Hopefully, within time, Apple will make the push notification functionality more advanced so that MoosTrax can be as powerful as it is on other platforms, such as Android and BlackBerry. For now, stay tuned for the iPhone application. I am waiting to be approved in the iPhone developer program and then you should see the application in the iTunes store soon.</p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2009/07/03/moostrax-iphone-and-push-notifications/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>iPhone RSS&#160;Parser</title>
		<link>http://chrismoos.com/2008/07/17/iphone-rss-class/</link>
		<comments>http://chrismoos.com/2008/07/17/iphone-rss-class/#comments</comments>
		<pubDate>Fri, 18 Jul 2008 00:37:04 +0000</pubDate>
		<dc:creator>Chris Moos</dc:creator>
				<category><![CDATA[Technology]]></category>
		<category><![CDATA[cocoa]]></category>
		<category><![CDATA[iphone]]></category>
		<category><![CDATA[rss]]></category>

		<guid isPermaLink="false">http://chrismoos.com/?p=54</guid>
		<description><![CDATA[I&#8217;ve made a simple parser class for reading RSS feeds and a simple demo application for the iPhone that implements the iPhoneRSS class. The following example shows the usage for the RSS class. Basically, the class creates an NSArray of news items, and each object in the array is an NSDictionary. The dictionary contains the [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve made a simple parser class for reading RSS feeds and a simple demo application for the iPhone that implements the <em>iPhoneRSS</em> class.</p>
<p>The following example shows the usage for the RSS class. Basically, the class creates an NSArray of news items, and each object in the array is an NSDictionary. The dictionary contains the element name as the key.</p>
<div class="codecolorer-container objc blackboard" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br /></div></td><td><div class="objc codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #11740a; font-style: italic;">/* load feed from URL */</span><br />
iPhoneRSS <span style="color: #002200;">*</span>rss <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>iPhoneRSS alloc<span style="color: #002200;">&#93;</span> initWithURL<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/"><span style="color: #400080;">NSURL</span></a> URLWithString<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;http://www.reddit.com/.rss&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; <br />
<span style="color: #11740a; font-style: italic;">/* array contains all posts in feed */</span><br />
items <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>rss items<span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; <br />
NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Number of items: %d&quot;</span>, <span style="color: #002200;">&#91;</span>items count<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; <br />
<span style="color: #11740a; font-style: italic;">/* loop through all posts in the feed */</span><br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSEnumerator_Class/"><span style="color: #400080;">NSEnumerator</span></a> <span style="color: #002200;">*</span>enumerator <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>items objectEnumerator<span style="color: #002200;">&#93;</span>;<br />
<a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSDictionary_Class/"><span style="color: #400080;">NSDictionary</span></a> <span style="color: #002200;">*</span>dict;<br />
&nbsp; &nbsp; <br />
<span style="color: #a61390;">while</span><span style="color: #002200;">&#40;</span>dict <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>enumerator nextObject<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;---------------------------------------------------------&quot;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Title: %@&quot;</span>, <span style="color: #002200;">&#91;</span>dict objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;title&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Description: %@&quot;</span>, <span style="color: #002200;">&#91;</span>dict objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;description&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #11740a; font-style: italic;">/* to get comments, use the rss reader to read the comment RSS for this post, contained in wfw:commentRss */</span><br />
&nbsp; &nbsp; <a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSString_Class/"><span style="color: #400080;">NSString</span></a> <span style="color: #002200;">*</span>commentURL <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span>dict objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;wfw:commentRss&quot;</span><span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; <span style="color: #a61390;">if</span><span style="color: #002200;">&#40;</span>commentURL <span style="color: #002200;">!=</span> <span style="color: #a61390;">nil</span><span style="color: #002200;">&#41;</span> <span style="color: #002200;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; iPhoneRSS <span style="color: #002200;">*</span>commentRss <span style="color: #002200;">=</span> <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>iPhoneRSS alloc<span style="color: #002200;">&#93;</span> initWithURL<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span><a href="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/"><span style="color: #400080;">NSURL</span></a> URLWithString<span style="color: #002200;">:</span><span style="color: #002200;">&#91;</span>dict objectForKey<span style="color: #002200;">:</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;wfw:commentRss&quot;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span><span style="color: #002200;">&#93;</span>;<br />
&nbsp; &nbsp; &nbsp; &nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;Number of comments: %d&quot;</span>, <span style="color: #002200;">&#91;</span><span style="color: #002200;">&#91;</span>commentRss items<span style="color: #002200;">&#93;</span> count<span style="color: #002200;">&#93;</span><span style="color: #002200;">&#41;</span>;<br />
&nbsp; &nbsp; <span style="color: #002200;">&#125;</span> &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; NSLog<span style="color: #002200;">&#40;</span><span style="color: #bf1d1a;">@</span><span style="color: #bf1d1a;">&quot;---------------------------------------------------------&quot;</span><span style="color: #002200;">&#41;</span>;<br />
<span style="color: #002200;">&#125;</span></div></td></tr></tbody></table></div>
<p>You can download the sample project and the RSS class files here: <a href="http://www.tech9computers.com/iPhoneRSS.zip">http://www.tech9computers.com/iPhoneRSS.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://chrismoos.com/2008/07/17/iphone-rss-class/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

