This project is read-only.
The main goal of this tool is to combine all Live@edu + MSDN AA ELMS technologies. It provides developer with single and simple interface.

As you might know, Live@edu + MSDN AA ELMS contains 5 technologies, each with own API and SDKs. Developer had to spend 1-2 weeks to get familiar with all technologies:
  1. Windows Live Admin Center (WLAC) - to manage Windows Live IDs and Windows Live Custom Domains.
  2. Single Sign-On (SSO) - SOAP service to provide portal users with single login to portal and Windows Live
  3. Exchange Web Services (EWS) - API to manage Exchange Server objects: e-mails, contacts, appointments
  4. PowerShell (PS) - technology to remotely manage Exchange Server
  5. MSDN Academic Alliance eAcademy License Management System and Integrated User Verification (MSDN AA ELMS and IUV) - access to Microsoft software for students under MSDN AA license.

Each of services required installation of number of classes, libraries, etc. With EFMS developer just need to put one line of code to create instance of web service, and one line for each method. No classes, no libraries at all.

How to use it

Visual Web Developer

After you've connected service to your project, put it into "using" section and do the following:

efms ws = new efms();
ws.Credentials = new System.Net.NetworkCredential("<user>", "<password>", "localhost");

How to get SSO url

string ol = ws.SSO_GetUrl(email, RedirectType.LiveHome); // OutlookLive , SkyDrive , etc. - use Intellicense for RedirectType , or you can use string overload like "";

How to get Unread messages

MailboxInfo mi = ws.EWSEmailGetCount(email);
int total = mi.all;
int unread = mi.unread;

Use IntelliSence to get list of available methods. The prefix of method matches with each of technologies described previously in this article.

Usage in PHP

You can also use it from PHP.

  1. Make sure that soap library in PHP is installed.
  2. Basic authentication must be enabled in IIS
  3. Enable SSL in IIS

The example of code located here: PHP Example.

How to run overloaded methods:

Open http://localhost:1180/service.asmx for list of methods and descriptions. Don't forget to change localhost and 1180 to actual values of your installation.


1. Install web-service and add first organization during installation (please consider to get familiar with
2. Open administrator's website
3. Create new user, add organization (if you don't have MSDN ELMS, put spaces in according fields), add site (SiteID and NOPASS<your school name>...pfx certificate
4. Add accounts (At this point I'd recommend to use domain administrator's Windows Live ID for all 3 types of account, don't check "Create account" checkboxes, apply EWS impersonation rights to administrator account manually*)
5. Add domains (you can add primary and accepted domains here - webservice will distinguished passed user and automatically assign user to domain/organization).
6. Each user to manage their own organizations, they need to login into administrator's website.

Important! Refer to manual for details (for example, UAC needs to be switched off, etc.).


  • Set Up PowerShell

Refer to official Outlook Live Help System .
  • Connect to PowerShell

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $LiveCred -Authentication Basic -AllowRedirection
import-pssession $session
  • Add Impersonation rights

New-ManagementRoleAssignment -Name EWSadmin -Role ApplicationImpersonation -User

Last edited Jun 15, 2011 at 3:50 PM by nikitausachev, version 10


No comments yet.