gpt4 book ai didi

c# - Azure 通知中心模板 - 动态模板

转载 作者:太空宇宙 更新时间:2023-11-03 15:45:44 25 4
gpt4 key购买 nike

在我的推送通知中,我有可以发送的动态参数。我可以通过定期通知来完成此操作并动态创建我的有效负载。但我想为此使用模板,因为我需要发送到 iOS、android 和 WP。例如:

var payloadAndroid = "{'data':{'message':'$(message)','icon':'$(icon)','url':'/test/test'}}";
var payloadAndroid = "{'data':{'message':'$(message)','icon':'$(icon)','action':'delete'}}";

所以我尝试像这样为android注册一个动态模板,但我不确定这是否可能:

var payloadAndroid = "{'data':{'message':'$(message)','icon':'$(icon)',$(params)}}";
registration = new GcmTemplateRegistrationDescription(deviceToken, payloadAndroid);

然后,我将使用这些参数:

var dictionary = new Dictionary<string, string>();
dictionary.Add("message", "My message test");
dictionary.Add("icon", "icon.png");
dictionary.Add("params", "'url':'/test/index.aspx','action':'myaction'");

hub.SendTemplateNotificationAsync(dictionary, "myTag");

这会引发 XmlException,但想知道是否有人对此有其他解决方案?

我也尝试过这些,同样的异常(exception):

var payloadAndroid = "{'data':{'message':'$(message)','icon':'$(icon)',{$(params)}}}";
var payloadAndroid = "{'data':{'message':'$(message)','icon':'$(icon)',#(params)}}";

我不想在有效负载中添加所有可能的参数,因为它们来自数据库,可以更改,并且有效负载对于 iOS 来说可能太大。

最佳答案

模板有效负载应该是有效的 JSON,否则客户端验证将失败。试试这个:

"{\"数据\":{\"消息\":\"$(消息)\",\"图标\":\"$(图标)\",\"url\":\"$(url)\",\"action\":\"$(action)\"}}"

然后发送一条消息,您可以为操作指定“删除”,为网址指定“”,反之亦然。

关于c# - Azure 通知中心模板 - 动态模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28220761/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com