AFNotificationContactTemplates Class
- Last UpdatedNov 18, 2025
- 9 minute read
- PI System
- AF SDK 2024 R2
- Developer

Inheritance Hierarchy
OSIsoft.AFAFCollection
OSIsoft.AFAFCollectionAFNotificationContactTemplate
OSIsoft.AFAFNamedCollectionAFNotificationContactTemplate
OSIsoft.AF.NotificationAFNotificationContactTemplates
Namespace: OSIsoft.AF.Notification
Assembly: OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 3.1.1.1182
Syntax
public sealed class AFNotificationContactTemplates : AFNamedCollection<AFNotificationContactTemplate>, IAFNamedCollection<IAFNotificationContact>, ICollection<IAFNotificationContact>, IEnumerable<IAFNotificationContact>, IEnumerable, IList<IAFNotificationContact>
Public NotInheritable Class AFNotificationContactTemplates Inherits AFNamedCollection(Of AFNotificationContactTemplate) Implements IAFNamedCollection(Of IAFNotificationContact), ICollection(Of IAFNotificationContact), IEnumerable(Of IAFNotificationContact), IEnumerable, IList(Of IAFNotificationContact) Dim instance As AFNotificationContactTemplates
public ref class AFNotificationContactTemplates sealed : public AFNamedCollection<AFNotificationContactTemplate^>, IAFNamedCollection<IAFNotificationContact^>, ICollection<IAFNotificationContact^>, IEnumerable<IAFNotificationContact^>, IEnumerable, IList<IAFNotificationContact^>
[<SealedAttribute>] type AFNotificationContactTemplates = class inherit AFNamedCollection<AFNotificationContactTemplate> interface IAFNamedCollection<IAFNotificationContact> interface ICollection<IAFNotificationContact> interface IEnumerable<IAFNotificationContact> interface IEnumerable interface IList<IAFNotificationContact> end
The AFNotificationContactTemplates type exposes the following members.
Properties
| Name | Description | |
|---|---|---|
| Count |
Gets the number of items actually contained in the collection.
(Inherited from AFCollectionT.) | |
| Identity |
This read-only property contains identity of the object.
(Inherited from AFCollection.) | |
| IsDeleted |
This read-only property indicates whether the owner of the collection has been deleted.
(Inherited from AFCollection.) | |
| ItemGuid | Returns the item in the collection associated with the passed in ID. (Inherited from AFCollectionT.) | |
| ItemInt32 | Returns the item located at the passed in index. (Inherited from AFCollectionT.) | |
| ItemString |
Returns the specified object from the collection by name.
(Inherited from AFNamedCollectionT.) | |
| ItemIdentity |
This read-only property specifies the identity of the objects within the collection.
(Inherited from AFCollection.) | |
| Parent |
This read-only property returns the AFNotificationContactTemplate that owns this
collection of notification contacts.
| |
| PISystem |
This read-only property allows access to the PISystem
associated with this collection.
(Inherited from AFCollection.) |
Methods
| Name | Description | |
|---|---|---|
| Add(T) |
Adds an object to the end of the collection.
(Inherited from AFCollectionT.) | |
| Add(String) |
The Add method creates a new object and adds it to the collection.
| |
| Add(AFContact, String) |
The Add method creates a new object and adds it to the collection.
| |
| Clear |
Removes all items from the collection.
(Inherited from AFCollectionT.) | |
| Contains(Guid) |
This method determines whether the collection contains a specific item referenced by id.
(Inherited from AFCollectionT.) | |
| Contains(T) |
This method determines whether the collection contains a specific item.
(Inherited from AFCollectionT.) | |
| Contains(String) |
This method determines whether the collection contains a specific item referenced by name.
(Inherited from AFNamedCollectionT.) | |
| CopyTo |
Copies the entire collection to a compatible one-dimensional Array,
starting at the specified index of the target array.
(Inherited from AFCollectionT.) | |
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object.) | |
| GetEnumerator |
Returns an enumerator that iterates through the collection.
(Inherited from AFCollectionT.) | |
| GetHashCode |
Gets the hash code for this instance of the object which is suitable for use in hashing
algorithms and data structures like a hash table.
(Inherited from AFCollection.) | |
| GetType | Gets the Type of the current instance. (Inherited from Object.) | |
| IndexOf |
Searches for the specified object and returns the zero-based index of the first
occurrence within the entire collection.
(Inherited from AFCollectionT.) | |
| Insert |
Inserts an item into the collection at the specified index.
| |
| Refresh |
Refresh the collection to make sure it's list of items is up-to-date.
| |
| Remove(Guid) |
Removes the item with the specified id from the collection.
(Inherited from AFCollectionT.) | |
| Remove(T) |
Removes the first occurrence of a specific object from the collection.
(Inherited from AFCollectionT.) | |
| Remove(String) |
The Remove method removes the item from the collection by name.
(Inherited from AFNamedCollectionT.) | |
| RemoveAt |
Removes the item at the specified index of the collection.
(Inherited from AFCollectionT.) | |
| Sort |
Sorts the items in the entire collection using the default comparer.
(Inherited from AFCollectionT.) | |
| Sort(IComparerT) |
Sorts the items in the entire collection using the specified comparer.
(Inherited from AFCollectionT.) | |
| Sort(Int32, Int32, IComparerT) |
Sorts the items in a range of items in the collection using the specified comparer.
(Inherited from AFCollectionT.) | |
| Swap |
Swap the items in the collection by specified index.
| |
| ToString |
Returns a String that represents the current object.
(Inherited from AFCollection.) |
Extension Methods
| Name | Description | |
|---|---|---|
| ChunkedByIAFNotificationContact |
This extension method breaks up search results into chunks to make it easier to
page through and process IEnumerableT collections in chunks.
(Defined by AFSDKExtension.) |
Remarks
Each notification contact template has its own collection of notification contact templates, which is independent of the notification contact templates. Thus, a notification contact template can be referenced in the hierarchy of more than one notification contact template. In other words, the template can be re-used in multiple hierarchies.
The collection of notification contact templates is used when creating the hierarchy of notification contacts created from this template. Notification contact templates can be added or removed after notification contacts have been created using the template, but it is more efficient to define them before creating notification contacts.
| The Remove Overload and Clear methods will automatically CheckIn the items since they are defined at the PISystem level. |
Examples
// This example demonstrates how to create a hierarchy of notification // contact templates and use them to create a hierarchy of notification // contacts in a new notification. Then information about the created // notification contacts is displayed. // Get the Database PISystems myPISystems = new PISystems(); PISystem myPISystem = myPISystems.DefaultPISystem; AFDatabase myDB = myPISystem.Databases.DefaultDatabase; // Create a Hierarchy of Notification Contact Templates AFNotificationContactTemplate myContactTemplate1 = new AFNotificationContactTemplate(myPISystem, "MyContact#1"); AFNotificationContactTemplate myContactTemplate2 = new AFNotificationContactTemplate(myPISystem, "MyContact#2"); AFNotificationContactTemplate myGroupContactTemplate = new AFNotificationContactTemplate(myPISystem, "MyGroup"); myGroupContactTemplate.ContactType = AFNotificationContactType.Group; myGroupContactTemplate.NotificationContactTemplates.Add(myContactTemplate1); myGroupContactTemplate.NotificationContactTemplates.Add(myContactTemplate2); // Create a Notification with Notification Contacts AFNotification myNotification = new AFNotification(myDB, "MyNotification"); myNotification.NotificationContacts.Add("MyLocalContact#1"); myNotification.NotificationContacts.Add(myGroupContactTemplate); // Display Information for the Created Notification Contacts foreach (AFNotificationContact item in myNotification.NotificationContacts) { Console.WriteLine("Name of Notification Contact = {0}", item.Name); foreach (AFNotificationContact subItem in item.NotificationContacts) { Console.WriteLine(" Name of Notification Contact = {0}", subItem.Name); } }
' This example demonstrates how to create a hierarchy of notification ' contact templates and use them to create a hierarchy of notification ' contacts in a new notification. Then information about the created ' notification contacts is displayed. ' Get the Database Dim myPISystems As PISystems = New PISystems Dim myPISystem As PISystem = myPISystems.DefaultPISystem Dim myDB As AFDatabase = myPISystem.Databases.DefaultDatabase ' Create a Hierarchy of Notification Contact Templates Dim myContactTemplate1 As AFNotificationContactTemplate = New AFNotificationContactTemplate(myPISystem, "MyContact#1") Dim myContactTemplate2 As AFNotificationContactTemplate = New AFNotificationContactTemplate(myPISystem, "MyContact#2") Dim myGroupContactTemplate As AFNotificationContactTemplate = New AFNotificationContactTemplate(myPISystem, "MyGroup") myGroupContactTemplate.ContactType = AFNotificationContactType.Group myGroupContactTemplate.NotificationContactTemplates.Add(myContactTemplate1) myGroupContactTemplate.NotificationContactTemplates.Add(myContactTemplate2) ' Create a Notification with Notification Contacts Dim myNotification As AFNotification = New AFNotification(myDB, "MyNotification") myNotification.NotificationContacts.Add("MyLocalContact#1") myNotification.NotificationContacts.Add(myGroupContactTemplate) ' Display Information for the Created Notification Contacts For Each item As AFNotificationContact In myNotification.NotificationContacts Console.WriteLine("Name of Notification Contact = {0}", item.Name) For Each subItem As AFNotificationContact In item.NotificationContacts Console.WriteLine(" Name of Notification Contact = {0}", subItem.Name) Next Next
No code example is currently available or this language may not be supported.
No code example is currently available or this language may not be supported.