Changing the primary email address for Office 365 users

This content is 13 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

In my recent post about configuring DNS for Office 365, I mentioned that Microsoft creates mailboxes in the form of user@subdomain.onmicrosoft.com.  I outlined the steps for adding so-called “vanity” domains, after which additional (proxy) email addresses can be specified but any outbound messages will still be sent from the onmicrosoft.com address (at least, that’s what’s used in the beta – I guess that may change later in the product’s lifecycle).

It is possible to change the primary address for a user (e.g. I send mail using an address on the markwilson.co.uk domain) but it does require the use of PowerShell.  Time to roll up your sleeves and prepare to go geek!

Connecting to Office 365 from Windows PowerShell

I was using a Windows 7 PC so I didn’t need to update any components (nor do Windows Server 2008 R2 users); however Windows XP SP3, Server 2003 SP2, Server 2008 SP1 or SP2 and Vista SP1 users will need to make sure they have the appropriate versions of Windows Powershell and Windows Remote Management installed.

Once PowerShell v2 and WinRM 2.0 are installed, the steps to connect to Office 365 were as follows:

Prompt for logon credentials and supply the appropriate username and password:

$LiveCred = Get-Credential

Create a new session:

$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection

Import the session to the current PowerShell console:

Import-PSSession $Session

At this point, the session import failed for me because script execution was disabled on my machine. That was corrected using Set-ExecutionPolicy -ExecutionPolicy unrestricted (although that’s not a great idea – it would be better to use a lower level of access) – I also had to run PowerShell as an administrator to successfully apply that command.

Once scripts were enabled, I was able to import the session.

List the current mailbox addresses

It’s possible that a mailbox may have a number of proxy addresses already assigned, so this is the code that I used to list them:

$Mailbox = Get-Mailbox -Identity Mark-Wilson
$Mailbox.EmailAddresses

If you want to format the list of mailboxes as a single comma-separated line, then this might help:

ForEach ($i in $Mailbox.EmailAddresses) {Write-Host $i -NoNewline “`b, “}

(the `b is a backspace escape character.)

Set the primary email address

The primary email address is shown using an upper case SMTP: prefix whereas proxy addresses use a lower case smtp: prefix.

To change the primary email address, it’s necessary to reset all addresses on the mailbox with the Set-Mailbox cmdlet.  This is where some copying/pasting of the output from the previous command may help:

Set-Mailbox Mark-Wilson -EmailAddresses SMTP:mark@markwilson.co.uk,smtp:mark-wilson@markwilson.onmicrosoft.com,smtp:mark@markwilson.it

Disconnect the session from Office365

Once all changes have been made, it’s good practice to break down the session again:

Remove-PSSession $Session

Configuring DNS for Exchange Online in Office 365

This content is 13 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

Readers who follow me on Twitter (@markwilsonit) may have noticed that I was in a mild state of panic last night when I managed to destroy the DNS for markwilson.co.uk.  They might also have seen this website disappear for a few hours until I managed to get things up and running again. So, what was I doing?

I’ve been using Google Apps for a couple of years now but I’ve never really liked it – Docs lacks functionality that I have become used to in Microsoft Office and Mail, though powerful, has a pretty poor user interface (a subjective view of course – I know some people love it).  When Microsoft announced Office 365 I was keen to get on the beta, and I was fortunate enough to be accepted early in the programme.  Unfortunately, at that time, the small business (P1) plan didn’t allow the use of “vanity domains” (what exactly is vain about having your own domain name? I call it professionalism!) so I waited until I was accepted onto the enterprise (E3) beta. Then I realised that moving my mail to another platform was not a trivial exercise and, by the time I got around to it several weeks had gone by and it is now possible to have vanity domains on a small business plan!

Anyway, I digress: migrating to Office 365, how was it? Well, first up, I should highlight that the DNS issues I had were nothing to do with Microsoft – and, without those issues, everything would have been pretty simple actually.

Microsoft provides a portal to administer Office 365 accounts and this also allows access to the Exchange Online, Lync Online and SharePoint Online components.  In that regard, it’s not dissimilar to Google Apps – just a lot more pleasant to use. So far, I’ve concentrated on the Exchange Online and Outlook Web App components – I’ll probably blog about some of the other Office 365 components as I start to use them.

