具有本地化消息的通知中心

时间:2013-10-03 17:35:10

标签: azure windows-8 windows-phone-8 notifications

我刚刚提出了一个新问题,但同样的背景是天蓝色的。现在我正在尝试实现Multilinqual(本地化)推送通知,所以我遵循这个localized push notification所以这个链接包含很多制作类别的工作我只是想省略它们所以我试图使用直接代码订阅吐司基于Bachend clien应用程序中生成Toast通知的标签的通知......这里是Backend客户端应用程序代码..

NotificationHubClient hub = NotificationHubClient.CreateClientFromConnectionString("Endpoint=sb://samplenotificationhub-ns.servicebus.windows.net/;SharedAccessKeyName=DefaultFullSharedAccessSignature;SharedAccessKey=", "samplenotificationhub");

        var notification = new Dictionary<string, string>() {
                        {"News_English", "World News in English!"},
                        {"News_French", "World News in French!"},
                        {"News_Mandarin", "World News in Mandarin!"}};
        await hub.SendTemplateNotificationAsync(notification, "World");

首先我在我以前工作的示例应用程序上尝试了它,它可以接收基于标签的推送通知,所以我只是尝试更新其代码以获取模板基于toaste通知但不幸的是我没有得到任何东西。这是代码..

private void AcquirePushChannel()
    {
        CurrentChannel = HttpNotificationChannel.Find("mychannel");

        if (CurrentChannel == null)
        {
            CurrentChannel = new HttpNotificationChannel("mychannel");
            CurrentChannel.Open();
            CurrentChannel.BindToShellToast();
            CurrentChannel.BindToShellTile();

        }

        CurrentChannel.ChannelUriUpdated += new EventHandler<NotificationChannelUriEventArgs>(async (o, args) =>
        {
            var tags = new HashSet<string>();
            tags.Add("World");
            var hub = new NotificationHub("samplenotificationhub", "Endpoint=sb://samplenotificationhub-ns.servicebus.windows.net/;SharedAccessKeyName=DefaultListenSharedAccessSignature;SharedAccessKey=");
            var template = String.Format(@"<toast><visual><binding template=""ToastText01""><text id=""1"">$(News_English)</text></binding></visual></toast>");
            await hub.RegisterTemplateAsync(args.ChannelUri.ToString(),template,"hello", tags);


         //   await hub.RegisterNativeAsync(args.ChannelUri.ToString(),tags);
        });
    }

所以,如果你对此有所了解,请指导我任何形式的帮助或建议。

1 个答案:

答案 0 :(得分:0)

你好朋友我再次能够解决我的问题,所以我在这里做的错误是我盲目跟踪链接,因为它是针对Windows商店应用程序,我想实现相同的Windows Phone 8所以我做错了正在使用Windows Phone 8中用于Windows Phone 8的相同Tamplate。所以我理解的是,如果想要从通知中心定位多个平台,那么发送Toast通知的客户端应用程序对所有人都有相同的通知,但所有平台都会以不同的方式处理它。就像Windows 8我正在使用的tamplate一样工作,但Windows手机这个模板将工作。

 string toast = "<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
     "<wp:Notification xmlns:wp=\"WPNotification\">" +
        "<wp:Toast>" +
             "<wp:Text1>Hello Windows phone</wp:Text1>" +
        "</wp:Toast> " +
     "</wp:Notification>";

所以不同的平台会有不同的平台。它也可以帮助其他人。