BACnetStack_SendSubscribeCOV
bool BACnetStack_SendSubscribeCOV( uint8_t * sentInvokeId, const uint32_t subscriberProcessIdentifier, const uint16_t monitoredObjectType, const uint32_t monitoredObjectInstance, const bool issueConfirmedNotifications, const uint32_t lifetime, const uint8_t * connectionString, const uint8_t connectionStringLength, const uint32_t networkPortInstance, const uint16_t destinationNetwork, const uint8_t * destinationAddress, const uint8_t destinationAddressLength);Sends a confirmed SubscribeCOV request to subscribe for Change-Of-Value notifications on an object’s Present_Value / Status_Flags.
See also: Client response hooks
BACnet reference: ANSI/ASHRAE 135-2024 clause 13.14 (SubscribeCOV Service).
Parameters
Section titled “Parameters”| Parameter | Direction | Description |
|---|---|---|
sentInvokeId |
out | The invoke-id of the sent request, valid only if this function returns true. |
subscriberProcessIdentifier |
in | The process identifier the subscriber uses to distinguish its own subscriptions. |
monitoredObjectType, monitoredObjectInstance |
in | The object being subscribed to. The type and instance are one BACnet Object Identifier carried as two parameters (see the API conventions). |
issueConfirmedNotifications |
in | Whether to request confirmed (true) or unconfirmed (false) COV notifications. |
lifetime |
in | The requested subscription lifetime in seconds (0 = indefinite, subject to the server’s limits). |
connectionString, connectionStringLength |
in | The datalink address to send TO (the destination) - not the local address to send from. For IPv4 this is 6 bytes: 4 octets of IPv4 address followed by 2 octets of port, big-endian (e.g. 0xC0,0xA8,0x01,0x05,0xBA,0xC0 = 192.168.1.5:47808; see BACnetStack_SendRegisterForeignDevice() for a worked example); on BACnet/IPv4 the stack refuses to send to a connection string of any other length, except that a broadcast from a device registered as a foreign device goes to its BBMD and does not use the connection string. MS/TP and BACnet/SC use a different connection-string shape; see their respective Set/Send exports. |
networkPortInstance |
in | The Network Port object instance to send the message on, or BACNET_NETWORK_PORT_DEFAULT (4194303) for the default/single port. |
destinationNetwork, destinationAddress, destinationAddressLength |
in | The destination to send the request to. |
Returns
Section titled “Returns”True if the request was sent, otherwise false. BY DESIGN there is no COV-notification hook. Incoming notifications arrive as ordinary frames in your CallbackReceiveMessageForPort; decode them with BACnetStack_DecodeAs(). The stack does not provide a typed callback for them and is not intended to.
Topic: Client requests. Declared in CASBACnetStackDLL.h.