Archive for September, 2015

download Microsoft Ignite New Zealand

New Zealand’s largest, annual tech event returns in its 20th year to SKYCITY and Vector Arena from September 1 – 4. Previously known as TechEd NZ, this gathering of the brightest Kiwi techies has become Ignite NZ. If you couldn’t attend the event, and even if you could, you probably couldn’t attend all the great sessions available. That is why I created this PowerShell Script so everyone can easily download them whether they were present at Ignite or not! Here are the features:

  • Downloads all the Microsoft Ignite New Zealand 2015 Sessions and Slides
  • Groups them by folders
  • Makes sure no errors come up due to Illegal File names.
  • If you stop the script and restart in the middle, it will start where it left off and not from beginning
  • Filter by keywords in the session title!

*Total size of videos will be updated when conference finishes & all sessions will be posted online!

 

 

Download the script from here!  Do not copy paste from source code below!

How to use: 

  • To download all sessions just run the script! EX:

.\IgniteNZ2015VidandSlides.ps1

  • To download sessions based on a keyword use the keyword parameters, and divide keywords by a comma. Make sure to use quotes around the keywords! EX:

.\IgniteNZ2015VidandSlides.ps1 -keyword “SharePoint,Azure,System Center”

  • To download sessions based on the session code, use the session parameter and divide sessions by a comma. Make sure to use quotes around the session codes!

.\IgniteNZ2015VidandSlides.ps1 -session “M216,M258″

Here is the source code:


#Script written by Vlad Catrinescu
#Visit my site www.absolute-sharepoint.com
#Twitter: @vladcatrinescu
#Originally Posted here: http://absolute-sharepoint.com/2015/05/the-ultimate-script-to-download-microsoft-ignite-videos-and-slides.html
#Contributors: Dan Holme, Jeff Collins, Steve Beaugé 

Param(
  [string]$keyword,[string]$session
)

######    Variables  #####

#Location - Preferably enter something not too long to not have filename problems! cut and paste them afterwards
$downloadlocation = "C:\IgniteNZ2015"
#Ignite 2015 Videos RSS Feed
[Environment]::CurrentDirectory=(Get-Location -PSProvider FileSystem).ProviderPath
$rss = (new-object net.webclient)
$video1 = ($rss.downloadstring("http://s.ch9.ms/events/ignite/Microsoft-Ignite-New-Zealand-2015/rss/mp4high"))
$slide1 = ($rss.downloadstring("https://channel9.msdn.com/Events/Ignite/Microsoft-Ignite-New-Zealand-2015/RSS/slides"))

#other qualities for the videos only. Choose the one you want!
# $a = ($rss.downloadstring("http://channel9.msdn.com/events/ignite/2015/rss/mp4"))
# $a = ($rss.downloadstring("http://channel9.msdn.com/events/ignite/2015/rss/mp3")) 

#SCRIPT/ Functions  Do not touch below this line :)#
if (-not (Test-Path $downloadlocation)) {
		Write-Host "Folder $fpath dosen't exist. Creating it..."
		New-Item $downloadlocation -type directory | Out-Null
	}
set-location $downloadlocation

function CleanFilename($filename)
{
    return $filename.Replace(":", "-").Replace("?", "").Replace("/", "-").Replace("<", "").Replace("|", "").Replace('"',"").Replace("*","")
}

function DownloadSlides($filter,$videourl)
{
    try
    {
        $videourl.rss.channel.item | Where{($_.title -like “*$filter*”) -or ($_.link -like "*/$filter")} |
        foreach {
	        $code = $_.comments.split("/") | select -last 1	   

	        # Grab the URL for the PPTX file
	        $urlpptx = New-Object System.Uri($_.enclosure.url)
            $filepptx = $code + "-" + $_.creator + "-" + (CleanFileName($_.title))
	        $filepptx = $filepptx.substring(0, [System.Math]::Min(120, $filepptx.Length))
	        $filepptx = $filepptx.trim()
	        $filepptx = $filepptx + ".pptx"
	        if ($code -ne "")
	        {
		         $folder = $code + " - " + (CleanFileName($_.title))
		         $folder = $folder.substring(0, [System.Math]::Min(100, $folder.Length))
		         $folder = $folder.trim()
	        }
	        else
	        {
		        $folder = "NoCodeSessions"
	        }

	        if (-not (Test-Path $folder)) {
		        Write-Host "Folder $folder dosen't exist. Creating it..."
		        New-Item $folder -type directory | Out-Null
	        }

	        # Make sure the PowerPoint file doesn't already exist
	        if (!(test-path "$downloadlocation\$folder\$filepptx"))
	        {
		        # Echo out the  file that's being downloaded
		        write-host "Downloading slides: $filepptx"
		        #$wc = (New-Object System.Net.WebClient)  

		        # Download the MP4 file
		        #$wc.DownloadFile($urlpptx, "$downloadlocation\$filepptx")
                Start-BitsTransfer $urlpptx "$downloadlocation\$filepptx" -DisplayName $filepptx
		        mv $filepptx $folder 

	        }
            else
            {
   		        write-host "Slides exist: $filepptx"
            }
	    }

     }

    catch
    {
        $ErrorMessage = $_.Exception.Message
        Write-host "$ErrorMessage"
    }
}

