サブスクライバ デバイスの管理
SubscriberDevice クラスと SubscriberDeviceEnumeration クラスは、サブスクライバが通知を受信するために使用するターゲット デバイスの追加、更新、および削除をサポートします。これらのクラスは、Notification Services API で提供され、Microsoft.SqlServer.NotificationServices 名前空間内に存在します。
SubscriberDevice オブジェクトは、サブスクリプションの論理配信エンドポイントを表します。このオブジェクトには、デバイスの種類、名前、アドレス、およびサブスクライバを設定するためのプロパティがあります。この情報は、通常はサブスクリプション管理インターフェイスからこのオブジェクトに渡されます。その後、このオブジェクトを使用して、データベースのサブスクライバ デバイス レコードを追加、更新、または削除できます。
各サブスクライバが所有できるデバイス数と、DeviceName 値の割り当て方法を決定する必要があります。サブスクライバが複数のデバイスを所有できる場合は、サブスクライバに独自のデバイス名を選択させることができます。サブスクライバが所有できるデバイスを 1 つのみにする場合は、デバイスの種類やその他の条件に基づいて標準デバイス名を割り当てることもできます。
通知を生成するときには、通知生成ルールで、通知の送信先のサブスクライバ デバイス名を指定する必要があります。したがって、通知生成ルールでは、特定のサブスクリプションの通知を生成するときに使用するサブスクライバ デバイス名を、何らかの方法で特定する必要があります。まず考えられるのは、サブスクリプションに関連付けられているサブスクライバ デバイス名をサブスクリプション データに格納する方法です。サブスクライバ デバイス名はすべてのサブスクリプションに定義するのが普通ですが、必須ではありません。たとえば、アプリケーションが常に電子メールで通知を配信し、サブスクライバのメール アドレスをサブスクライバ ID として使用している場合は、サブスクリプションにデバイス名を保持する必要はありません。その場合は、通知を生成するとき、通知関数に "email device" などの固定のデバイス名を渡すだけで十分です。あるいは、通知の生成時にデバイス名を常に動的に選択する場合は、サブスクリプション内にサブスクライバ デバイス名を含める必要はありません。
重要 : |
---|
ルールによって通知レコードに入力されたデバイス名は、サブスクライバのいずれかのデバイスの名前と一致する必要があります。通知レコードに指定されたデバイス名が有効なサブスクライバ デバイス レコードと一致しない場合は、Windows アプリケーション ログにエラーが書き込まれます。 |
SubscriberDeviceEnumeration クラスは、特定のサブスクライバまたは Notification Services インスタンスのサブスクライバ デバイスのセットを表します。特定のサブスクライバ デバイスを選択するには、そのデバイス名を SubscriberDeviceEnumeration オブジェクトのインデクサに指定します。
このセクションの内容
トピック | 説明 |
---|---|
サブスクライバ デバイス オブジェクトのインスタンスを作成する方法について説明します。 |
|
Notification Services のインスタンスにサブスクライバ デバイスを追加する方法について説明します。 |
|
既存のサブスクライバ デバイス レコードを更新する方法について説明します。 |
|
サブスクライバ デバイスを削除する方法について説明します。 |
|
配信チャネルを一覧に設定する方法について説明します。 |
参照
概念
サブスクリプション管理 API
サブスクリプション管理プロジェクトの開始
その他の技術情報
NSSubscriberDeviceView
サブスクライバ デバイスの管理
サブスクリプション データの管理