Thursday, November 9, 2017

Teams PowerShell download

Microsoft Teams PowerShell


Teams Cmdlets module


PS> Save-Module -Name MicrosoftTeams -Path <path>  


Open a Windows PowerShell console.
Run the Install-Module cmdlet as shown here.

PS> Install-Module -Name MicrosoftTeams -RequiredVersion <version>

MS Teams cmdlets:



Connect-MicrosoftTeams -AccountId
$group = New-Team -alias "ProductA" -displayname "Product A Planning" -AccessType "private"
Add-TeamUser -GroupId $group.GroupId -User ""
Add-TeamUser -GroupId $group.GroupId -User ""
Add-TeamUser -GroupId $group.GroupId -User ""
New-TeamChannel -GroupId $group.GroupId -DisplayName "Sales"
New-TeamChannel -GroupId $group.GroupId -DisplayName "Marketing"
New-TeamChannel -GroupId $group.GroupId -DisplayName "Service"
Set-TeamFunSettings -GroupId $group.GroupId -AllowCustomMemes true
Set-TeamPicture -GroupId $group.GroupId -ImagePath C:\Users\you\Downloads\download.png

Hide users from address book in Skype for Business

SfB On-Premise is making use of the Exchange GAL.
If you don't want users or other resources to appear in address book / GAL search in the Skype for Business client there is an easy way. Hiding contacts from GAL, by changing an AD related attribute. This could be e.g. hiding Helpdesk Team Members

This is the Exchange attribute for hiding users from the Global Address List (GAL). If this is set to TRUE, which indicates it doesn’t need to appear on the GAL, Lync will also ignore this user for the Address Book.

This sets the attribute "msExchHideFromAddressLists" to True.
It also clears the attribute "ShowinAddressBook" 

This is the Script:

$users = Get-CsAdUser -Filter {name -Like "*HelpDesk*"}
foreach ($object in $users)
      Set-ADObject -Add @{msExchHideFromAddressLists=$true} -Identity $object.DistinguishedName
      Set-ADObject –clear ShowinAddressBook -Identity $object.DistinguishedName

In this example i hide all the "HelpDesk" users from showing up in address book search.
You can change the filter to an OU too.

After running the script the objects will no longer show when you do an address book search in your Skype4B or Lync client.

Alternative ABSConfig.exe (SfB Resource Kit):

Alternative 2:

You could move users into a different OU, which should be hidden and force the CsUserReplicatorConfiguration to run only on specific OUs (DN).
Set-CsUserReplicatorConfiguration -Identity global -ADDomainNamingContextList @{Add="dc=fabrikam,dc=com"}

Exchange, SfB and SharePoint are consolidating information. Exchange and SfB share a common Contact Data Strore, (Unified Contact Store UCS), 

Monday, October 23, 2017

Violation of Terms of Service Disable in Process - Phishing Mail

Dear friends and my blog reads!
if you receive and mail like this. PLEASE IGNOR.
This is a Phishing attack mostly not from your Tenant.
But it would not be wrong, if you let all users change their passwords.

The link below has been changed and is therefore save.


From: Microsoft Office [mailto:office@microsoft]
Send: Freitag, 20. Oktober 2017 16:45
To: SfB USer Group NRW <>
Subject: Violation of Terms of Service Disable in Process

Microsoft Office365

Dear Sfbusergroup-nrw

If these disable modifications were made without your consent, please log in to your email
setting by checking blow office365

Cancel Disable Process
Thanks for taking these additional steps to keep your email safe.
Privacy | legal notices

Microsoft Office
Boulevard, Suite 200
13031 West Jefferson
Los Angeles, CA
90094 USA

You're receiving this message because you're a member of the SfB USer Group NRW group. If you don't want to receive any messages or events from this group, stop following it in your inbox.

Saturday, August 19, 2017

Outlook 2016 Pro Plus freezing with Windows 10

With the recent update to Windows 10 Creators Update, a lot user have some issues with Office 2016 Pro Plus Click-2-Run.

This is due to changes made in Windows 10 Core with directly impact Office Pro Plus.
One of this issue is that Outlook 2016 is freezing after certain time, mostly if you try replying to an Email. 
You could only fix this once you kill the Outlook process and restart Outlook (either /safe safemode) and restart Outlook again.

The solution update your Office 2016 Pro Plus will also not solve this problem. Change made to Windows 10 require a REPAIR task to Office Pro Plus.

Navigate to "Feature & Apps" and click MODIFY Office 2016 Pro Plus, chose repair

The Option :
- Quick Repair will mostly fix the issue already.
- Online Repair, will with download from MS Cloud fix def. your problems.

Wednesday, August 16, 2017

OneNote Screen Clipping not working with Windows 10 Creators Update

Microsoft wants you working different ;)

Or in other words, both teams Office and Windows did align.

Here is what to do:

If you can disable Windows Sniping Tool
Group Policy follow the screen shot

Than or change your Hot Key :

HEX 83 is the default Key WIN+SHIFT+S

and or you might fully disable the Global Windows Hot Key WIN+S

