1
WNSからの通知を受け取るC#/ UWPアプリがあり、Azure Notification Hubテストページを使用して生の通知を送信できます。唯一の問題は、ハブにデバイスを登録して、テンプレート通知を送信したときに生の通知を受信できないことです。これは基本的なコードです:Azure通知WNSのハブレジスタ生テンプレート
PushNotificationChannel channel = await PushNotificationChannelManager.
CreatePushNotificationChannelForApplicationAsync();
NotificationHub hub = new NotificationHub(NotificationSettings.HubName,
NotificationSettings.HubListenConnectionString);
TemplateRegistration registration = await hub.
RegisterTemplateAsync(channel.Uri, template, "data", tags);
私が理解しようとしているのは、テンプレートとしてどの値を生データとして渡す必要があるかです。これは私が登録時に取得エラーです:そのメッセージによって
The bodyTemplate is not in accepted XML format. The first node of the bodyTemplate should be Badge/Tile/Toast, except wns/raw template, which need to be an valid XML
は明らかに「WNS /生テンプレート」オプションがありますが、私は1つの登録方法には何のドキュメントを見つけることができません。実際の生データの形式はJSONです。デイブ・スミッツからのヘルプから
固定コード:
PushNotificationChannel channel = await PushNotificationChannelManager.
CreatePushNotificationChannelForApplicationAsync();
NotificationHub hub = new NotificationHub(NotificationSettings.HubName,
NotificationSettings.HubListenConnectionString);
WnsHeaderCollection wnsHeaderCollection = new WnsHeaderCollection();
wnsHeaderCollection.Add("X-WNS-Type", @"wns/raw");
TemplateRegistration registration =
new TemplateRegistration(channel.Uri, template, "test",
tags, wnsHeaderCollection);
Registration r = await hub.RegisterAsync(registration);