android - 如何在 Android 设备上接收新 Outlook 电子邮件的推送通知?
问题描述
我正在制作一个 Android 应用程序,我希望用户在其中登录到他们的 Outlook 帐户,并在收件箱中收到电子邮件时从 Microsoft Graph API 接收到应用程序的推送通知。我怎样才能做到这一点?
我可以使用 HTTP 订阅请求(此处指定https://docs.microsoft.com/en-us/graph/webhooks?view=graph-rest-1.0)订阅收件箱更改,例如:
POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json
{
"changeType": "updated",
"notificationUrl":
"https://webhook.azurewebsites.net/notificationClient",
"resource": "/me/mailfolders('inbox')/messages",
"expirationDateTime": "2016-03-20T11:00:00.0000000Z",
"clientState": "SecretClientState"
}
在这个请求中,我需要指定一个通知更新发送到的“notificationUrl”——我该如何设置?Azure 上是否有此功能?
从那里我相信我可以使用此处的说明将推送通知发送到 Android 设备https://docs.microsoft.com/en-us/azure/notification-hubs/notification-hubs-android-push-notification-google- fcm-开始。
这涉及在 Azure 上设置一个连接到 Firebase 的通知中心,然后 Firebase 向应用程序发送通知。这是最好/唯一的方法吗?
非常感谢任何帮助!
解决方案
notificationUrl 可以是 azure 函数应用的 webhook url。https://azure.microsoft.com/en-us/resources/videos/create-a-web-hook-or-api-azure-function/。
因此,您可以使用 azure 函数调用 Firebase API 来发送通知。
请参阅https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-notification-hubs#packages---functions-1x和https://firebase.google.com/docs/云消息/迁移-v1。
此外,我建议您使用 azure logic app。它具有内置连接器,可在邮件到达您的收件箱时使用。
看看这里 https://docs.microsoft.com/en-us/azure/connectors/connectors-create-api-office365-outlook。
推荐阅读
- html - HTML/CSS 如何让页脚卡在底部?
- c++ - 合并会议时间
- php - 我怎样才能开始 laravel 工匠服务
- azure-iot-hub - Azure IoT 中心 sql 查询
- python - jupyter notebook 中“expected an indented block”错误的解决方案
- python - Python 屏幕截图,只有桌面背景(MacBook Catalina)
- detection - 表示边界框坐标的方法是什么?
- python - 用于覆盖序列化程序类的 save() 方法时,user.save() 无法正常工作
- python - 如何在 python 中从 MySql 获取列表?
- c# - 我可以在 .NET Core SignalR 中省略 Clients.All.SendAsync() 的“等待”吗?