2023年1月

2023年1月29日 (日)

Microsoft Stream (on SharePoint) では新たにプレイリストが作れるようになりました。リストテンプレートに「プレイリスト」が追加されており、Microsoft Lists の Webアプリまたは SharePoint サイト上のリストとして新規に作成できます。

20230126_093342

プレイリストの基本的な作り方については下記のビデオをご覧ください。

ビューについて

プレイリストから作成したリストには既定で「プレイリスト」ビューと「すべてのアイテム」ビューの2つが用意されており、既定ではプレイリストになっています。

20230126_091442

列の変更などは「すべてのアイテム」ビューから行う必要があります。このビューにはグリッドで編集メニューがありません。他にも既定で Duration 列を持っており、再生時間がわかるようになっています。

20230129_151141

Microsoft Lists 側の表示

Microsoft Lists (Webアプリ) 側でも当然リストは表示されますが、アイコンが Stream のアイコンになっています。

20230126_093225

モバイルの Microsoft Lists アプリではプレイリストのビューをサポートしておらず、すべてのアイテムビューと同様のビューが表示されるだけです。

 

Photo

Webパーツ対応

2023年1月時点ではこのリストは SharePoint のリスト Webパーツとしては対応しておらず、追加したとしてもデータグリッド表示となりプレイリスト表示とはなりません。

20230126_092133_3

このことについては Microsoft 社の Microsfot Stream チームにいる @MarcMroz さんとも Twitter でやり取りしているのでどうぞ。

2023年1月27日 (金)

SharePoint を利用する際、画像や JavaScript、スタイルシートなどの静的資産データに関しては Office 365が備えているコンテンツ配信ネットワーク (CDN) でホストできるようになっています。この CDN を Office 365 CDN と言います。CDN を利用することでダウンロードが早くなり待ち時間が短縮されるようになっています。

Office 365 CDN は SharePoint Online のサブスクリプションに含まれています。

とはいえ、Office 365 CDN の利用には事前設定が必要であり、SharePoint を使い始めている組織でもこの存在をよく知らずに使っていることも少なくないようです。CDN を使うことによる問題がなければ、少しでも高速に使えるようになるので CDN はできるかぎり構成するようにしましょう。

CDN の種類

CDN にはパブリック CDN プライベートCDN の2種類があります。

---------------------------------------------------

パブリックCDN:

JS (JavaScript)、CSS (スタイルシート)、Web フォント ファイル (WOFF、WOFF2)、および会社のロゴなどの非独自のイメージに使用するように設計されています。

プライベートCDN:

画像 (PNG、JPG、JPEG など) に使用するように設計されています。

---------------------------------------------------

パブリック CDN もプライベート CDN もテナントの管理者が有効化しないと利用できないものだったのですが、2023年1月23日にプライベート CDN の構成が不要になるというアナウンスがされました。

20230127_161926

この変更は 2023年3月上旬からロールアウトが開始され同月下旬には完了を予定しているとのこと。そのため、プライベートCDNは意識しなくても自動管理されるようになるわけです。

ですが、相変わらずパブリックCDNは明示的に指定しないと利用できないため注意してください。

CDNが有効なのか確認したい

サイトの所有者またはサイトの管理者の方は、自分が使っている環境でCDNが有効化どうかを確認するには SharePoint 診断ツールを使いましょう。Edge または Chrome の拡張機能として、このツールをインストールできます。ツールの使い方は下記に公開されています。

SharePoint Online のページ診断ツールを使用する - Microsoft 365 Enterprise | Microsoft Learn

※私の執筆した「ひと目でわかる Microsoft 365 SharePoint 運用管理編」の P533 ~でもパフォーマンス診断方法として触れています。CDN に関してはあまり言及できていませんでしたけど。

このツールを実行すると、パブリックCDNが有効でない場合は次のように表示されます。

20230127_160041

ちなみに、ツールをインストールしたら SharePoint サイトにアクセスしているブラウザーを閉じるかタブを閉じて再度アクセスしないと診断ツールを起動するときに「これはSharePoint ページではない」とのメッセージがでてきます。

📗参考情報

Office 365 CDN に関する詳細情報は下記のリンクを参照してください。

2023年1月26日 (木)

以前の投稿でStream (on SharePoint) に移行ツールを使えば、Stream (クラシック)への既存のリンクはしばらくの間はリダイレクトされるという話を書きました。

🔗 SharePoint Technical Notes : Stream (on SharePoint)への移行: リダイレクトについて (lekumo.biz)

特に SharePoint ページに Stream Webパーツを使ってビデオコンテンツを配置しているケースが多いと思います。そんな中、Microsoft MVP の一人である てっちゃん (@techan_k) さんが SharePoint ページ上にある Stream Webパーツを CSV ファイルに書き出すスクリプトを公開してくれています。助かりますね。

📝 Export of Stream (Classic) Web Parts and pages that use them | PnP Samples

20230126_103356

私の方でもさっそく試してみたのですが、メモ書きを残しておこうと思います。

PnP PowerShellを使う準備

PnP PowerShell を使うため事前準備が必要です。PnP の概要などは下記にまとめています。

🔗 SharePoint Technical Notes : PnP PowerShell の概要とインストール (lekumo.biz)

実行

まずはローカルにスクリプトファイル(*.ps1)を用意します。例では "spo-export-stream-classic-webparts.ps1"というファイル名が使われているので、これにしておくとよいでしょう。ここに、GitHubに公開されているスクリプトをコピーして貼り付けておきます。

スクリプトの実行方法は上記のGitHub内およびスクリプト内のコメントにも書かれていますので確認しておきましょう。

20230125_121706

都度、サイトを指定してサイト単位で Stream Webパーツがあるページを探索することになります。

20230124_223853_2

結果はCSVファイルに出力されます。出力場所はマイドキュメント(My Documents)内に作成される "StreamClassicWebPartsReport" フォルダーです。

スクリプト実行後に、このフォルダーを開くようにしたい場合は、次のように -openFolder オプションを指定してスクリプトを実行します。

.\spo-export-stream-classic-webparts.ps1 -siteUrl "https://contoso.sharepoint.com/PnPScriptSamples" -openFolder 

実行すると「日付-サイト名.csv」という名前付け規則でCSVファイルが生成されます。ちなみにスクリーンショットでは訳があって「日付-サイトID」で生成しています。20230124_223952

このファイルを確認すれば、どのページに当該Webパーツが埋め込まれているかがわかります。

20230125_122134

注意点

最終的にはスクリプトの実行は首尾よくいったのですが、最初はいくつかのエラーに遭遇したので備忘録して残しておきます。

最初のエラーは Getting SitePages .. Started 時点で遭遇したページのエラーでした。このページを実際に開くと前に何かを試したのかページ自体がエラーとなっていました。おそらくWebパーツの不具合だったと思いますが、よくみると作りかけで実際には参照していないものであったためページ自体を削除しました。

次が Processing pages -- Started 時点のエラーで、下記が実際のエラー画面です。「フォルダーに...」というページ。

20230124_222924

なんだろうとページを開いたのですが、こちらはページ自体何も問題ない。ですが、ページの詳細を確認すると説明部分に文字化けが。。。本文に書いていた絵文字までが説明部分に追加されており、文字化けしていたわけです。Cannot read incomplete UTF-16 JSON text とエラーメッセージにあるので、これかなと詳細ウィンドウを修正し文字化けを取り除きました。20230125_091406

さて、ここまででページの取得は無事に完了したのですが、CSVファイルの出力でまたエラー。なんだろうとよくよく確認すると、運悪く対象のサイト名が「SharePoint/OneDrive/Stream の利活用」となっている。サイト名にファイル名に使用できない文字が含まれていたのです。手っ取り早く修正するためにスクリプトを修正して $site.Title を $site.ID に置き換えました。


20230124_222823

以上で無事にスクリプトが実行できたわけです。

最後に

最後に遭遇した不具合の情報を書きましたが、スクリプト自体は自分で作ると面倒ですし、そもそもPowerShellを書くための基礎知識が必要です。こうしたスクリプトを公開し共有してくれるのは、本当に助かります。

これで新しい Stream への移行が少しでもスムーズにいくといいですね。

SharePoint サイトのコンテンツを一括管理したい場合などに便利なのが PnP PowerShell です。オープンソースのコミュニティが提供しています。

本記事では PnP PowerShell の概要とインストール方法に関するリファレンスをまとめておきます。

概要

もともとSharePoint PnP (Patterns & Practices : パターンズ アンド プラクティス) イニシアティブというものがあり、Microsoft 社のコンサルタントのメンバーが 2013 年に設立したのが始まりでオープンソースの技術コミュニティです。Microsoft 社以外からも Microsoft MVP などの有志が積極的にメンバーとして貢献していますし、誰でも Contributerとして立候補もできます。

なお、このコミュニティはのちに SharePoint Developer Community という名称となり、現在は SharePoint だけでなくMicrosoft 365 全般にわたり活動しているため Microsoft 365 Platform Comunity (PnP) という名称になっています。

コミュニティでは GitHub 上で様々なガイダンス、コードサンプルや便利なツールなどを公開しています。

SharePoint PnP PowerShell 

Microsoft 365 のSharePoint の管理者が利用する SharePoint Online Management Shell も PowerShell コマンドレットを提供していますが、こちらは SharePoint テナントレベルでの管理者権限が必要であり、また SharePoint 管理センターレベルの設定を行うためのコマンド群です。サイトコレクションの管理、サイトデザインやサイトスクリプトの登録、SharePoint ハブの登録や解除などがありますが、サイトごとのコンテンツ管理までは行えません。

一方でSharePoint PnP PowerShell はもともと SharePoint Client Side API を用いたコマンドレットであり、サイトの管理者がコンテンツ管理を行えるようになっています。

👑PnP PowerShell (推奨)

従来は SharePoint に特化していた SharePoint PnP PowerShell ですが改善を続けています。現在は SharePoint 以外にも Microsoft Teams, Microsoft Planner, Power Automate などでも利用できるようになっており、名称も「SharePoint」を冠から外し単に「PnP PowerShell」と呼ぶようになっています。

PnP PowerShell はクロスプラットフォームの PowerShell モジュールとなっており、非常に多くのコマンドレッドが用意されています。この新しいモジュールは SharePointPnPPowerShellOnlineモジュールの後継となっており、従来のモジュールはすでにメンテナンスされなくなっています。新しいモジュールはクロスプラットフォーム対応となっているため Windows だけでなく、MacOSや Linux 上でも実行できます。ただし、クロスプラットフォームとして利用する場合は対象は SharePoint だけがサポートされます。

詳しくは下記のサイトを参照してください。

🔗 PnP PowerShell | PnP PowerShell

インストール方法

さて、インストールですが PowerShell 7.x を使用することが推奨されています。実際、PowerShell 5.x を使っていたとしても一部のコマンドは利用できますが、経験上エラーとなることもしばしばあるため PowerShell 7.x をインストールするようにしましょう。

インストール手順は下記の情報を参照してください。

🔗 Windows への PowerShell のインストール - PowerShell | Microsoft Learn

インストール自体は基本的には次のコマンドで行えます。

Install-Module -Name PnP.PowerShell

ただし、認証に関する設定も必要になるため注意が必要です。PnP PowerShellでは、テナントへの認証情報を使って認証することができます。ただし、基盤となる SDK の変更により、認証が可能な Azure AD アプリケーションを最初に登録する必要があります。

複数の方法が用意されており、組織によって適切な手順がことなります。詳しくは下記のページで確認してください。ちなみに、一番簡単なのは「Register-PnPManagementShellAccess」コマンドを実行することです。これで済むのが一番。。。

🔗 Authentication | PnP PowerShell

PnP PowerShellの最新版は PowerShell Gallery で確認できます。

🔗 https://www.powershellgallery.com/packages/PnP.PowerShell/

2023年1月13日 (金)

移行の話の続きです。

SharePoint ページなどにStream (クラシック) 上のビデオへのリンクを追加しているケースも多いと思います。

移行ツールによる移行後は、しばらくの間、旧リンクにアクセスすると新しいコンテンツの場所へとリダイレクトしてくれます。ただし、このリダイレクトも Microsoft Stream (クラシック) 廃止後から1年間のみで期限は 2025年2月15日までです。それまでに修正しておかないとリンク切れが多発することなります。

SharePoint ページでは Stream 用のWebパーツが用意されていましたが、Stream (on SharePoint) のコンテンツを埋め込む場合は、ファイルビューアーWebパーツを用います。当該ユーザーにリンクの差し替えを依頼するなどの対応も考えておく必要があります。

移行ツールは SharePoint管理者または Stream 管理者しか利用できません。

そのため必要に応じて各ビデオの所有者に依頼して自分で必要なものは手動でダウンロードし、適切な SharePoint サイトまたは OneDrive for Business 上に再度アップロードしてもらい、Webパーツの再設定なども依頼しておくとよいでしょう。

ユーザーには手間を書けますが、移行ツールで一括すると案外不要なコンテンツもそのまま持っていくことになることもあります。大量のデータの場合はやはりツールを使うべきですが、対応するユーザーが担当するコンテンツの量がさほど多くないようであれば、手間がかかる分、取捨選択もすることになると思います。ついでの整理整頓の機会にもなるように思います。ビデオが古くなっていたら、この際、新規に作り直そうか、というきっかけづくりにもなるかもしれません。

なお、移行ツールで移行したコンテンツをさらに手動で別の場所に移動させてしまうと、さすがにそこまでは追いかけてはくれないため、やはりリダイレクトはできなくなります。こうした点も注意しましょう。