The e-mail address that Microsoft gave me for my initial mailbox is in the form of user@subdomain.onmicrosoft.com. That’s not much use to me, so I needed to add a domain to the account which involves adding the domain, verifying it (by placing a CNAME record in the DNS for the appropriate domain – using a code provided by Microsoft, resolving to ps.microsoftonline.com.) and then, once verified, configuring the appropriate DNS records. In my case that’s:

markwilson.co.uk. 3600 IN MX 0 markwilson-co-uk.mail.eo.outlook.com.
autodiscover 3600 IN CNAME autodiscover.outlook.com.
markwilson.co.uk. 3600 IN TXT “v=spf1 include:outlook.com ~all”

These are for Exchange – there are some additional records for Lync but they show how external domain names are represented inside Office 365.

[Update 17 June 2011: The DNS entries for Lync are shown below]

SRV _sip _tls 443 1 100 sipdir.online.lync.com. markwilson.co.uk 3600
SRV _sipfederationtls _tcp 5061 1 100 sipfed.online.lync.com. markwilson.co.uk 3600

The . on the end of the names and the quotes on the TXT record are important – without the . the name resolution will not work correctly and I think it was a lack of " " that messed up my DNS when I added the record using the cPanel WebHost Manager (WHM), although I haven’t confirmed that.

With the domain configured, additional email addresses may be added to user accounts and, once DNS propagation has taken place, mail should start to flow.

Before I sign off, there are a few pieces of advice to highlight:

  • After I got everything working on the Office 365 Enterprise (E3) plan, I realised that I’d be better off using the Small Business (P1) plan. This wasn’t a simple subscription choice (I hope it will be in the final product – at the time of writing Office 365 is still in beta) and it involved me removing my “vanity” domains from all user objects, distribution groups, contacts and aliases, then removing the domain from Office 365, and finally going through the process of adding it using a different Microsoft Online account.
  • Before making DNS changes, it’s worthwhile tuning DNS settings to reduce the time to live (TTL) to speed up the DNS propagation process by reducing the time that records are stored in others’ DNS caches.
  • Microsoft TechNet has some useful advice for checking DNS MX record configurations with nslookup.exe but Simon Bisson pointed me in the direction of the Microsoft Exchange Remote Connectivity Analyzer, which is a great resource for checking Exchange ActiveSync, Exchange Web Services and Office Outlook connectivity as well as inbound and outbound SMTP email.
  • Microsoft seems to have decided that, whilst enterprises can host their DNS externally, small businesses need to host their DNS on Microsoft’s name servers (and use a rather basic web interface to manage it).  I’m hoping that decision will change (and I’m led to believe that it’s still possible to host the DNS elsewhere, as long as the appropriate entries are added, although that is an unsupported scenario) – I’m trying that approach with another domain that I own and I may return to the topic in a future blog post.

Now I have my new mailbox up and running, I just need to work out how to shift 3GB of email from Google Apps to Exchange Online!

Changing text colours and fonts in a PowerPoint theme

This content is 13 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

I spent a good chunk of yesterday afternoon working on a presentation that I need to deliver tomorrow.  We have a corporate presentation template but it only really covers the basics (background, standard fonts, etc.).  I wanted to change the colour of hyperlinks (because the default blue/purple, depending on whether the link has been clicked or not, did not fit well with the other colours on my slides) but I couldn’t work out how until I stumbled across a blog post from Springhouse Education and Consulting Services.

It seems that the secret sauce is:

  1. Go to the Design tab
  2. In the top right of the Themes grouping, click on the Colors down arrow
  3. Select Create New Theme Colors located at the bottom of the list
  4. Select the desired color for the Hyperlink as well as the Followed Hyperlink

[Springhouse Education and Consulting Services]

Whilst I was messing around with font colours, I also added a new font to the theme (we have a corporate typeface that’s used in our external communications but not normally used internally). To do that:

  1. Go to the Design tab
  2. In the top right of the Themes grouping, click on the Fonts dropdown
  3. Select Create New Theme Fonts located at the bottom of the list
  4. Select the desired fonts for the Headings as well as the Body

