💻

Microsoft Graph のプレゼンス情報 API が Public Preview になりました

2022/01/01に公開

元ネタはこちら。

https://developer.microsoft.com/en-us/graph/blogs/microsoft-graph-presence-apis-are-now-available-in-public-preview?WT.mc_id=M365-MVP-5002941

これまでプレゼンス情報を取得するには、Skype for Business の Unified Communications Web API (UCWA) というものを使わなければならなかったのですが、今回のアップデートにより、より簡単にプレゼンス情報を取得できるようになりました。もちろん Microsoft Teams のプレゼンス情報にも対応しています。

試しに Graph Explorer を使って API を実行してみます。アクセス許可に Presence.Read および Presence.Read.All が増えているので許可するのを忘れずに。

POST https://graph.microsoft.com/beta/communications/getPresencesByUserId
Content-Type: application/json

{
    "ids": ["4b34f1e2-0c77-4fbd-a8cf-94a4606021ee"]
}

と実行すると以下のような結果が返ってきます。

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#Collection(presence)",
    "value": [
        {
            "@odata.type": "#microsoft.graph.presence",
            "availability": "Offline",
            "activity": "Offline",
            "id": "4b34f1e2-0c77-4fbd-a8cf-94a4606021ee"
        }
    ]
}

オンラインになっているときはステータスが変わります。

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#Collection(presence)",
    "value": [
        {
            "@odata.type": "#microsoft.graph.presence",
            "availability": "Available",
            "activity": "Available",
            "id": "4b34f1e2-0c77-4fbd-a8cf-94a4606021ee"
        }
    ]
}

getPresencesByUserId は ID を複数指定できるので、プレゼンス情報を一覧表示するみたいなこともとても簡単にできるようになります。これは便利そうですね!

Discussion