BACnetWhoHas (FUN) ¶ FUNCTION BACnetWhoHas : IEC_BACNET_STATUS Sends a who-Has request. Sends a BACnet Who-Has request to a local or remote device or network. This routine allows an application to discover BACnet Devices whose local databases contain a given named object, or a given Object Identifier. The I-Have service is used to respond to Who-Has service requests. InOut: Scope Name Type Comment Return BACnetWhoHas IEC_BACNET_STATUS A status indicating whether the operation worked. Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS If the BACnet application has only one device constructed and installed, this can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. filterMin IEC_BACNET_DWORD Optional argument for the Who-Is request, which limit the lower range of Device instance numbers expected to respond to the Who-Is request. This argument is omitted from the request if both parameters have the value “BACNET_NO_FILTER” (use -1). filterMax IEC_BACNET_DWORD Optional argument for the Who-Is request, which limit the upper range of Device instance numbers expected to respond to the Who-Is request. This argument is omitted from the request if both parameters have the value “BACNET_NO_FILTER” (use -1). objectSpec POINTER TO IEC_BACNET_WHO_HAS_PARAM A pointer to a data structure which includes either the Object Identifier or Object Name of the object which is requested, and a tag field that indicates which of these two possibilities was chosen.
BACnetWhoIs (FUN) ¶ FUNCTION BACnetWhoIs : IEC_BACNET_STATUS Sends a who-Is request. Sends a BACnet Who-Is request to a local or remote device or network. This routine allows an application to discover BACnet Devices for which the Address isn’t known previously. In a simple network with only one LAN using ARCNET or Ethernet, a minimum delay of 1 second is adequate, but higher values may be appropriate in some situations. InOut: Scope Name Type Comment Return BACnetWhoIs IEC_BACNET_STATUS A status indicating whether the operation worked. Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS If the BACnet application has only one device constructed and installed, this can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. filterMin IEC_BACNET_DWORD Optional argument for the Who-Is request, which limit the lower range of Device instance numbers expected to respond to the Who-Is request. This argument is omitted from the request if both parameters have the value “BACNET_NO_FILTER” (use -1). filterMax IEC_BACNET_DWORD Optional argument for the Who-Is request, which limit the upper range of Device instance numbers expected to respond to the Who-Is request. This argument is omitted from the request if both parameters have the value “BACNET_NO_FILTER” (use -1).
BACnetWriteFile (FUN) ¶ FUNCTION BACnetWriteFile : IEC_BACNET_STATUS Sends an AtomicWriteFile request. Write an octet string into a specified position in a specified file. The file may be accessed as records or as a stream of octets. Choice is defined by the value of File_Access_Method property of the File object. Since the present version of this API does not support default processing of this service, the destination has to include a hook procedure to process it. This routine may control APDU properties like APDU length, segmentation, and timeout for both request and in response. This routine can execute asynchronously, i.e. this routine will return to the caller before the BACnet reply comes so that the applications can keep running. In this case the response information will be received by the thread which is responsible for receiving asynchronous responses. An optional BACNET_WRITE_FILE_COMPLETE_CB routine, which is provided by the BACnet application, shall be used to process this information. If a number of asynchronous requests are sent, the responses shall be queued and identified by the transaction handles. If the application does not supply the BACNET_WRITE_FILE_COMPLETE_CB routine; then the BACnetWriteFile routine sends a request and waits for reply. Asynchron call, which fills pResult with the call result in an asynchronus manner. As soon as pResultStatus is IEC_BACNET_STATUS.BACNET_STATUS_OK the data in pResult is valid. InOut: Scope Name Type Comment Return BACnetWriteFile IEC_BACNET_STATUS A status indicating whether the operation worked. Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS If the BACnet application has only one device constructed and installed, this can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. pWriteInfo POINTER TO IEC_BACNET_WRITE_FILE_INFO A pointer to the service request information data structure. This data structure contains the objectID, File Access Type ( IEC_BACNET_FILE_ACCESS_TYPE.FILE_ACCESS_STREAM or IEC_BACNET_FILE_ACCESS_TYPE.FILE_ACCESS_RECORD ) and Write File Data information. pAPDUParams POINTER TO IEC_BACNET_APDU_PROPERTIES A pointer to the APDU-Properties structure which sets APDU properties for this transaction only. This does not change global defaults or settings for the application APDU Properties. This argument may be 0. In this case APDU properties are used which were specified in the device object properties of the applications device which sends the request. pResult POINTER TO IEC_BACNET_WRITE_FILE_RESULT A pointer to a buffer to hold the Result data if successful writing (datatype IEC_BACNET_WRITE_FILE_RESULT ). pTransactionToken POINTER TO BACnetAsyncTransactionToken Transaction token of the asynchronous call - see BACnetAsyncTransactionToken . pError POINTER TO IEC_BACNET_ERROR A pointer to a structure to hold BACnet Error information. pError may be 0 if the application isn’t interested in detailed error information.
BACnetWriteGroup (FUN) ¶ FUNCTION BACnetWriteGroup : IEC_BACNET_STATUS Sends an unconfirmed WriteGroup request. The WriteGroup service is used by a sending BACnet-user to update arbitrary Channel objects Present_Value properties for a particular numbered control group. The WriteGroup service is an unconfirmed service. Upon receipt of a WriteGroup service request, all devices that are members of the specified control group shall write to their corresponding Channel objects Present_Value properties with the value applicable to the Channel Number, if any. A device shall be considered to be a member of a control group if that device has one or more Channel objects for which the ‘Group Number’ from the service appears in its Control_Groups property. If the receiving device does not contain one or more Channel objects with matching channel numbers, then those values shall be ignored. The WriteGroup service may be unicast, multicast, broadcast locally, on a particular remote network, or using the global BACnet network address. Because global broadcasts are generally discouraged, the use of multiple directed broadcasts is preferred. InOut: Scope Name Type Comment Return BACnetWriteGroup IEC_BACNET_STATUS Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS If the BACnet application has only one device constructed and installed, this can be NULL. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. pServiceInfo POINTER TO IEC_BACNET_WRITE_GROUP_INFO A pointer to the service request information data structure.
BACnetWriteProperty (FUN) ¶ FUNCTION BACnetWriteProperty : IEC_BACNET_STATUS Sends a WriteProperty request Sends a request to write a value to a property of an object. This routine may control APDU properties like APDU length, segmentation, and timeout for both request and in response. This routine can execute asynchronously, i.e. this routine will return to the caller before the BACnet reply comes so that the applications can keep running. In this case the response information will be received by the thread which is responsible for receiving asynchronous responses. An optional BACNET_SIMPLE_ACK_COMPLETE_CB routine, which is provided by the application, shall be used to process this information. If a number of asynchronous requests are sent, the responses shall be queued and identified by the transaction handles. If the application does not supply the BACNET_SIMPLE_ACK_COMPLETE_CB routine; then the routine sends a request and waits for the reply. Asynchron call. As soon as pResultStatus is IEC_BACNET_STATUS.BACNET_STATUS_OK the call was successfully completed. InOut: Scope Name Type Comment Return BACnetWriteProperty IEC_BACNET_STATUS A status indicating whether the operation worked. Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS IF the BACnet application has only one device constructed AND installed, THIS can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. pWriteInfo POINTER TO IEC_BACNET_WRITE_INFO A pointer to the service information data structure. This data structure identifies the property within the device and includes the object ID, property ID array index and also a property contents buffer with the value to be written. pAPDUParams POINTER TO IEC_BACNET_APDU_PROPERTIES A pointer to the APDU-Properties structure which sets APDU properties for this transaction only. This does not change global defaults or settings for the application APDU Properties. This argument may be 0. In this case APDU properties are used which were specified in the device object properties of the applications device which sends the request. pTransactionToken POINTER TO BACnetAsyncTransactionToken Transaction token of the asynchronous call - see BACnetAsyncTransactionToken . pError POINTER TO IEC_BACNET_ERROR A pointer to a structure to hold BACnet Error information. pError may be 0 if the application isn’t interested in detailed error information.
BACnetWritePropertyMultiple (FUN) ¶ FUNCTION BACnetWritePropertyMultiple : IEC_BACNET_STATUS Sends an WritePropertyMultiple request. Modifies the values of one or more specified properties of one or more Objects. This routine may control APDU properties like APDU length, segmentation, and timeout for both request and in response. This routine can execute asynchronously, i.e. this routine will return to the caller before the BACnet reply comes so that the application can keep running. In this case the response information will be received by the thread which is responsible for receiving asynchronous responses. An optional BACNET_WRITE_PROP_MUL_COMPLETE_CB routine, which is provided by the application, shall be used to process this information. If a number of asynchronous requests are sent, the responses shall be queued and identified by the transaction handles. If the application does not supply the BACNET_WRITE_PROP_MUL_COMPLETE_CB routine then this routine sends a request and waits for the reply. Asynchron call. As soon as pResultStatus is IEC_BACNET_STATUS.BACNET_STATUS_OK the call was successfully completed. InOut: Scope Name Type Comment Return BACnetWritePropertyMultiple IEC_BACNET_STATUS A status indicating whether the operation worked. Input pSourceAddress POINTER TO IEC_BACNET_ADDRESS If the BACnet application has only one device constructed and installed, this can be 0. In this case the MAC address of this device will be used. Otherwise this shall be the MAC address returned on device object construction. pDestinationAddress POINTER TO IEC_BACNET_ADDRESS This is the MAC address of the device to which the request should be sent. pServiceInfo POINTER TO IEC_BACNET_WRITE_MUL_INFO A pointer to the service request information data structure. pAPDUParams POINTER TO IEC_BACNET_APDU_PROPERTIES A pointer to the APDU-Properties structure which sets APDU properties for this transaction only. This does not change global defaults or settings for the application APDU Properties. This argument may be 0. In this case APDU properties are used which were specified in the device object properties of the applications device which sends the request. pTransactionToken POINTER TO BACnetAsyncTransactionToken Transaction token of the asynchronous call - see BACnetAsyncTransactionToken . pError POINTER TO IEC_BACNET_ERROR A pointer to a structure to hold BACnet Error information. pError may be 0 if the application isn’t interested in detailed error information. pFirstFailed POINTER TO IEC_BACNET_DEV_OBJ_PROP_REFERENCE A pointer to a structure to hold the device object property refernce which failed to be written.
advanced ¶ BACnetBackupBACnetDevice (Function) BACnetCloseClientCustomer (Function) BACnetGetClientDeviceCommunication (Function) BACnetOpenClientCustomer (Function) BACnetRegisterClientCommunicationStateCallback (Function) BACnetRegisterClientDataPoint (Function) BACnetRegisterClientEventNotification (Function) BACnetRegisterClientUnsubscribeCompletionCallback (Function) BACnetRestartAllClients (Function) BACnetRestoreBACnetDevice (Function) BACnetSetClientDeviceCommunication (Function) BACnetSetClientDeviceFixAddress (Function) BACnetSetClientDeviceFixSubscribeCovTime (Function) BACnetSetClientGlobalCommTimingParameters (Function) BACnetSetClientGlobalMaxDeviceActions (Function) BACnetUnregisterClientDataPoint (Function) BACnetUnregisterClientEventNotification (Function)
BACnetBackupBACnetDevice (FUN) ¶ FUNCTION BACnetBackupBACnetDevice : IEC_BACNET_STATUS Function initiates a backup for an BACnet device. This function will start an backup procedure for the specified device. InOut: Scope Name Type Comment Return BACnetBackupBACnetDevice IEC_BACNET_STATUS Input pInfo POINTER TO IEC_BACNET_BACKUPRESTORE_INFO Pointer to information which specifies which device should be backuped and where the file object data should be stored to be backuped. pICallback CmpEventMgr.ICmpEventCallback A pointer to the event-callback interface to inform about failures and progress information during the procedure execution. pAPDUParams POINTER TO IEC_BACNET_APDU_PROPERTIES A pointer to the APDU-Properties structure which sets APDU properties for this transaction only. This does not change global defaults or settings for the application APDU Properties. This argument may be NULL. In this case APDU properties are used which were specified in the device object properties of the applications device which sends the request. phTransaction POINTER TO BYTE The handle which identifies the transaction handled by the user application. The given handle has to be unique, in case the application needs to separate multiple pending requests. This handle is transparent for the BACnet API and is returned unchanged to the user application in the completion routine callback. This handle may be NULL, but the user application will be unable to cancel pending requests by a call to BACnetCancelPendingConfirmedRequest or to separate them in the callback if multiple completions are pending in such case.
BACnetCloseClientCustomer (FUN) ¶ FUNCTION BACnetCloseClientCustomer : IEC_BACNET_STATUS Closes an advanced BACnet client customer handle. The user application should call this API function to release all ressources of the advanced BACnet client API. InOut: Scope Name Type Comment Return BACnetCloseClientCustomer IEC_BACNET_STATUS Input hCustomer IEC_BACNET_HANDLE An handle to an created advanced BACnet client customer created by BACnetOpenClientCustomer.
BACnetGetClientDeviceCommunication (FUN) ¶ FUNCTION BACnetGetClientDeviceCommunication : IEC_BACNET_STATUS Retrieves the current device communication control value for the specified device. The user application can request the current communication enable state for registered devices. InOut: Scope Name Type Comment Return BACnetGetClientDeviceCommunication IEC_BACNET_STATUS Input devId IEC_BACNET_INST_NUMBER The device instance number for which communication needs to be requested. A value of 0xFFFFFFFF will retrieve the global communication enable / disable state. pDccValue POINTER TO IEC_BACNET_DCC_VALUE A pointer to hold the requested communication state which is filled by the API.