9

我创建了一个带有 Cordova 的示例应用程序和一个与 Azure 通知中心对话的 Mvc5 应用程序。注册由后端处理,因为标签必须是安全的。

我们为 iOS、WP8 和 Android 平台使用了从后端注册的三种不同模板;后端可以$message使用sendtemplatenotificationasync.

它正在工作,但我们还没有使用templateName.

从您的应用后端文档中阅读注册,我发现了这一点:

“您可以使用注册的 TemplateName 属性来识别模板”。

一旦我成功创建了一个带有templateName的注册,我可以用它做什么?

我希望找到一个 API Send 方法,除了标签或标签表达式之外,还能够指定一个特定的templateName; 我还没有找到这样的东西。

的含义和一般用例是templateName什么?

4

2 回答 2

3

模板名称只是模板注册的描述性标签。它不打算用于以编程方式识别注册,因此没有任何 API 方法使用模板名称。除了调试或日志记录之外,您不应将其用于任何其他用途。(我根本没有设置模板名称......)

例如,您可以在 GitHub 上查看官方ANH Java SDK :如果您搜索“templatename”,除了为注册设置模板名称之外,您不会发现任何其他用途。

如果您的所有模板用于相同的通知类型,则它们应使用相同的模板参数。然后,您只需一次向所有平台发送包含所有参数的模板通知。这就是模板注册的用例。据我所知,您可以为特定平台设置附加参数,不指定参数的注册,只是不会收到它。只需确保发送所有模板中定义的所有参数即可。

如果您不想区分不同模板的注册,请使用标签,例如区分平台使用“Platform:Android”、“Platform:iOS”等标签。或者区分具有不同参数的模板使用“Template:PersonalMessage” 、“模板:GroupMessage”、“模板:BroadCast”等...

于 2015-05-04T09:14:28.260 回答
0

假设您有 iOS 和 Android 客户端。对于 iOS,您将使用与 iOS 兼容的模板进行注册,对于 Android,您将使用与 Android 兼容的模板进行注册。然后,当您发送消息时,它将被相应地格式化。

与 Microsoft 示例相比,我们的做法甚至略有不同。我们的客户端(iOS 或 Android)提供模板,因此后端开发人员无需了解这些细节。更多信息:http: //discoveringdotnet.alexeyev.org/2014/07/registration-for-azure-notification-hub.html

于 2014-08-15T05:12:27.970 回答