So I'm starting to get ready for Ignite next week. This year my attendance is down to a single day so I wanted to make sure I got the most out of it. I used the Scheduled Builder to pick some sessions to see on Tuesday. Once that was done I thought I'd export the events to my calendar. However, I don't use Microsoft Outlook or a Windows Phone. I couldn't get the link to save an .ICS file or otherwise export my schedule. Then I remembered I know how to use PowerShell.
ManageEngine ADManager Plus - Download Free Trial
Exclusive offer on ADManager Plus for US and UK regions. Claim now!
The first step was to visit my schedule page. You can visit yours at https://myignite.microsoft.com/schedule.
Personally, I don't have any installed applications that know how to handle the webcal link you get when clicking Export Calendar. So I right-clicked and copied the link. In PowerShell I created a variable for this value. It will look something like this:
$myLink = "webcal://https://microsoftignitecontent.hubb.me/Sessions/CalendarFeed/uGJN3V..."
Before you can use it, delete everything in the URI up to https. Next, download the content using Invoke-WebRequest. I saved it to another variable.
$dl = Invoke-WebRequest $myLink -DisableKeepAlive
Finally, save the content to a file.
$d.content | set-content c:\work\myignite.ics
And that's it! From here you can open your mail or calendar program of choice and import the ICS file. Mission Accomplished!
If you prefer a one-line approach using your modified URI variable you can use something like this:
(Invoke-WebRequest $myLink -DisableKeepAlive).Content | Set-Content -Path c:\work\myignite.ics
I hope to catch up with a lot of people during my short visit. I'll be tweeting my wanderings around the event. If you see me, I'll hope you say "Hi" and let me know what you're working on.
UPDATE: I thought I remembered an even easier way to do this. I even re-read the help but apparently missed it. I went to alot of extra work when all I needed to do was this:
invoke-webrequest $mylink -OutFile c:\work\myignite.ics
I suppose another take-away is to read cmdlet help. Maybe even twice!