EnsLib.PushNotifications.IdentityManager.DeviceTracking
persistent class EnsLib.PushNotifications.IdentityManager.DeviceTracking extends %Library.Persistent, %XML.Adaptor
SQL Table Name: EnsLib_PushNotifications_IdentityManager.DeviceTracking
Zen Mobile Cloud Messaging Device TrackingProperty Inventory
Method Inventory
- AssociateDeviceWithAppToken()
- DisassociateDeviceWithAppToken()
- FindDeviceByAppToken()
- FindDeviceByDeviceAndAppIds()
Properties
property AppIdentifier as %String (MAXLEN = 512) [ Required ];
App Identifier
Property methods: AppIdentifierDisplayToLogical(), AppIdentifierGet(), AppIdentifierGetStored(), AppIdentifierIsValid(), AppIdentifierLogicalToDisplay(), AppIdentifierLogicalToOdbc(), AppIdentifierNormalize(), AppIdentifierSet()
property AssociatedAppTokens as list of %String (MAXLEN = 512) [ Required ];
Associated Application Token
Property methods: AssociatedAppTokensBuildValueArray(), AssociatedAppTokensCollectionToDisplay(), AssociatedAppTokensCollectionToOdbc(), AssociatedAppTokensDisplayToCollection(), AssociatedAppTokensDisplayToLogical(), AssociatedAppTokensGet(), AssociatedAppTokensGetObject(), AssociatedAppTokensGetObjectId(), AssociatedAppTokensGetStored(), AssociatedAppTokensGetSwizzled(), AssociatedAppTokensIsValid(), AssociatedAppTokensLogicalToDisplay(), AssociatedAppTokensLogicalToOdbc(), AssociatedAppTokensNormalize(), AssociatedAppTokensOdbcToCollection(), AssociatedAppTokensSet(), AssociatedAppTokensSetObject(), AssociatedAppTokensSetObjectId()
property Identifier as %String (MAXLEN = 512) [ Required ];
Device Identifier (i.e. DeviceToken, or Registration Id)
Property methods: IdentifierDisplayToLogical(), IdentifierGet(), IdentifierGetStored(), IdentifierIsValid(), IdentifierLogicalToDisplay(), IdentifierLogicalToOdbc(), IdentifierNormalize(), IdentifierSet()
property LastUpdatedUTC as %TimeStamp [ InitialExpression = $ZDT($system.Util.LocalWithZTIMEZONEtoUTC($H),3) , Required ];
Last updated-at timestamp
Property methods: LastUpdatedUTCDisplayToLogical(), LastUpdatedUTCGet(), LastUpdatedUTCGetStored(), LastUpdatedUTCIsValid(), LastUpdatedUTCLogicalToDisplay(), LastUpdatedUTCLogicalToXSD(), LastUpdatedUTCNormalize(), LastUpdatedUTCOdbcToLogical(), LastUpdatedUTCSet(), LastUpdatedUTCXSDToLogical()
property Service as %String (DISPLAYLIST = ",Apple Push Notification Service,Google Cloud Messaging", VALUELIST = ",APNS,GCM") [ Required ];
Service type descriptor
Property methods: ServiceDisplayToLogical(), ServiceGet(), ServiceGetStored(), ServiceIsValid(), ServiceLogicalToDisplay(), ServiceLogicalToOdbc(), ServiceNormalize(), ServiceSet()
Methods
classmethod AssociateDeviceWithAppToken(pIdentifier As %String, pAppId As %String, pService As %String, pAppToken As %String) as %Status
Associate an application token with a deviceid/appid
classmethod DisassociateDeviceWithAppToken(pIdentifier As %String, pAppId As %String, pService As %String, pAppToken As %String) as %Status
Disassociate an application token with a identifier/appid
classmethod FindDeviceByAppToken(pAppToken As %String, ByRef pDevice As EnsLib.PushNotifications.IdentityManager.DeviceTracking) as %Status
Locate a device tracking object by an app token
classmethod FindDeviceByDeviceAndAppIds(pIdentifier As %String, pAppId As %String, pService As %String, ByRef pDevice As EnsLib.PushNotifications.IdentityManager.DeviceTracking, pCreate As %Boolean = 0) as %Status
Helper to locate and/or create a device tracking object from a deviceid/appid pair
Queries
query DeviceSearchByAppToken(pAppToken As %String)
SQL Query:
SELECT %ID, Service, Identifier, LastUpdatedUTC FROM DeviceTracking WHERE FOR SOME %ELEMENT(AssociatedAppTokens) (%Value = :pAppToken)
SELECT %ID, Service, Identifier, LastUpdatedUTC FROM DeviceTracking WHERE FOR SOME %ELEMENT(AssociatedAppTokens) (%Value = :pAppToken)
Search for devices matching the associated app token
Indexes
index (AppIdentifierIndex on AppIdentifier);
Index the app identifier
Index methods: AppIdentifierIndexExists()
index (AssociatedAppTokensIndex on AssociatedAppTokens(ELEMENTS));
Index the associated app tokens (all of them) with this object
index (IDKEY on ) [IdKey, Type = key];
Index methods: IDKEYCheck(), IDKEYDelete(), IDKEYExists(), IDKEYOpen(), IDKEYSQLCheckUnique(), IDKEYSQLExists(), IDKEYSQLFindPKeyByConstraint(), IDKEYSQLFindRowIDByConstraint()
index (IdentifierIndex on Identifier);
Index the device identifier
Index methods: IdentifierIndexExists()
index (ServiceIndex on Service);
Index the service
Index methods: ServiceIndexExists()
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %AddToSyncSet()
- %BMEBuilt()
- %CheckConstraints()
- %CheckConstraintsForExtent()
- %ClassIsLatestVersion()
- %ClassName()
- %ComposeOid()
- %ConstructClone()
- %Delete()
- %DeleteExtent()
- %DeleteId()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Exists()
- %ExistsId()
- %Extends()
- %GUID()
- %GUIDSet()
- %GetLock()
- %GetParameter()
- %GetSwizzleObject()
- %Id()
- %InsertBatch()
- %IsA()
- %IsModified()
- %IsNull()
- %KillExtent()
- %KillExtentData()
- %LoadFromMemory()
- %LockExtent()
- %LockId()
- %New()
- %NormalizeObject()
- %ObjectIsNull()
- %ObjectModified()
- %Oid()
- %OnBeforeAddToSync()
- %OnDetermineClass()
- %Open()
- %OpenId()
- %OriginalNamespace()
- %PackageName()
- %PhysicalAddress()
- %PurgeIndices()
- %Reload()
- %RemoveFromSaveSet()
- %ResolveConcurrencyConflict()
- %RollBack()
- %Save()
- %SaveDirect()
- %SaveIndices()
- %SerializeObject()
- %SetModified()
- %SortBegin()
- %SortEnd()
- %SyncObjectIn()
- %SyncTransport()
- %UnlockExtent()
- %UnlockId()
- %ValidateIndices()
- %ValidateObject()
- XMLDTD()
- XMLExport()
- XMLExportToStream()
- XMLExportToString()
- XMLNew()
- XMLSchema()
- XMLSchemaNamespace()
- XMLSchemaType()
Storage
Storage Model: CacheStorage (EnsLib.PushNotifications.IdentityManager.DeviceTracking)
^EnsLib.Push216E.DeviceTrackingD(ID) | = | %%CLASSNAME
Service
Identifier
AppIdentifier
AssociatedAppTokens
LastUpdatedUTC
|