TechEd 2014, Day 3…

Today’s TechEd Day 3 went by pretty fast for me.  So fast, in fact, that I didn’t really get a chance to gather all my notes for the day. 

But truth be told, I actually spent a lot of time in the session course catalog today, taking note of 1.) the courses I attended, and 2.) the courses I could not attend, but wanted to (there’s just never enough time).

Why did I do this?  Because the other thing I did today was to write a hasty script that grabs the videos and slide shows for all the courses in which I am interested (mostly to catching those I missed).

And so here it is, for all my TechEd peeps…  It’s a “how-to” to help you grab the content you missed and help us all keep our heads just above water another few days.  😉

Step 1

First, go to the TechEd 2014 Session catalog and figure out which session Videos and PowerPoints you want.  Note the “code” at the beginning of each, in this format: XXXX-X999

Step 2

Next, create a folder.  I created C:TempGetVideos   …Yes, original, I know. 

Step 3

In that folder you created, make a text file called “MySessionIdList.txt”, and paste in a list of the session IDs, one-per-line, like this:


…and so on. 

Step 4

Again, in that same folder, create a text file called something like I did, “GetSessionVideos.ps1”, and paste in the following code:

Import-module bitstransfer
$inputFile = "mySessionIdList.txt"
$mySessionList = Get-Content $inputFile
$myUrlPathParent = ""
# For pete's sake, do NOT show this to Don Jones! I can't take that level of criticism! ;)
foreach ( $sessionId in $mySessionList )
  # Check to see if the file is present before attempting to download
  if (!(Test-Path "$sessionId.pptx"))
    # Yep, the dreaded Write-Host, because I actually want to watch the script run...
# I'm crazy like that...
    Write-Host "Getting $sessionId.pptx..."
    # Get the PPTX
    start-bitstransfer -source "$myUrlPathParent/$sessionId.pptx" -destination "$sessionId.pptx" 
    write-host "Already have $sessionId.pptx, skipping..."
  # Check to see if the file is present before attempting to download
  if (!(Test-Path "$sessionId-mobile.mp4"))
    # Go ahead and revoke my MVP, Don...
    Write-Host "Getting $sessionId-mobile.mp4..."
    # Get the MP4
  start-bitstransfer -source "$myUrlPathParent/$sessionId-mobile.mp4" -destination "$sessionId-mobile.mp4" 
    write-host "Already have $sessionId-mobile.mp4, skipping..."

…And run that script in a Powershell session to get your videos!  Of course,you can modify the code to suit your tastes, but this simple set of instructions should get you going.

Now don’t over-do it, since I’m trying to remotely download the files to be ready for me when I get home — so don’t gobble up all the available bandwith/capacity!  😉

Have fun learning!

Update, 201405021:

Thanks to Jason Shaw for pointing out that the original post only worked with Windows 8.1 or Server 2012R2, and for providing some code to make it work for older OSs. Thanks!


2017-07-27T00:01:02+00:00 May 14th, 2014|Uncategorized|

About the Author:

Jeremy is just a regular guy that likes to occasionally tell the world about stuff.