Posts Tagged ‘Windows Live’
New lab added: Live Mail
Today, after much work to convert my code that relied on Neowin’s backbone to help control the system, I have added my system which ties into Windows Live Custom Domains (see: Windows Live Custom Domains Is Cool) and allows you to create a custom e-mail account that is powered by Windows Live Mail.
This registration application gives you the chance to see how you can integrate Windows Live Mail into your site by giving your visitors an e-mail address that has some relation to your domain. At Neowin we provide a variety of domain name choices for members and some exclusive ones for subscribers. All of our e-mail domains have the Neowin name in them and provide recognition of our site to the users who exchange messages with these e-mail address.
If you don’t want to invest resources into running a full e-mail server but want to offer extra site service, Custom Domains is the way to go.
Feel free to give the Live Mail registration a try at the labs site: Live Mail @ blackice912 labs
I am a big fan of Windows Live Custom Domains (WLCD). Microsoft’s custom service is basically a way for you to offer members of your website a custom e-mail address that identifies them as users of your website. It can also be setup so only you can hog it all to yourself and share with nobody, but what’s the fun in that?
WLCD allows for three methods of e-mail address registration: Open, Manual, and SOAP.
With Open registration you can create a link on your site to a form hosted by Microsoft that walks the user through the creation of an e-mail account.
With Manual registration your domain is locked down. This means that nobody can create any e-mail addresses except for you inside of the admin panel. There is no real advantage to this unless you only plan to setup a few e-mail accounts.
With the Simple Object Access Protocol (SOAP), you have the power at your fingertips. By locking your domain name down to prevent open registration, you can have your users sign up through your SOAP-based registration page. This method gives you a great deal of power on who you want to give registration access to and what domain names you want to offer them.
Since we are communicating with Microsoft’s service using the XML commands they have designed, we can build a complete e-mail management system around that tool. Over at Neowin I designed the system so you have to be a registered member of the site in order to have access to a Neowin e-mail account. Also, depending on your membership level, there are various domain names to pick from.
Once a user fills out the form and submits it, our code connects to the Microsoft servers and pushes the XML request for account creation. If the server replies that the account has been created, we inform the user and instruct them on how to proceed next. In the code I wrote for Neowin there is also a local database where we keep track of the e-mail accounts created, as we are limiting one account per user. If a user were to try and register again, they would be blocked.
So, what’s a good way to do this in PHP? For Neowin I am using NuSOAP. It is a script that helps you to build your XML queries and process the returned ones. Also by looking at the website it looks like the project is dead based on the last updated news entry, but the download page shows it was last updated in November. Do you need NuSOAP? No, as it is completely possible to perform all the XML processing yourself. In a few cases I actually had to write custom XML as NuSOAP wasn’t sending the data correctly.
So if you’re in the market for a service to provide to your users, check out Windows Live Custom Domains.
Alternatives
So what if you are not a fan of the Windows Live services and want to go for an alternative, such as Gmail? Because while WLCD is free, the Gmail counterpart is going to cost you $50/year per e-mail account (unless you fall under the Educational rules). Why Google decided to charge for their API is beyond reason, but it puts access out of reach for the average website administrator/developer.