function DownloadVideos($filter,$slideurl)
{
#download all the mp4
# Walk through each item in the feed
$slideurl.rss.channel.item | Where{($_.title -like “*$filter*”) -or ($_.link -like "*/$filter*")} | foreach{
	$code = $_.comments.split("/") | select -last 1	   

	# Grab the URL for the MP4 file
	$url = New-Object System.Uri($_.enclosure.url)  

	# Create the local file name for the MP4 download
	$file = $code + "-" + $_.creator + "-" + (CleanFileName($_.title))
	$file = $file.substring(0, [System.Math]::Min(120, $file.Length))
	$file = $file.trim()
	$file = $file + ".mp4"  

	if ($code -ne "")
	{
		 $folder = $code + " - " + (CleanFileName($_.title))
		 $folder = $folder.substring(0, [System.Math]::Min(100, $folder.Length))
		 $folder = $folder.trim()
	}
	else
	{
		$folder = "NoCodeSessions"
	}

	if (-not (Test-Path $folder)) {
		Write-Host "Folder $folder) dosen't exist. Creating it..."
		New-Item $folder -type directory | Out-Null
	}

	# Make sure the MP4 file doesn't already exist

	if (!(test-path "$folder\$file"))
	{
		# Echo out the  file that's being downloaded
		write-host "Downloading video: $file"
		#$wc = (New-Object System.Net.WebClient)  

		# Download the MP4 file
		Start-BitsTransfer $url "$downloadlocation\$file" -DisplayName $file
		mv $file $folder
	}
    else
    {
   		write-host "Video exists: $file"
    }

#text description from session
	$OutFile = New-Item -type file "$($downloadlocation)\$($Folder)\$($Code.trim()).txt" -Force
    $Category = "" ; $Content = ""
    $_.category | foreach {$Category += $_ + ","}
    $Content = $_.title.trim() + &quot;<code>r</code>n&quot; + $_.creator + &quot;<code>r</code>n&quot; + $_.summary.trim() + &quot;<code>r</code>n&quot; + &quot;<code>r</code>n&quot; + $Category.Substring(0,$Category.Length -1)
   add-content $OutFile $Content

	}
}

if ($keyword)
{
    $keywords = $keyword.split(&quot;,&quot;)

    foreach ($k in $keywords)
    {
        $k.trim()
        Write-Host &quot;You are now downloading the sessions with the keyword $k&quot;
        DownloadSlides $k $slide1
        DownloadVideos $k $video1
    }
}
elseif ($session)
{
    $sessions = $session.Split(&quot;,&quot;)

    foreach ($s in $sessions)
    {
        $s.trim()
        Write-Host &quot;You are now downloading the session $s&quot;
        DownloadSlides $s $slide1
        DownloadVideos $s $video1
    }

}
else
{
    DownloadSlides &quot; &quot; $slide1
    DownloadVideos &quot; &quot; $video1
}
No ratings yet.

Please rate this

InfoPath, everyone’s favorite forms-creation and data-gathering tool that helps organizations streamline business processes is now available as a standalone download on the Microsoft Download Center.

After it was doomed to be discontinued and replaced by an advanced FoSL solution, InfoPath won the battle and is currently the only out of the box Microsoft product to create and modify custom forms in SharePoint. If you want to read the whole story, check out this blog post: InfoPath is back in SharePoint 2016 & FoSL vNext is dead!

 

InfoPath 2013 Standalone

Since InfoPath 2013 is the last version of InfoPath, it will not be included in the Office 2016 suite as it was previously. So, Microsoft just posted the standalone version of the product on the Microsoft Download Center. One important thing to note is:

“The download and use of InfoPath 2013 software requires an active Office 365 ProPlus subscription.”

So, if you want to use InfoPath 2013 with Office 2016, you will need to have an active ProPlus subscription on Office 365, and not just the Office 2016 license. I did not test to see if this policy is enforced, but if anyone does, please tell me in the comments!

Here is the download link for the InfoPath 2013 for Office 365 ProPlus Subscription standalone client: https://www.microsoft.com/en-us/download/details.aspx?id=48734

Share this blog post with your followers on twitter by clicking the birdie below!

Leave a comment and don’t forget to like the Absolute SharePoint Blog Page   on Facebook and to follow me on Twitter here  for the latest news and technical articles on SharePoint.  I am also a Pluralsight author, and you can view all the courses I created on my author page.

No ratings yet.

Please rate this