These instructions are for PowerPoint 2007 but I’m sure the process is similar in PowerPoint 2010.

Update on my Fit at 40 challenge

This content is 13 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

It’s been a couple of months now since I wrote an update on my Fit at 40 challenge so here’s how I’m doing, in a nutshell:

It’s tough

April included a number of events including my birthday and the Easter holidays but I was doing pretty well – my weight yo-yoed a bit but was heading down overall (I got down to 105kg/16st 8lb) and my mileage was increasing with the runs even if my pace was dropping (towards the end of April I managed my first 5 mile run and, for the first time, I was geniunely confident that I can do a 10K).  Unfortuately I lost my way a little when I ran the Harrold Pit Run – a 4.8km (3 mile) race which I ran/walked last year in just under 33 minutes (my first race) and this year I ran (not walked) it a full 5 minutes slower. I was gutted.

I was a difficult day: the race is in the afternoon and it was hot; we’d had a  a Royal Wedding street party the day before and, although I’d been careful not to eat/drink too much, I’ve since learned that drinking beer the day before a run is not a good idea; and it had been a pretty full-on week as I was attempting to redecorate my office, have a new carpet fitted, and put it all back together again in 4 days. Added to that, I was pretty emotional. It was the first time I’d run in The Prostate Cancer Charity‘s t-shirt, complete with a note on my back advertising my fundraising site and someone said “good on you” as they ran past me.  I’m pretty sure that they were referring to my cause (not the snail’s pace I was jogging at) and that got me thinking about why I was doing it – which seemed to upset me, rather than help me get going. To say I was dissappointed with the result would be an understatement – it was all I could do not to burst into tears at the finish line.

The rest of that final weekend in April was no better either – I’m not sure how, but I finished the 4-day weekend 5lbs heavier than I started it.

The good news is that I’m back on the wagon, watching what I’m eating again, and pushing to lose another half-stone or so before the BUPA London 10K at the end of the month.  In the first week of May I managed to run a 3.4 and a 5 mile loop (albeit in 12+2 run/walk intervals), so I know I can cover the distance – all that remains is to increase my pace (and hopefully cut out some of the walking). My workload has been crazy, which doesn’t help the stress levels but I’m determined to complete the course – there’s too much at stake now!

I’ll let you know how I get on with the BUPA London 10K at the end of the month!

BUPA London 10,000

Attempting to track RSS subscribers on a WordPress blog

This content is 13 years old. I don't routinely update old blog posts as they are only intended to represent a view at a particular point in time. Please be warned that the information here may be out of date.

As well as my own website (which has precious little content these days due to my current workload), I also manage the Fujitsu UK and Ireland CTO Blog. Part of that role includes keeping an eye on a number of metrics to make sure that people are actually interested in what we have to say (thankfully, they seem to be…). Recently though, I realised that, whilst I’m tracking visitors to the blog, I’m missing hits on the RSS feed (because it’s not actually a page with the tracking script included) - and that’s a problem.

There are ways around this (I use Google Feedburner on my own blog, or it’s possible to put a dummy page with a meta refresh in front of the feed to pick up some metrics) but they have their own issues (for example the meta refresh methods breaks autodiscovery for some RSS readers) and will only help with new subscribers going forwards, not with my legacy issue of how many subscribers do I have right now.

There is another approach though: using a popular web-based RSS subscription service like Google Reader to see how many subscribers it tracks for our feed (the same metrics are available from Google’s Webmaster Tools).  The trouble is, that’s not all of the subscribers (for example, a good chunk of people use Outlook to manage their feeds, or other third-party RSS readers). If I use my own blog as an example, Google Reader shows that I have 247 subscribers but Feedburner says I have 855.  Those subscribers come from all manner of feed readers and aggregators, email subscription services and web browsers (Firefox accounts for almost 20% of them) so it’s clear that I’m not getting the whole picture from Google’s statistics. 

Google Reader Subscribers

Google Feedburner Subscribers

Does anyone have any better ideas for getting some subscriber stats for RSS feeds on a WordPress blog using Google Analytics? Or maybe from the server logs?