reg.exe add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v DisabledHotkeys /t REG_SZ /d S /f

Reboote your computer

now it should work as usual and you can work proper with OneNote again.


Friday, August 4, 2017

Microsoft Teams Bandwidth Calculator

Bandwidth Calculator for Microsoft Teams

The Bandwidth Calculator for Microsoft Teams provides you with an estimate of the expected bandwidth generated by Microsoft Teams within your organization. By inputting your user count and expected behavior, the resulting calculation will better prepare you to successfully leverage Microsoft Teams in your environment. The Bandwidth Numbers generated are based on typical bandwidth values and will provide a starting point for further optimization. Should you want to learn more about aligning the tool more to your specific needs and the possible caveats, you can find further explanation about the tool is added below or watch our training recording here: Teams Academy: Bandwidth Calculator

the Calculator can be download at:

OneNote Screen Clipping not working Windows 10 Creator Update

There are two function overwrite in Windows 10 Creator Update from July 2017.

[WIN]+[SHIFT]+S and [WIN]+S.

The first shortcut opens now Windows 10 Snipping Tool and copies the image into the ClipBoard. But this is the common key combination for OneNote 2016 Screen Clipping.

There are two work arounds.

reg.exe add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v DisabledHotkeys /t REG_SZ /d S /f

and using group policy forbidding Win 10 Screen Clipping Tool to run.

Run Local Group Policy Editor
navigate to:
[User Configuration] -> [Administrative Template] -> [Windows Component] -> [Table PC] -> [Accessories]

From there change the Policy for [Do not allow Snipping Tool to run] set it to [Enabled]

Thursday, August 3, 2017

Set Expiration for SharePoint Online Anonymous links in Office 365

Set Expiration for SharePoint Online Anonymous links

The below PowerShell command will set a mandatory 30 DAYS limit on all Anonymous links (or external sharing links) generated from SharePoint Online and OneDrive for Business.

If you do not see the parameter listed for the Set-SPOTenant command, update the SharePoint Online PowerShell to the latest version.

Set-SPOTenant -SharingCapability ExternalUserAndGuestSharing
Set-SPOTenant –RequireAnonymousLinksExpireInDays 30

This PowerShell command disable the expiration entirely.

Set-SPOTenant –RequireAnonymousLinksExpireInDays 0

identified your settings:

another good blog article is found here:

Login to SharePoint Online:

Monday, July 31, 2017

Skype for Business Online cmdlets

Sometime its easier know where we copied our important cmdlets to.


Broadcast cmdlets

Group Search cmdlets

SfB and Teams can make use of Groups in Office 365, but the Groups ownership belongs to Exchange Online

Internet Protocol (IP) phone cmdlets

Online Audio File cmdlets

Online Carrier PortabilityIn cmdlets

This cmdlet if for Microsoft internal use only.

Online Schedule cmdlets

Online Time Range cmdlets

Online User

Online Voice User cmdlets

Saturday, July 29, 2017

Office 365 Groups change Primary SMTP Address

Several settings can only be changed via PowerShell.

One of this in Office 365 Unified Groups is the SMTP Primary Address.

First you run PowerShell in Admin Mode and login to Exchange Online:
Set-ExecutionPolicy RemoteSigned
$credential = Get-Credential
Connect-MsolService -Credential $credential

loading the Exchange Online Module:

$exchangeSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri "" -Credential $credential -Authentication "Basic" -AllowRedirection
Import-PSSession $exchangeSession -DisableNameChecking

Next listing all your Office 365 Unified Groups:

Get-UnifiedGroup | fl name,alias,*smtp*

Once you identified the group, you change the SMTP:

Set-UnifiedGroup -Identity sfbusergroup-cologne -PrimarySmtpAddress

Further more, you can change the all other attributes.

Wednesday, July 26, 2017

Outbound Call ID Overwrite with Call Queues (CallingLineIdentity)

Configuring User Outbound Call ID Overwrite

As usual, the way how you can modify more parameter is strictly by using PowerShell. I need stepping into one PowerShell scripting to present the outbound calling ID overwrite.

For example, if a Call Queue represents a Support Team, you want that each dedicated person in this team to not expose their DID. You need to configure a Distribution Group for those team members used in the Call Queue.
Next step is creating a “Calling Line Identity” policy, where you enable the User Overwrite. The Service Number you are defining should be this you have assigned to the Call Queue! The Calling ID Substitute should be the name of the team.
New-CsCallingLineIdentity -Identity "SupportTeam01" -CallingIdSubstitute "Support Team Office 365" -ServiceNumber 498912345678 -EnableUserOverride $True –Verbose
Note :
The key here is not to use “+” before the Service Number assigned to AA or call Queue to make it work:

do this      -ServiceNumber 498912345678
and not this -ServiceNumber +498912345678

After creating the new CallingLineIdentiy, you need to assign this policy on a per user basis:
Grant-CsCallingLineIdentity -Identity "” -PolicyName SupportTeam01

Further documentation on CsCallingLineIdentity can be found here: