アクティビティ フィード REST API の使用

名前空間: microsoft.graph

Microsoft Graphのアクティビティ フィード API を使用して、デバイスやプラットフォーム間でユーザーのアクティビティを再開できます。 アクティビティ フィード API 要求は、委任されたアクセス許可とユーザー アクティビティのアクセス許可を介してユーザーに代わって実行され、個人アカウントまたは仕事用アカウントと学校アカウントで使用できます。

ユーザー アクティビティはアクティビティ リソースによって され、コレクションの me/activities によって表される時間ベースのフィードに編成されます。

ユーザー アクティビティが良い理由

ユーザー アクティビティはアプリを起動するだけで、アプリ内の特定のコンテンツへの深いリンクです。 作成するユーザー アクティビティは、独自のアプリで使用できるだけでなく、Cortana および Windows タイムラインにも表示されます。アプリの再エンゲージを推進し、ユーザーが複数のデバイスでアプリを使用し続けやすくなります。

アクティビティになるには何が必要ですか?

アプリごとに異なるので、アプリケーション内のアクションをユーザー アクティビティにマップする最善の方法を理解するには、各アプリ開発者が必要です。 たとえば、ゲームはキャンペーンごとにアクティビティを作成し、ドキュメント作成アプリは一意のドキュメントごとにアクティビティを作成し、業務行アプリはワークフローごとにアクティビティを作成する場合があります。

アプリでアクティビティを定義する際に、次のガイドラインを適用します。

DO: 関連するユーザー アクションのグループに対して 1 つのアクティビティを記録します。 アプリケーションが一連の関連コンテンツに使用されている場合は、おそらく、エンゲージメント セッション全体で 1 つのアクティビティを記録する方が理にかなっています。

プレイリストのシナリオ: これは、音楽プレイリストやテレビ番組に特に関連します。1 つのユーザー アクティビティを更新して進行状況を表示できます。 この場合、複数の日または数週間にわたる契約期間を表す複数の履歴アイテムを持つ 1 つのユーザー アクティビティがあります。

DO: ユーザー データをクラウドに保存します。 デバイス間アクティビティをサポートする場合は、このアクティビティの再エンゲージに必要なコンテンツがクラウドの場所に保存されている必要があります。 たとえば、ユーザーがドキュメントを編集する度にアクティビティを発行する場合、クロスデバイスの再エンゲージを有効にするには、ドキュメントをユーザーのデバイス上でローカルではなくクラウドに保存する必要があります。

次の操作を行います。 ユーザーが将来再開する必要がなされないアクションのユーザー アクティビティを作成します。 アプリケーションを使用して、将来追跡する状態を保持しない単純な 1 回の操作を完了する場合は、ユーザー アクティビティを記述する必要はおそらくない可能性があります。

明確に言って、ユーザー アクティビティが Windows Timeline に表示される場合でも、これはバージョン管理ツールとして設計されているのではなく、ドキュメント ベースのアクティビティを選択すると、常にドキュメントの最新バージョン (別のユーザーによる変更を含む) が表示されます。

次の操作を行います。 他のユーザーが完了したアクションのユーザー アクティビティ を作成します。 ユーザーがユーザーにメッセージを送信したり、@mentionsユーザーにメッセージを送信したりした場合は、新しいアクティビティを作成する必要があります。 これらの操作は、通知を表示することでより良いサービスを提供します。

コラボレーションシナリオ: 複数のユーザーが同じアクティビティ (Word ドキュメントなど) に取り組む場合、最後に編集した後に別のユーザーがドキュメントに変更を加えた場合があります。 この場合、アプリ開発者は、ドキュメントに加えた変更を反映するように、アクティビティ内のビジュアル要素を更新する必要があります。 これを行うには、アプリが新しい履歴アイテムを作成せずに既存のアクティビティを更新する場合があります。

注: Web アプリケーションのアクティビティを発行する場合は、アクティビティごとに a と a の両方 activationURL fallbackURL を含める必要があります。 アクティビティは、タイムラインなどの Microsoft エクスペリエンスから期待通り、ユーザーをアプリWindowsします。

アプリの操作パターンとユーザー アクティビティ

作成するユーザー アクティビティは、アプリの操作パターンによって異なります。 アプリごとに異なりますが、ほとんどのアプリは次のいずれかの操作パターンに該当します。

  • ドキュメント ベースのアプリ - 使用期間を反映する 1 つ以上の履歴レコードを含むドキュメントごとに 1 つのアクティビティを作成します。 ドキュメントに変更が加わると、アクティビティ カードを更新することが重要です。
  • メディア再生アプリ - プレイリスト、プログラム、スタンドアロン コンテンツなどのコンテンツの論理グループごとに 1 つのアクティビティを作成します。
  • ゲーム - 保存したゲームまたはワールドごとに 1 つのアクティビティを作成します。 ゲームが 1 つのレベルのシーケンスのみをサポートしている場合は、時間の経過と同時に同じアクティビティを記述できます。ただし、カードを更新して最新の進捗状況や実績を表示する場合があります。
  • ユーティリティ アプリ - ユーザーが再開する必要があるアプリ内に何も含めなかった場合は、アクティビティを公開する必要はありません。 良い例は、電卓のような単純な単一目的のアプリです。
  • Line-of-business アプリ - 単純なタスクやワークフローを管理するための多くのアプリが存在します。 アプリからアクセスする個別のワークフローごとに 1 つのアクティビティを作成します。 たとえば、各経費レポートは、承認されたアクティビティを確認するためにそのアクティビティをクリックする場合があるため、個別のアクティビティになります。

一部の複雑なアプリには、複数の対話パターンが含まれます。アプリで処理されるさまざまなシナリオに対して、さまざまなユーザー アクティビティ作成パターンに従う必要がある場合があります。

次の手順

  • アクティビティ リソース を参照し 、アプリのアクティビティを定義して、ユーザーが重要なタスクを再開するのに役立ちます。
  • アクティビティを ポップにするための アイデアのアダプティブ カード サンプルサンプルを 確認します
  • Graph エクスプローラーで API をお試しください。

他のアイデアをお探しですか?