<?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>MobilityDojo.net &#187; How-to&#8217;s</title>
	<atom:link href="http://mobilitydojo.net/category/howto/feed/" rel="self" type="application/rss+xml" />
	<link>http://mobilitydojo.net</link>
	<description>place of the mobility way</description>
	<lastBuildDate>Tue, 31 Jan 2012 21:59:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>/CertSrv vs Mobile Devices</title>
		<link>http://mobilitydojo.net/2012/01/31/certsrv-vs-mobile-devices/</link>
		<comments>http://mobilitydojo.net/2012/01/31/certsrv-vs-mobile-devices/#comments</comments>
		<pubDate>Tue, 31 Jan 2012 21:59:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Device Management]]></category>
		<category><![CDATA[How-to's]]></category>
		<category><![CDATA[iOS]]></category>
		<category><![CDATA[iPad]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Windows Phone]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1717</guid>
		<description><![CDATA[I mentioned in my last blog about Android Ice Cream Sandwich that it is now possible, (actually from Android 3.x Honeycomb), to enroll certificates directly from the /CertSrv web site onto your mobile device. (If you're running a Microsoft CA of course.)

This is all nice and dandy, but it's not like Android devices are the only devices you're likely to be supporting. With the tablet varieties the split is something like 90/10 iPad vs "the rest". However if you ever tried loading up /CertSrv on your iOS device or your Windows Phone you'll have noticed that it's not working.

I find this slightly annoying, and decided to look into this further. Those pesky ActiveX controls can't be the only reason right? :)

There's two things to sort out here really; is it anything with the web pages themselves and the server, or something on the browser side. Turns out there's a bit of both involved actually.
(...)
I go through how it works and how it doesn't work - and some of the why's.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2012/01/31/certsrv-vs-mobile-devices/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; Remote Wipe</title>
		<link>http://mobilitydojo.net/2011/09/28/exchange-activesync-building-blocks-remote-wipe/</link>
		<comments>http://mobilitydojo.net/2011/09/28/exchange-activesync-building-blocks-remote-wipe/#comments</comments>
		<pubDate>Wed, 28 Sep 2011 21:00:04 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1627</guid>
		<description><![CDATA[In the previous installment in this series we looked at how security policies are pushed down to our Exchange ActiveSync clients, and how to deal with them, or for that matter circumvent them. Thus I thought that it would be suitable to cover a topic highly related to implementation of security policies – how to handle remote wipe  

When dealing with the "wipe" concept there are two kinds of wipes we need to be aware of; local wipe and remote wipe. 
(...)
I take a look at the low level details of the remote wipe process, along with some sample C# code that will get you started on your own.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/09/28/exchange-activesync-building-blocks-remote-wipe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; Provisioning</title>
		<link>http://mobilitydojo.net/2011/09/20/exchange-activesync-building-blocks-provisioning/</link>
		<comments>http://mobilitydojo.net/2011/09/20/exchange-activesync-building-blocks-provisioning/#comments</comments>
		<pubDate>Tue, 20 Sep 2011 21:00:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1564</guid>
		<description><![CDATA[I hope you've all been following along and gained a deeper understanding of the Exchange ActiveSync protocol, and possibly had time to play with coding something yourself if you are so inclined. We should at this time be able to do the initial FolderSync with Exchange, and handle most errors thrown at us. 

There are of course tons of things ActiveSync I haven't covered yet, and it is a "one step at a time" journey. 

If you're testing against an Exchange Server where you do not have direct access to the admin console, and it is under the control of an Exchange admin who doesn't permit just about anyone to sync you might have run into issues related to provisioning already, so the next step for us is to cover this very topic.

Provisioning is the mechanism which ensures that ActiveSync clients implement a given set of security policies. If necessary; Exchange Server will block devices that don't implement the policy set.

(...)

Follow along as I show in code how to perform the provisioning process, or bypass it for that matter :)]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/09/20/exchange-activesync-building-blocks-provisioning/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; AS-WBXML</title>
		<link>http://mobilitydojo.net/2011/09/07/exchange-activesync-building-blocks-as-wbxml/</link>
		<comments>http://mobilitydojo.net/2011/09/07/exchange-activesync-building-blocks-as-wbxml/#comments</comments>
		<pubDate>Wed, 07 Sep 2011 20:00:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1562</guid>
		<description><![CDATA[I have referred to WBXML a couple of times in this series, but so far not going into any detail other than generically describing it as "ActiveSync language". I'm not attempting to make this seem like "magic" or anything, but when I started hacking around with the Exchange ActiveSync protocol myself I felt that I had to get comfortable with the basic concepts before going into this. 

If you recall when we made our first sync attempt with the FolderSync command in a POST I included the following variable as the content of the POST: 
(...)
I have no idea why I thought it logical to define the bytes with their decimal value rather than the hexadecimal value (which I have used in later WBXMLs). Still; this is a rather short and sweet snippet of WBXML so we should be able to decode it manually by using a lookup table. I've converted the values to hex, and "translated" each byte to the plain xml representation. 

Read on for more fun with binary xml.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/09/07/exchange-activesync-building-blocks-as-wbxml/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; Error Handling</title>
		<link>http://mobilitydojo.net/2011/09/01/exchange-activesync-building-blocks-error-handling/</link>
		<comments>http://mobilitydojo.net/2011/09/01/exchange-activesync-building-blocks-error-handling/#comments</comments>
		<pubDate>Thu, 01 Sep 2011 20:00:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1560</guid>
		<description><![CDATA[If you've followed the past couple of articles you'll no doubt have noticed I haven't gone out of my way to handle exceptions and errors gracefully. If you run into a problem when running the sample code against an Exchange that for some reason is configured differently than mine, (also known as entirely wrong by definition), you might run into the very helpful "Something happened" message without further explanation.

One might be tempted to ask if it's because I'm lazy, or simply do not know how to handle it. Well, ask no more, because I now intend to do something about it :)
(..)
Listing two methods for handling exceptions and errors]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/09/01/exchange-activesync-building-blocks-error-handling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; First Sync</title>
		<link>http://mobilitydojo.net/2011/08/24/exchange-activesync-building-blocks-first-sync/</link>
		<comments>http://mobilitydojo.net/2011/08/24/exchange-activesync-building-blocks-first-sync/#comments</comments>
		<pubDate>Wed, 24 Aug 2011 21:30:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1558</guid>
		<description><![CDATA[Background reading (not a pre-requisite):
 [MS-ASHTTP] - ActiveSync HTTP Protocol - OPTIONS
 [MS-ASCMD] - ActiveSync Command Reference – FolderSync
 Digging Into The Exchange ActiveSync Protocol

If you followed along with the Autodiscover coding session you have now passed the initial hurdle of locating an ActiveSync-enabled Exchange Server. So how about we try to make a connection with that server and fetch some information from it?

There are three steps you can take in this process, where the last one will also establish a synchronization partnership with Exchange:
 - HTTP GET
 - HTTP OPTIONS
 - HTTP POST

Yes, that's a very generic description, so let's describe them further.
 (...)]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/08/24/exchange-activesync-building-blocks-first-sync/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; Autodiscover</title>
		<link>http://mobilitydojo.net/2011/08/18/exchange-activesync-building-blocks-autodiscover/</link>
		<comments>http://mobilitydojo.net/2011/08/18/exchange-activesync-building-blocks-autodiscover/#comments</comments>
		<pubDate>Thu, 18 Aug 2011 19:00:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1486</guid>
		<description><![CDATA[Background reading (not a pre-requisite): 
EAS MD 1.4 - Autodiscover Support 
blogs.msdn.com - Autodiscover for ActiveSync Developers 
[MS-ASCMD] -ActiveSync Command Reference - Autodiscover

So, enough with the excuses. Give us something we can compile, that we can use in an actual ActiveSync client, that is relevant – just something already.

Where to start with a topic like the Exchange ActiveSync protocol? I decided that although it’s kind of in reverse order if you use my EAS MD utility as the yardstick, I wanted to cover the last feature I implemented first in this series (Hey, that means I might still have the code fresh in mind, right?)

There is a reason I do it in this order. When building my tool Autodiscover wasn’t initially on top of the list of issues I had when testing and verifying Exchange Server ActiveSync setups. (I think figuring out the provisioning process was on top of my list actually.)  
But at the same time – when you configure an ActiveSync client one of the first things you have to be aware is the address to your Exchange Server. While this is not a big problem to solve by manually typing in the address it does feel smoother just typing your email address accompanied by your password and have the device figure out the rest of it. And while most IT pros will be able to figure out the address to the Exchange Server, (unless your Exchange admin is refusing to let you in on it), many end-users have no idea what Exchange even means. They usually have a clue as to what their email address might be though, so that might be a good starting point on their quest to get mail and “stuff” on their devices.

As it turns out it’s also one of the easier parts of the protocol to get started with, as you don’t have to concern yourself with WBXML and such. I’ve previously explained how Autodiscover works in general, so read up on that if you’re a bit unsure as to what we’re talking about here. (Link on top of this post.)
(...)
Getting down to real coding - implementing the Autodiscover tests.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/08/18/exchange-activesync-building-blocks-autodiscover/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks&#8211;Warming Up</title>
		<link>http://mobilitydojo.net/2011/08/16/exchange-activesync-building-blockswarming-up/</link>
		<comments>http://mobilitydojo.net/2011/08/16/exchange-activesync-building-blockswarming-up/#comments</comments>
		<pubDate>Tue, 16 Aug 2011 20:00:09 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1507</guid>
		<description><![CDATA[Following up on last week’s premise of delivering some Exchange ActiveSync protocol hacking I thought I’d get it semi-started with covering code common to later articles.

My language of choice will as stated be C#. I know you can do this stuff in Java, PHP, and whatnot, but I had to make a decision as to what I would be using and C# felt natural. I will be writing code compatible with .NET 3.5 unless something else is indicated. (For instance if I run into a feature which requires .NET 4.0.)
(...)
I warm up for the building block that are to follow - which will contain more complete code samples.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/08/16/exchange-activesync-building-blockswarming-up/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Exchange ActiveSync Building Blocks &#8211; Intro</title>
		<link>http://mobilitydojo.net/2011/08/10/exchange-activesync-building-blocks-intro/</link>
		<comments>http://mobilitydojo.net/2011/08/10/exchange-activesync-building-blocks-intro/#comments</comments>
		<pubDate>Wed, 10 Aug 2011 21:00:25 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[ActiveSync]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Exchange]]></category>
		<category><![CDATA[How-to's]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1496</guid>
		<description><![CDATA[I mentioned when petitioning feature requests for EAS-MD that I was considering open-sourcing this utility in some form. I haven't decided on all the details there yet, but I am sort of starting it off now with a series of posts describing, (along with code), the ActiveSync features I'm using in my utility in further details. While having code readily available is a good thing I believe explanations and samples are perfect complements if the object is to learn. Learning by doing is great, but learning by trial-and-error not necessarily equally so. (Sometimes we don't care how things work, and just want a pre-built black-box component, but that isn't my primary intent with this site. And besides – you can just use my “official” app for troubleshooting your ActiveSync deployment if you do not need to understand all this stuff. I do understand that most people aren’t that into ActiveSync )

This is the introductory post, which will serve to answer some general questions as well as being updated with links to new posts as they appear.
]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/08/10/exchange-activesync-building-blocks-intro/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Mobile Video Consumption &#8211; Serving it Up</title>
		<link>http://mobilitydojo.net/2011/01/18/mobile-video-consumption-serving-it-up/</link>
		<comments>http://mobilitydojo.net/2011/01/18/mobile-video-consumption-serving-it-up/#comments</comments>
		<pubDate>Tue, 18 Jan 2011 14:00:00 +0000</pubDate>
		<dc:creator>Andreas</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[How-to's]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Windows Phone]]></category>

		<guid isPermaLink="false">http://mobilitydojo.net/?p=1360</guid>
		<description><![CDATA[So now we’ve looked at how to produce some content – both experimenting with some output formats and some specific input formats. If you’re still following me here’s the last part in this introduction to consuming video at home and on the go. (I might make follow-up articles but at this point I’m sure you’d like to get started actually doing something.)

There’s nothing wrong with transferring the files to your device through a USB cable or similar, but this is about mobility – what will we do when we aren’t at home and need to watch a video or two? We load the content on a server, and test out the streaming options of course!
(...)
Taking a look at how to make content available through a browser, and examining what works on which mobile device platforms.]]></description>
		<wfw:commentRss>http://mobilitydojo.net/2011/01/18/mobile-video-consumption-serving-it-up/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

