If you are looking for a way to import user photos to Exchange 0365 in bulk through SharePoint site, you can use the following custom action:
The logic behind is to create a photo gallery where you will upload the photos, and you could make the filename of each image be the username of that particular user.
$myUrlSite = "https://<Domain>.sharepoint.com" $format = ".jpeg" #retrieve the current ps credential object from the sharepoint connection $cred = Get-PnPConnection #here you have to change the site context because we use the admin site when we open a Sharepoint connection Connect-PnPOnline -Url $myUrlSite -Credentials ($cred.PSCredential) $photos = @(Get-PnPFolderItem -FolderSiteRelativeUrl "photos" -ItemType File) foreach( $photo in $photos){ if( $photo.Name.Contains("@<Domain name>.com")){ $memoryStream = New-Object System.IO.MemoryStream $streamResult = $photo.OpenBinaryStream() Invoke-PnPQuery $streamResult.Value.CopyTo( $memoryStream) $imageArray = $memoryStream.ToArray() Set-UserPhoto -Identity $photo.Name.Replace($format, '') -PictureData $imageArray -Confirm: $false } }
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article