感谢大家帮助我们顺利推出史无前例的 #AzureChat移动服务Notification Hub 是 Windows Azure 平台上令人振奋的服务。我们很高兴能借这次在线讨论的机会,倾听各位社区成员的心声。如果您错过了讨论或者想要深入了解有关所讨论主题的更多内容,请查看以下盘点。

我们很乐意倾听您的反馈 – 请在移动服务 Uservoice 页面上提交功能请求和发表评论,我们几乎在每周迭代规划中都会查看该页面,了解用户的想法。

Q1 如果将数据保存在内部部署的服务器中, 而不是 Windows Azure 中,是否可以在移动服务应用程序内获取这些数据?

A1我们有一些客户已经通过自定义 API 功能和 ServiceBus Relay做到这一点了。- @joshtwist

资源:您可以在本教程中找到有关 Service Bus Relay的更多信息。要了解自定义 API 在移动服务中的运作方式,请查看本文档。- @mlunes90

Q2 如何在移动服务应用程序中使用自定义身份验证?

A2毋庸置疑,移动服务具有很高的扩展性。我有一篇文章可以指导您添加自定义身份验证,您可从此处获取:http://qub.me/ydviBA - @joshtwist

Q3 在表脚本中能否使用添加到我的 GIT 存储库的 node 模块?

A3:当然可以 - 启动源代码版本控制并通过 npm 安装您的模块。有关详细信息,请参阅本教程:http://qub.me/gxFp48.- @kirillg_msft

资源:通过本地 GIT 启用源代码版本控制后,您可以使用 npm 安装任何 node 模块 — 无论它是 Azure 模块、Twilio 模块还是您自己的模块。- @mlunes90

Q4 应当何时在移动服务中使用推送,何时在 Notification Hub 中使用推送?

A4Notification Hub 可兼容任何后端,包括移动服务后端、您在云中的自定义后端和您的内部部署后端。如果您的后端需要丰富、流畅的大规模推送,请使用带有自定义后端(包括内部部署)的 Notification Hub。如果您对移动服务有直接推送需求,使用移动服务直接推送。如果您需要比移动服务内置功能内容更丰富的推送(包括广播和模板),同时使用移动服务和 Notification Hub。- @kirillg_msft

A4Notification Hub 经过优化,可以在几分钟内广播数以百万计的高度个性化推送通知。移动服务则适用于发送事件触发的推送通知。例如,在一个两人游戏中,您可以使用 Notification Hub 推送一次性向所有人广播特别优惠信息,使用移动服务推送通知玩家 B,玩家 A 已完成其游戏回合。- @mlunes90

Q5 是否可以通过移动服务构建 Mac 应用程序?

A5您可以构建 Mac 应用程序,现在应用商店中也提供一些这样的程序。虽然我们的 SDK 目前仅支持 iOS,但是它是开源的,您可以从 http://qub.me/oKmhUO 获取代码,轻松摆脱对 UIKit 的依赖。您可以在 http://qub.me/jIq5R9 上投票,支持将 Mac SDK 作为一种功能提供。 - @joshtwist

A5.1此外 - 移动服务通过 REST 端点提供全部客户端功能;如果某个平台支持 REST,它就可以支持移动服务。– @dontnetgator(社区成员)

Q6 不经过 SQL 而直接保存到 blob 存储的最佳方式是什么?

A6在我的 doto 应用程序 http://qub.me/BqOnbB 中,我使用自定义 API 生成 blob URL 然后上传。您可以从此处获取代码:http://qub.me/0StZTb - @joshtwist

资源:还提供了有关从 iOSAndroidWindows 客户端将图像保存到 blob 存储的示例。有关如何在表存储中存储非结构化数据的概述,请查看本文章。- @mlunes90

Q7 现在有哪些人在使用 Notification Hub?我可以从哪里看到它们的体系结构?

A7几个公共示例:NBC 新闻 http://qub.me/wMS0nq、必应 Bing 资讯 http://qub.me/3uVDpE。更多资讯,敬请期待!- @kirillg_msft

社区问题:

问:移动服务服务器脚本是否可以用于动态生成 MPNS 推送通知的图像?- @gspyrou

答:您可以使用移动服务 MPNS API 传递图像。生成图像的最佳方法是添加工作线程或计划程序作业。- @kirillg_msft

A2图像处理往往是占用大量 CPU 的操作,因此最好设置为在后台运行。可以使用 Azure 模块在移动服务脚本中排列工作/罗列结果。如果要进行大量计算,您可在移动服务计划脚本或专用工作线程中处理作业/生成图像并重新排列结果,从而使移动服务脚本可发送带图像的通知。- @kirillg_msft

问:我们是否可以整理日志?据我所知,日志每隔几天就会被删除。- @vlele

答:您可利用 Windows Azure 移动服务中的 CLI 在本地检索/流关闭日志,以进行自定义处理。- @kirillg_msft

资源:该页面包含移动服务中的 CLI 的概述。要检索本地日志,您可���运行 azure mobile log download mobileServiceName。- @mlunes90

问:是否可以触发从 SPROC 中向移动设备发送通知?- @ryanabr

答:您可以使用移动服务自定义 API,从 API 发送推送通知,然后调用 SPROC。- @kirillg_msft

问:是否可以使用 Windows Azure 移动服务或 Notification Hub 将推送通知从 NodeJS 发送至 iOS、Android 和 Windows Phone 设备?- @oaleynik

答:Notification Hub 具有 Node.js SDK。移动服务构建于 Node.js 之上!这两种服务均可通过 REST API 使用。- @kirillg_msft

问:创建 C# 脚本是用户最迫切的需求之一。是否很快就能实现了?- @rafasermed

答:是的!很快就会推出了。- @kirillg_msft

问:如何远程调试自定义脚本?或者说,如何创建本地 node.js 环境以进行测试?

答:隔离脚本,并在本地对其执行单元测试,更多信息请单击此处:http://qub.me/wI2QfX。- @joshtwist

问:当前,我们只能编写用于在 Virtual Studios 2013 上执行 CRUD 操作的脚本。将来是否可以编写 API 和计划程序作业?- @rafasermed

答:您可以使用源代码控制功能编写 Virtual Studios 的自定义 API 和计划程序脚本。http://qub.me/kMBG8v - @kirillg_msft

问:是否可以从门户网站“深层”克隆移动服务实例(即脚本、数据库、自定义 API、权限)?-@vlele

答:您可以利用 GIT 源代码控制克隆大部分实例(表权限、脚本等),CLI 可以执行剩余的操作。- @joshtwist

问:你们这次能否给我们分享一些即将推出的新功能?- @mikewo

答:我们刚刚提到了 C# 支持,您也可以关注 @WindowsAzure 活动了解更多信息。- @joshtwist

问:为何要将 GIT 用作源代码控制容器,而不是 Team Foundation Service?- @rafasermed

答:我们将 GIT 作为一种协议。TFS 支持 GIT first class,因此您可以将 TFS 和移动服务作为两种远程控制方式。- @kirillg_msft

请告诉我们您有兴趣讨论的主题和服务,并请关注 @WindowsAzure,了解所有 Windows Azure 相关的新闻和讨论。

本文翻译自:

http://blogs.msdn.com/b/windowsazure/archive/2013/10/11/recap-mobile-services-azurechat.aspx