Online ユーザーへのポリシーの割り当て
Japan Lync/SfB Support Team です。
複数のユーザーの管理する場合、管理シェルから CSV データなどを基にし、ポリシーを割り当てる場合があると思います。
たとえば、以下のようなコマンドを用いたりするような場合です。
A. Get-CsOnlineUser -ResultSize Unlimited -Filter {Enabled -eq $True} | Grant-CsConferencingPolicy -PolicyName BposSVoipDisabled
B. Get-CsOnlineUser -ResultSize Unlimited -Filter {Enabled -eq $True} | Set-CsUser -AudioVideoDisabled $True
エラー: リモート コマンドへのデータ送信が失敗し、次のエラー メッセージが返されました。T
he total data received from the remote client exceeded the allowed maximum. The
allowed maximum is 52428800.詳細については、about_Remote_Troubleshooting のヘ
ルプ トピックを参照してください。
+ CategoryInfo : OperationStopped: ( <UPN> :Stri
ng) [], PSRemotingTransportException
+ FullyQualifiedErrorId : JobFailure
+ PSComputerName : <UPN>
これは、Skype for Business Online で設定されている PowerShell セッションに対する Throttling Policy により発生します。
たとえば、PowerShell セッションを開いてから 10 ~ 15 分程コマンドを実行していない時間が継続した場合は、セッションがタイムアウトしエラーとなります。
また、短期間で大量のパイプライン処理を実行した場合にも、エラーが発生します。
そのため、パイプライン処理を利用して大量のユーザーへ変更を一括で加える場合については、あらかじめ CSV などでユーザー リストを用意しておいていただき、
1 ユーザーに対して処理をループする事でエラーを回避する事が出来ます。
例えば、以下のようなスクリプトを実行することにより、実現可能となります。
(あらかじめ、upns.txt というユーザー リストを用意しておきます。)
$c=get-credential
$s=new-csonlinesession -Credential $c
import-pssession $s -AllowClobber
$upnfile="c:\script\upns.txt"
foreach($upn in (Get-Content "$upnfile")) {
echo 'Setting AudioVideoDisabled for: ' $upn
Set-CsUser -Identity $upn -AudioVideoDisabled $True
Grant-CsConferencingPolicy -Identity $upn -PolicyName BposSVoipDisabled
なお、環境を考慮したスクリプトの作成が必要である場合は、Premier Support で対応をさせていただいております。