Skip to content

lib-bacnet 库参考 ​

原文: https://finproducts.atlassian.net/wiki/spaces/JIDD3/pages/34793783519/FIN+5.3.1+lib-bacnet 中文整理基于 FIN 5.3.1

导读: 本页为 lib-bacnet 的 API / 标签 / 函数参考文档。

以下为 API 参考,保留英文以便对照源码;目录已列出(英文标题便于检索);概述已尽量中译。


目录(导读) ​

  • lib
  • meta
  • docs
  • tags
  • funcs
  • def
  • supertypes
  • Overview
  • Bacnet Connectors
  • Connector Points
  • Local device
  • bacnetAcknowledgeAlarm(conn, alarmDict)
  • bacnetAddEnumPropValMapping(mapData)
  • bacnetAddRouterEntry(address, dnetNumber)
  • bacnetAddToNotificationClass(conn, point)
  • bacnetAny(val, type)
  • bacnetApplyNetworkPortPendingChanges()
  • bacnetAtomicReadFile(conn, id, handle, offset: Number.<ctor>(0), count: Number.<ctor>(1))
  • bacnetAtomicWriteFile(conn, id, handle, offset: Number.<ctor>(0), count: Number.<ctor>(1))
  • bacnetBackupDevice(conn, password: null)
  • bacnetCharString(val, type: "ASCII")
  • bacnetCharacter(val)
  • bacnetClientRestart(restoreOldConfig: false)
  • bacnetConfirmedTextMessage(conn, msgPriority, message, messageClass)
  • bacnetCreateObject(conn, obj, propValueDict)
  • bacnetDbcsString(val, codePage: Number.<ctor>(0))
  • bacnetDeleteObject(conn, obj)
  • bacnetDeviceCommunicationControl(conn, dccValue, timeRem: Number.<ctor>(-1min), password: "")
  • bacnetDeviceDiscovery(broadcastAddress, low, high, networkNumber: Number.<ctor>(65535), discoveryTimeout: Number.<ctor>(8sec), queryDevProps: true)
  • bacnetDiscoverObjects(conn, refetch: true)
  • bacnetDouble(val)
  • bacnetEmptyList()
  • bacnetEnrollmentSummary(conn, acknowledgementFilter, enrollment: null, eventState: null, eventType: null, minPriority: null, maxPriority: null, notificationClass: null)
  • bacnetEnum(val)
  • bacnetGetAlarmSummary(conn)
  • bacnetGetBackupStatus(filter: null)
  • bacnetGetDeviceInstanceNumber()
  • bacnetGetDeviceObjectName()
  • bacnetGetEventInformation(conn, isFetchMoreEvents: false, obj: null)
  • bacnetGetHandledAlarms(conn)
  • bacnetGetHandledEvents(conn)
  • bacnetGetLocalBindAddress()
  • bacnetGetLocalDnetNumber()
  • bacnetGetMaxDeviceInstance()
  • bacnetGetMaxMacAddress()
  • bacnetGetMaxNetworkNumber()
  • bacnetGetNotificationSubscriptions(conn)
  • bacnetGetPhysicalPortDnetNumber()
  • bacnetGetStackConfigKeys()
  • bacnetGetStringTypeSupported(conn)
  • bacnetGetUnhandledAlarms(conn)
  • bacnetGetUnhandledEvents(conn)
  • bacnetIsoString(val)
  • bacnetJisString(val)
  • bacnetLearn(conn, uri: null)
  • bacnetLifeSafetyOperation(conn, operation, requestingSource: null, obj: null)
  • bacnetListBroadcastIps()
  • bacnetListLocalIps()
  • bacnetLocalBindAddress()
  • bacnetMigratePoints()
  • bacnetMigration(ops: Etc.makeDict(["point":Marker.val]))
  • bacnetNotificationsSubscribeConn(conn)
  • bacnetNotificationsSubscribePoint(conn, point)
  • bacnetNotificationsUnsubscribeConn(conn)
  • bacnetNotificationsUnsubscribePoint(conn, point)
  • bacnetObjectTypeList()
  • bacnetPing(conn)
  • bacnetPropertyIdentifierList()
  • bacnetReadEnumPropValMapping()
  • bacnetReadHis(conn, obj, range, removeNull: false)
  • bacnetReadObject(conn, obj)
  • bacnetReadObjectProperty(conn, obj, prop, index: null)
  • bacnetReadPoolSizeFromBbsConfig()
  • bacnetReadPropertyFromDB(obj, prop, index: null)
  • bacnetReadPropertyMultiple(conn, objectPropDict)
  • bacnetReadStackConfig(configKeys: null)
  • bacnetReadStructuredView(conn, refetch: true)
  • bacnetReal(val)
  • bacnetRegisterBBMDwithNetworkPort(bbmdEnteries: null, acceptFdRegistration: true, maxFdtEntries: Number.<ctor>(16), twoHops: true)
  • bacnetRegisterForeignDeviceWithNetworkPort(ipUdp, timeToLive, fdRegTimeout, fdRegRetries: Number.<ctor>(3))
  • bacnetRemoveFromNotificationClass(conn, point)
  • bacnetRemoveStackConfig(configKey)
  • bacnetRestoreDevice(conn, restoreVersion: null, password: null)
  • bacnetScheduleEffectivePeriod(conn, point)
  • bacnetScheduleRead(conn, point)
  • bacnetScheduleWrite(conn, point, schedule, writeLevel: Number.<ctor>(8))
  • bacnetSetDeviceInstanceNumber(devInstance, reinitStack: true)
  • bacnetSetDeviceObjectName(objectName, reinitStack: true)
  • bacnetSetLocalBindAddress(localBindAddress, reinitStack: true)
  • bacnetSetLocalDnetNumber(dnetInstance, reinitStack: true, checkDuplicateServerNetwork: true)
  • bacnetSetPhysicalPortDnetNumber(physicaldnetNumber, reinitStack: true, checkDuplicateLocalNetwork: true)
  • bacnetSigned(val)
  • bacnetSyncCur(points)
  • bacnetSyncHis(points, range: null)
  • bacnetSyncObjectProperty(conn, obj, prop, index: null)
  • bacnetTimeSynchronization(conn, date, time)
  • bacnetUcs2String(val)
  • bacnetUcs4String(val)
  • bacnetUnconfirmedTextMessage(conn, msgPriority, message, messageClass)
  • bacnetUnregisterBBMDwithNetworkPort(reinitStack: true)
  • bacnetUnregisterForeignDeviceWithNetworkPort(reinitStack: true)
  • bacnetUnsigned(val)
  • bacnetUnsigned16(val)
  • bacnetUnsigned64(val)
  • bacnetUpdatePoolSizeInConfig(cliTsmSize: Number.<ctor>(150), srvTsmSize: Number.<ctor>(150), pduPoolSize: Number.<ctor>(200), reinitStack: true)
  • bacnetUtcTimeSynchronization(conn, date, time)
  • bacnetWhoHas(broadcastAddress, low, high, obj, networkNumber: Number.<ctor>(65535), discoveryTimeout: Number.<ctor>(8sec), queryDevProps: true)
  • bacnetWriteGroupService(conn, groupNumber, writePriority, nListOfChannelValue, fInhibitDelay, inhibitDelay, changeList)
  • bacnetWriteNetworkPortProperty(prop, value, reinitStack: false, index: null)
  • bacnetWriteObjectProperty(conn, obj, prop, value, priority: Number.<ctor>(16), index: null)
  • bacnetWritePropertyMultiple(conn, objectPropDict)
  • bacnetWriteStackConfig(dictVal, reinitStackIfNeeded: true)
  • finSyncPointsInLib(connIds, fromOrd, toOrd)

概述(中译) ​

BACnet 扩展


API 正文(英文) ​

docs ​

Overview • Bacnet Connectors • Connector Points • Local device


tags ​

bacnetAlarmPidIt specifies the connector will only handle alarms associated with that process identifier
bacnetConnMarker tag for BACnet connection
bacnetConnRefUsed on a proxy object to reference its parent bacnetConn
bacnetCovResubscribeTimeoutApplied to ConnTuning specifies when the COV re-subscribe should be performed for points that failed to be subscribed
bacnetCovTimeoutApplied to ConnTuning to specify the lifetime for a COV subscription sent to the device
bacnetCurUsed on a BACnet proxy point to subscribe for current value
bacnetDeviceApplied to a record to create a BACnet device object
bacnetDeviceNameTag for current device name
bacnetDeviceRefApplied to a bacnetConn or ext to reference a BACnet device object
bacnetDisableCovApplied to ConnTuning to disable the COV for a specific point or all the points in a connector
bacnetEnableOutOfServiceApplied to ConnTuning will enable getting the overridden value for points that have the BACnet OUT_OF_SERVICE (Remote Disabled) status flag
bacnetEnumPropMappingMarker tag for Enum and property value conversion mapping for schedule object
bacnetHisUsed on a BACnet proxy point to store BACnet trend log id
bacnetInitIntervalApplied to ConnTuning to tune the duration between driver re-initialization
bacnetInstanceApplied to bacnetDevice it specifies what device instance number is used when the connector is in COV mode, the default instance number randomly picked between 50000 and 200000
bacnetRoutebacnetRoute string tag if connecting through VPN and if network number is 0
bacnetScheduleReadbacnetScheduleRead tag enables the reading of BACnet schedule properties, required for schedule read sync
bacnetScheduleReadFreqThis tag denotes the frequency duration at which schedule read sync will occur
bacnetScheduleWritebacnetScheduleWrite tag enables the writing of BACnet schedule properties
bacnetUseConfirmedCovApplied to ConnTuning to make the COV subscription mechanism to use confirmed COV messages
bacnetVersionTag for current connection protocol version
bacnetWriteReference for BACnet object id to be written
bacnetWriteLevelNumber between 1 and 17 used with bacnetWriteLevel to determine which priority level of the remote system is written to

funcs ​

bacnetAcknowledgeAlarmAcknowledges an alarm
bacnetAddEnumPropValMappingThe method will save Enum and property value conversion mapping for schedule object e.g
bacnetAddRouterEntryMake a network Table entry manually of router
bacnetAddToNotificationClassAdds the connector to the provided notification class, to enable receiving alarm/event notifications
bacnetAnyThe method will convert the input data/Dict to given type
bacnetApplyNetworkPortPendingChangesApply the pending changes in the stack configuration by restarting the stack with new changes Examples
bacnetAtomicReadFileReads the content of a BACnet File object
bacnetAtomicWriteFileWrites the content of a IOHandle to a BACnet File object
bacnetBackupDeviceTakes the backup of the Device
bacnetCharStringThe method will convert the input Str to Character String
bacnetCharacterThe method will convert the input Str to Character Array
bacnetClientRestartRestart the stack Parameters
bacnetConfirmedTextMessageThe ConfirmedTextMessage service is used by a client BACnet-user to send a text message to another BACnet device
bacnetCreateObjectCreate a Bacnet Object Parameters
bacnetDbcsStringThe method will convert the input Str to dbcs String
bacnetDeleteObjectDelete a Bacnet Object Parameters
bacnetDeviceCommunicationControlbacnetDeviceCommunicationControl(@connRef, dccValue, timeRem, password) bacnetDeviceCommunicationControl(read(bacnetConn), 0, 180sec) bacnetDeviceCommunicationControl(read(bacnetConn),"ENABLE", 2min)
bacnetDeviceDiscoveryDiscover BACnet devices and returns a grid with them
bacnetDiscoverObjectsDiscover BACnet objects from the BACnet device
bacnetDoubleThe method will convert the input Number to Double
bacnetEmptyListThe method indicates to write an empty list
bacnetEnrollmentSummaryThe GetEnrollmentSummary service is used to obtain a summary of event-initiating objects Parameters
bacnetEnumThe method will convert the input Number to Enumeration
bacnetGetAlarmSummaryRetrieves the Alarm Summary from the device and adds them in the Alarm Extension
bacnetGetBackupStatusGets the device backup information
bacnetGetDeviceInstanceNumberThe method will return the bacnet device instance number
bacnetGetDeviceObjectNameThe method will return the bacnet device object name
bacnetGetEventInformation"active event states" refers to all event-initiating objects that (a) have an Event_State property whose value is not equal to NORMAL, or (b) have an Acked_Transitions property, which has at least one of the bits (TO_OFFNORMAL, TO_FAULT, TO_NORMAL) set to FALSE
bacnetGetHandledAlarmsReturns the handled alarms from this Bacnet connector
bacnetGetHandledEvents
bacnetGetLocalBindAddressThe method will get localBindAddress
bacnetGetLocalDnetNumberThe method will return the local dnet number
bacnetGetMaxDeviceInstance
bacnetGetMaxMacAddress
bacnetGetMaxNetworkNumber
bacnetGetNotificationSubscriptionsReturns all the Notification Classes this current connector receives notifications from
bacnetGetPhysicalPortDnetNumberThe method will get physical port dnet Number
bacnetGetStackConfigKeysMethod will return all the config keys defined by the system
bacnetGetStringTypeSupportedRetrieves the String type supported for the connector
bacnetGetUnhandledAlarmsReturns the unhandled alarms from this Bacnet connector This is more for testing purposes, to see we are receiving alarms
bacnetGetUnhandledEventsReturns the unhandled alarm events (type=event) of Bacnet connector This is more for testing purposes, to see we are receiving alarms
bacnetIsoStringThe method will convert the input Str to Iso8859 String
bacnetJisStringThe method will convert the input Str to Jisc6226 String
bacnetLearnReturns a grid with the BACnet objects residing on the device the connector points to
bacnetLifeSafetyOperation- conn
bacnetListBroadcastIpsList all the available IPv4 broadcast addresses
bacnetListLocalIpsList all the available IPv4 local addresses, excluding the loopback
bacnetLocalBindAddressReturns the local address to which the BACnet stack is bind
bacnetMigratePointsThis method will migrate point data from FIN 5.1.X release to FIN 5.1.7 release Accumulator and Schedule point will be migrated
bacnetMigrationManually call the migration functions for the current project
bacnetNotificationsSubscribeConnSubscribe to connector, to receive notifications for all the points from it that are bound in DB builder
bacnetNotificationsSubscribePointSubscribe to connector, to receive notifications only for the provided point
bacnetNotificationsUnsubscribeConnUnsubscribe from connector, from receiving notifications for all the points that are bound in DB builder
bacnetNotificationsUnsubscribePointUnsubscribe from connector, from receiving notifications only for the provided point
bacnetObjectTypeListList all standard BACnet object types
bacnetPingAsynchronously ping an bacnet connector Examples
bacnetPropertyIdentifierListList all standard properties that a BACnet object can support
bacnetReadEnumPropValMappingThe method will fetch all Enum and property value conversion mapping for schedule object Examples
bacnetReadHisRead history log from a BACnet Trend Log object Parameters
bacnetReadObjectRead all know properties for this BACnet object Parameters
bacnetReadObjectPropertyRead a BACnet property from a BACnet object Parameters
bacnetReadPoolSizeFromBbsConfigReads the Client_pool_size, Server_pool_size & Pdu_pool_size from the BBS config
bacnetReadPropertyFromDBReads property value from our own Stack data-base, like properties from Device or Network-port Object Parameters
bacnetReadPropertyMultipleReads multiple object properties using the BACnet ReadPropertyMultiple service if the remote device supports it
bacnetReadStackConfigThe method will return the Config value for inquired Config keys from /etc/bacnetExt/config.props file configKey
bacnetReadStructuredViewReads the properties of BACnet Structured View objects for a given connector
bacnetRealThe method will convert the input Number to Real
bacnetRegisterBBMDwithNetworkPortRegisters the device as BBMD using network-port object and puts the entry provided in the BBMD-BROADCAST-DISTRIBUTION-TABLE property
bacnetRegisterForeignDeviceWithNetworkPortRegisters the device as foreign device by requesting the BBMD of the other subnet it wants to register itself
bacnetRemoveFromNotificationClassRemoves the local device corresponding to the connector from the provided notification class, to disable receiving alarm/event notifications
bacnetRemoveStackConfigThe method will return delete the provided config entry
bacnetRestoreDeviceRestores the device from the already backed up data
bacnetScheduleEffectivePeriodReads the effective period for a bacnet schedule point Paramaters
bacnetScheduleReadReads the weekly schedule from a bacnet schedule point Paramaters
bacnetScheduleWriteWrites a weekly schedule to a bacnet schedule point Paramaters
bacnetSetDeviceInstanceNumberSet instance number of our device
bacnetSetDeviceObjectNameThe method will set object name of default server device
bacnetSetLocalBindAddressThe method will set localBindAddress - localBindAddress
bacnetSetLocalDnetNumberThe method will set the local dnet number
bacnetSetPhysicalPortDnetNumberThe method will set physical port dnet Number
bacnetSignedThe method will convert the input Number to Signed
bacnetSyncCurAsynchronously synchronize current values for given list of proxy points
bacnetSyncHisImport the lastest data from an BACnet Trend Log object to the local history database, for each point provided
bacnetSyncObjectPropertyFunction to sync BACnet object property of BACnet device point to the FIN Note:- Support is currently limited to the units property only
bacnetTimeSynchronizationSynchronizes the time of the Device Parameters
bacnetUcs2StringThe method will convert the input Str to UCS 2 String
bacnetUcs4StringThe method will convert the input Str to UCS 4 String
bacnetUnconfirmedTextMessageParameters
bacnetUnregisterBBMDwithNetworkPortbacnetUnregisterBBMDwithNetworkPort() This query will Unregister BBMD from network-port object
bacnetUnregisterForeignDeviceWithNetworkPortbacnetUnregisterForeignDeviceWithNetworkPort() This query will delete Foreign device details from stack database
bacnetUnsignedThe method will convert the input Number to Unsigned
bacnetUnsigned16The method will convert the input Number to Unsigned16
bacnetUnsigned64The method will convert the input Number to Unsigned64
bacnetUpdatePoolSizeInConfigThis query updates the Server-TSML-pool, Client-TSML-pool size & Pdu-pool size in the bbs.conf
bacnetUtcTimeSynchronizationSynchronizes the time of the Device with UTC Parameters
bacnetWhoHasSends a WhoHas request in the network Parameters
bacnetWriteGroupService-nListOfChannelValue
bacnetWriteNetworkPortPropertyUpdate/Write property value in our own Stack data-base for supported properties from Device or Network-port Object Parameters
bacnetWriteObjectPropertyWrite a BACnet property value Parameters
bacnetWritePropertyMultipleWrites multiple object properties using the BACnet WritePropertyMultiple service if the remote device supports it
bacnetWriteStackConfigThe method will write the Config key-value to /etc/bacnetExt/config.props file Dict
finSyncPointsInLib


def ​

bacnetAlarmPid ​

It specifies the connector will only handle alarms associated with that process identifier. If the tag is missing then the connector will handle alarms associated with any process identifier.


meta ​

defbacnetAlarmPid
isnumber
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit


def ​

bacnetConn ​

Marker tag for BACnet connection. See bacnet.


meta ​

defbacnetConn
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetConnRef ​

Used on a proxy object to reference its parent bacnetConn


meta ​

defbacnetConnRef
isref
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
refReference to an entity


def ​

bacnetCovResubscribeTimeout ​

Applied to ConnTuning specifies when the COV re-subscribe should be performed for points that failed to be subscribed. Works in ConnTuning applied on point or on connector, if both are present the tag value from the point's ConnTuning will have priority. Value must have time unit. If not configured it defaults to bacnetCovTimeout value.


meta ​

defbacnetCovResubscribeTimeout
isnumber
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit


def ​

bacnetCovTimeout ​

Applied to ConnTuning to specify the lifetime for a COV subscription sent to the device. After this timeout the COV status for all points in a connector will be revised and try to re-subscribe, even failed points if bacnetCovResubscribeTimeout has passed. A value of 0 means an infinite lifetime and no re-subscription will be performed. Works in ConnTuning applied only on connector. If these is a ConnTuning applied on point then its tag value will be ignored. Value must have time unit. If not configured it defaults to 10min.


meta ​

defbacnetCovTimeout
isnumber
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit


def ​

bacnetCur ​

Used on a BACnet proxy point to subscribe for current value. See bacnet.


meta ​

defbacnetCur
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetDevice ​

Applied to a record to create a BACnet device object.


meta ​

defbacnetDevice
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetDeviceName ​

Tag for current device name


meta ​

defbacnetDeviceName
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetDeviceRef ​

Applied to a bacnetConn or ext to reference a BACnet device object.


meta ​

defbacnetDeviceRef
isref
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
refReference to an entity


def ​

bacnetDisableCov ​

Applied to ConnTuning to disable the COV for a specific point or all the points in a connector. Works in ConnTuning applied on point or on connector, if both are present the tag value from the point's ConnTuning will have priority. If not configured it defaults to false.


meta ​

defbacnetDisableCov
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetEnableOutOfService ​

Applied to ConnTuning will enable getting the overridden value for points that have the BACnet OUT_OF_SERVICE (Remote Disabled) status flag.


meta ​

defbacnetEnableOutOfService
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetEnumPropMapping ​

Marker tag for Enum and property value conversion mapping for schedule object.


meta ​

defbacnetEnumPropMapping
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetHis ​

Used on a BACnet proxy point to store BACnet trend log id. See bacnet.


meta ​

defbacnetHis
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetInitInterval ​

Applied to ConnTuning to tune the duration between driver re-initialization. When learning, the driver will cache the learned object for the period of time specified by this. If not configured it defaults to 15min. Any learn operation, after this period expires, will re-fetch the whole remote device object structure.


meta ​

defbacnetInitInterval
isduration
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit
durationNumber with a unit of time


def ​

bacnetInstance ​

Applied to bacnetDevice it specifies what device instance number is used when the connector is in COV mode, the default instance number randomly picked between 50000 and 200000. Setting this value is required to avoid potential conflicts with an existing device on the network with the same instance number as the default used by the connector.


meta ​

defbacnetInstance
isnumber
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit


def ​

bacnetRoute ​

bacnetRoute string tag if connecting through VPN and if network number is 0. The bacnetRoute tag will need to be added to the BACnet connector in order for it to communicate and for the connector to know where the device lives. The reason is because VPN does not support broadcast messages such as <who-is> and <i-am>. The bacnetRoute tag is a string type and its value is the router IP address. bacnetRoute tag is to be added at connector level. This tag adds router IP entry in router table in stack. Generally router table is updated automatically when I-Am-Router-To-Network or I-am BACnet request comes to FIN. In case we don't receive those request then we can manually add router IP using bacnetRoute tag.


meta ​

defbacnetRoute
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetScheduleRead ​

bacnetScheduleRead tag enables the reading of BACnet schedule properties, required for schedule read sync. This tag is automatically added during device learn.


meta ​

defbacnetScheduleRead
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetScheduleReadFreq ​

This tag denotes the frequency duration at which schedule read sync will occur. Schedule read sync is essentially a polling process that reads the schedule properties of a Schedule object. Since schedules are not changed regularly, it is recommended to set the sync frequency to the maximum suitable time. The recommended value is once per day (24 hours). Minimum value allowed is 1 minute.


meta ​

defbacnetScheduleReadFreq
isduration
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit
durationNumber with a unit of time


def ​

bacnetScheduleWrite ​

bacnetScheduleWrite tag enables the writing of BACnet schedule properties. This tag is automatically added during device learn.


meta ​

defbacnetScheduleWrite
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetUseConfirmedCov ​

Applied to ConnTuning to make the COV subscription mechanism to use confirmed COV messages. Works in ConnTuning applied on point or on connector, if both are present the tag value from the point's ConnTuning will have priority.


meta ​

defbacnetUseConfirmedCov
ismarker
liblib:bacnet

supertypes ​

markerMarker labels a dict with typing information


def ​

bacnetVersion ​

Tag for current connection protocol version


meta ​

defbacnetVersion
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetWrite ​

Reference for BACnet object id to be written. Must also define bacnetWriteLevel. See bacnet.


meta ​

defbacnetWrite
isstr
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
strUnicode string of characters


def ​

bacnetWriteLevel ​

Number between 1 and 17 used with bacnetWriteLevel to determine which priority level of the remote system is written to.


meta ​

defbacnetWriteLevel
isnumber
liblib:bacnet

supertypes ​

valData value type
scalarScalar is an atomic value kind
numberInteger or floating point numbers annotated with an optional unit

lib bacnet ​

Overview ​

The bacnet extension implements client connectivity to BACnet/IP devices. Functionality supported by the bacnet connector:

  • COV subscription of current value
  • Polling of current value
  • History synchronization with Trend_Log objects
  • Writable support for AOs, BOs and MultiState Output

Bacnet Connectors ​

Bacnet Connectors are defined with following tags:

  • bacnetConn: required marker tag
  • dis: display name of the connector
  • uri: address of device (see format below)
  • <bacnetForcePolling>: forces polling instead of COV subscription

The uri format for bacnet connectors is formatted:

bacnet://{host}[:port]/{deviceId}[?dnet={networkNum}&dadr={macAddr}]

The port value can be omitted, it defaults to 47808 (0xBAC0). The deviceId is the unit ID - the actual device to communicate with.

All the query options are optional:

  • networkNum: is the MS/TP network number
  • macAddr: the MAC address in hexidecimal

Connector Points ​

The following address tags are used for point addresses:

  • bacnetCur
  • bacnetHis
  • bacnetWrite

The format for these addresses is objectId:instanceNumber. For Analog and Binary BACnet objects a short version can be used in the format ObjectShortNameInstanceNumber like AI1, AO1, AV1, BI1, BO1, BV1, where AO = Analog Output, AI = Analog Input, AV = Analog Value and 1 is the object instance number. When the present value needs to be polled from a vendor proprietary BACnet object the address uses this format objectId:instanceNumber:propertyIdentifier

Local device ​

By default each connector will have a common shared bacnetDevice that is available to the BACnet network the connector connects to. This device is by default configured with a random instance number, see bacnetInstance.

The connector will expose a set of services like:

  • Who-Is
  • I-Am
  • Who-Has
  • I-Have
  • Read-Property
  • Read-Property-Multiple

This virtual device and its mentioned services play a role in the BACnet interoperability and is vital to make the CoV services work with some BACnet device vendors.

This device defaults can be overridden by creating a new record with the bacnetDevice Marker tag and with a user selected bacnetInstance Number tag. A bacnetDeviceRef Ref tag can be added to the bacnet extension record. This will ensure that all connectors are sharing the same device instances number across the network they talk to. The bacnetDeviceRef tag can be added at the connector level also.

If required, some services can be disabled on the virtual device by adding Bool tags such as supportsReadPropertyMultiple with value false to the bacnetDevice record.



def ​

func:bacnetAcknowledgeAlarm ​

bacnetAcknowledgeAlarm(conn, alarmDict) ​

Acknowledges an alarm. Need to specify the connector this alarm came from.

Parameters:

  • conn: Ref to or a record with a bacnetConn tag

  • alarm: Dict representing the alarm. The dict structure must comply to the alarm's format

    and resemble the results of funtion like

Returns:

String that shows the success of the operation.

meta ​

admin✓
deffunc:bacnetAcknowledgeAlarm
isfunc
liblib:bacnet
namebacnetAcknowledgeAlarm

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAddEnumPropValMapping ​

bacnetAddEnumPropValMapping(mapData) ​

The method will save Enum and property value conversion mapping for schedule object e.g. Let's consider Schedule Object's PRESENT_VALUE type is Enumeration and reference object is Multi-State-Value then based on PRESENT_VALUE number corresponding State_Text string is shown, here State_Text is property from where we are taking labels for Number to Enum conversion.

Examples:

bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH1", "refDevice":"DEV5", "refObj":"MSV7", "refProperty":"STATE_TEXT","scheduleObjectType":"MSV", "isOverride":false})

Parameters:

  • contextDevice: Device Object / Instance for which we need conversion.

    i.e "DEV1" / "8:1" / "1" / @connRef
  • contextObj: the BACnet Object for which we need conversion (Currently Schedule Object Supported )

    i.e. "SCH1" /"17:1"/ "SCH" /"17" /@pointRef
  • refDevice: Device Object / Instance from where we need refer reference object and property (if we need to refer property from other device)

    i.e. "DEV5"/"8:5"/"5"/@connRef
  • refObj: the BACnet Object from where we need to refer property for conversion.(Any BACnet Object)

    i.e. "MSV7" /"19:7" /@pointRef
  • refProperty: the BACnet Object's property from where we will refer labels for conversion. i.e. "STATE_TEXT"/ 110

    Note:- refProperty should be Array of CharacterString
  • scheduleObjectType: schedule object type value i.e. "MSI","MSO","MSV","BI","BO","BV","CLN" etc

  • isOverride: Default value false

    If true, it will override default conversion mapping / 
    If false, it will provide mapping in case of empty list of Object Property references only.
Note:- In case of Boolean Schedule in place of refProperty we need to provide two properties one for False (refFalseProperty) and other for true (refTrueProperty)
Both are of CharacterString type.
  • refFalseProperty: the BACnet Object's property from where we will refer label for False. i.e. "INACTIVE_TEXT"/ 46
  • refTrueProperty: the BACnet Object's property from where we will refer label for True. i.e. "ACTIVE_TEXT"/ 4
bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH1", "refDevice":"DEV5", "refObj":"BO1", "refTrueProperty":"ACTIVE_TEXT", "refFalseProperty":"INACTIVE_TEXT","scheduleObjectType":"BV", "isOverride":false})

  (Recommended)
  1. Schedule Object Conversion mapping for specific device instance, and reference object and property from same device instance bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH1", "refObj":"MSV7", "refProperty":"STATE_TEXT", "scheduleObjectType":"MSV"}) bacnetAddEnumPropValMapping({"contextDevice":"8:1", "contextObj":"17:1", "refObj":"19:7", "refProperty":110, "scheduleObjectType":19}) bacnetAddEnumPropValMapping({"contextDevice":@contextConnRef, "contextObj":@contextPointRef, "refObj":@pointRef, "refProperty":110, "scheduleObjectType":"MSV"})
(Recommended)
  1. Schedule Object Conversion mapping for specific device instance, and reference object and property from other device instance bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH1","refDevice":"DEV5", "refObj":"MSV7", "refProperty":"STATE_TEXT","scheduleObjectType":"MSV"}) bacnetAddEnumPropValMapping({"contextDevice":"8:1", "contextObj":"17:1","refDevice":"8:5", "refObj":"19:7", "refProperty":110, "scheduleObjectType":19}) bacnetAddEnumPropValMapping({"contextDevice":@contextConnRef, "contextObj":@contextPointRef, "refDevice":@connRef, "refObj":@pointRef, "refProperty":110, "scheduleObjectType":"MSV"})
(Recommended) - for Boolean Schedules
  1. Schedule Object Conversion mapping for specific device instance, and reference object and property from other device instance bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH1","refDevice":"DEV5", "refObj":"BO1", "refTrueProperty":"ACTIVE_TEXT", "refFalseProperty":"INACTIVE_TEXT", "scheduleObjectType":"BV"})
(cautious - Instance level Global Enum Property Value Conversion Mapping)
  1. Schedule Object Conversion mapping for specific device instance, and reference object and property from same device instance bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"SCH", "refObj":"MSV7", "refProperty":"STATE_TEXT", "scheduleObjectType":"MSV"}) bacnetAddEnumPropValMapping({"contextDevice":"DEV1", "contextObj":"17", "refObj":"19:7", "refProperty":110, "scheduleObjectType":"MSV"})

    Note:- This mapping will applicable globally for specified device instance i.e for all schedule object of specified device instance

    as we have not specified schedule object instance (like SCH).

meta ​

admin✓
deffunc:bacnetAddEnumPropValMapping
isfunc
liblib:bacnet
namebacnetAddEnumPropValMapping

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAddRouterEntry ​

bacnetAddRouterEntry(address, dnetNumber) ​

Make a network Table entry manually of router. Examples:

bacnetAddRouterEntry("192.168.253.1:47808", 3)

meta ​

admin✓
deffunc:bacnetAddRouterEntry
isfunc
liblib:bacnet
namebacnetAddRouterEntry

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAddToNotificationClass ​

bacnetAddToNotificationClass(conn, point) ​

Adds the connector to the provided notification class,
to enable receiving alarm/event notifications.
Low level function for debugging mostly.

Parameters:
   - conn: the BACnet connector used to communicate to the device
   - point: a point bound to a Notification Class Object or a dict ["bacnetRef":"NC1"]

meta ​

admin✓
deffunc:bacnetAddToNotificationClass
isfunc
liblib:bacnet
namebacnetAddToNotificationClass

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAny ​

bacnetAny(val, type) ​

The method will convert the input data/Dict to given type. And return it as Unsafe Obj instance. Method is typically used for write purpose. type is the Object type defined in BACnet standard.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetAny
isfunc
liblib:bacnet
namebacnetAny

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetApplyNetworkPortPendingChanges ​

bacnetApplyNetworkPortPendingChanges() ​

Apply the pending changes in the stack configuration by restarting the stack with new changes

Examples: bacnetApplyNetworkPortPendingChanges()


meta ​

admin✓
deffunc:bacnetApplyNetworkPortPendingChanges
isfunc
liblib:bacnet
namebacnetApplyNetworkPortPendingChanges

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAtomicReadFile ​

bacnetAtomicReadFile(conn, id, handle, offset: Number.<ctor>(0), count: Number.<ctor>(1)) ​

Reads the content of a BACnet File object.

Parameters:

  • conn:Obj, a BACnet connection id or record
  • id:Str, a BAcnet File object identifier
  • handle:Obj, and IOHandle to be used to write what is read from the BACnet file.
  • offset:Num, the offset position or the record from where to start to read from the file
  • count:Num, how many bytes/records to be read, defaults to max

Returns:

a Dict with these columns

  • size:Num, the total size read (bytes/records)
  • eof:Bool, marks the end of file

Example:

bacnetAtomicReadFile(@connRef, "10:1", `io/bacnetFile`)

meta ​

admin✓
deffunc:bacnetAtomicReadFile
isfunc
liblib:bacnet
namebacnetAtomicReadFile

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetAtomicWriteFile ​

bacnetAtomicWriteFile(conn, id, handle, offset: Number.<ctor>(0), count: Number.<ctor>(1)) ​

Writes the content of a IOHandle to a BACnet File object.

Parameters:

  • conn:Obj, a BACnet connection id or record
  • id:Str, a BAcnet File object identifier
  • handle:Obj, and IOHandle to be used to read the data to be written to the BACnet file.
  • offset:Num, the offset position or the record from where to start to write the BACnet file
  • count:Num, how many records to be written, defaults to max

Returns:

a Dict with these columns

  • size:Num, the total size written (bytes/records)
  • startPosition:Num, the start position/record of the new file

Example:

bacnetAtomicWriteFile(@connRef, "10:1", `io/bacnetFile`)

meta ​

admin✓
deffunc:bacnetAtomicWriteFile
isfunc
liblib:bacnet
namebacnetAtomicWriteFile

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetBackupDevice ​

bacnetBackupDevice(conn, password: null) ​

Takes the backup of the Device.

Parameters:

  • conn: the BACnet connection used to query the object properties

  • password: Device password. Default value is null if the password is not present in the device.

Returns:

the relative path from the project of the backed up data.

Examples:

bacnetBackupDevice(read(bacnetConn),"abc")

meta ​

admin✓
deffunc:bacnetBackupDevice
isfunc
liblib:bacnet
namebacnetBackupDevice

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetCharString ​

bacnetCharString(val, type: "ASCII") ​

The method will convert the input Str to Character String. And return it as Unsafe Obj instance. Method is typically used for write purpose. By Default string type is ASCII. Other types available are UCS2, UCS4, ISO(ISO8859), JIS(JISC6226), DBCS. For types other than ASCII, pass the type name as the second parameter.

Example- bacnetCharString("Test","ISO") bacnetCharString("TEST","jis") bacnetCharString("TETS","UCS2") bacnetCharString("TETS","UCS4") bacnetCharString("TETS","dbcs")

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetCharString
isfunc
liblib:bacnet
namebacnetCharString

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetCharacter ​

bacnetCharacter(val) ​

The method will convert the input Str to Character Array. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetCharacter
isfunc
liblib:bacnet
namebacnetCharacter

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetClientRestart ​

bacnetClientRestart(restoreOldConfig: false) ​

Restart the stack

Parameters: restoreOldConfig : Send true if you want to restart the stack with old config. By default the value is false Examples: bacnetClientRestart() bacnetClientRestart(true)


meta ​

admin✓
deffunc:bacnetClientRestart
isfunc
liblib:bacnet
namebacnetClientRestart

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetConfirmedTextMessage ​

bacnetConfirmedTextMessage(conn, msgPriority, message, messageClass) ​

The ConfirmedTextMessage service is used by a client BACnet-user to send a text message to another BACnet device. The receiving BACnet device sends an

ack to confirm that message has been received.

Parameters:

  • conn: the BACnet connection used to query the object properties -msgPriority: Depicts the priority of the message. Takes the value between NORMAL and URGENT(0 and 1). -message: The message to be sent using the Confirmed Text Message Service.\ -messageClass: Takes the value in the form of dictionary. Key may be numeric or character. Values of Numeric Class is a Number whereas values in Character Class is in String format. The interpretation of the value is device's local matter.

Examples:

// Create an object
bacnetConfirmedTextMessage(read(bacnetConn), "NORMAL", "Hey There!!", {character:"xyz"})

bacnetConfirmedTextMessage(read(bacnetConn), "NORMAL", "Hey There!!", {numeric:1})

bacnetConfirmedTextMessage(read(bacnetConn), priority, Message, messageClassDict)

meta ​

admin✓
deffunc:bacnetConfirmedTextMessage
isfunc
liblib:bacnet
namebacnetConfirmedTextMessage

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetCreateObject ​

bacnetCreateObject(conn, obj, propValueDict) ​

Create a Bacnet Object

Parameters:

  • conn: the BACnet connection used to query the object properties

  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details

  • propValueDict: Array of Dict where dict is of the form property_identifier: Number, property_array_index?: Number, property_value: Tag, priority?: Number

  • propIndex: The index number for the property value to be written if the prop has dataype of array type. -1 is default which signifies that array index is not used.

    • prop_name: integer or string value representing the object property id
    • propVal: value to be written
    • priority: priority level, defaults to 16

Examples:

// Create an object
 bacnetCreateObject(read(bacnetConn), "AV13", [{property_identifier:85, property_value : 42}, {property_identifier: 351, property_value: "foo", property_array_index: 1}])

meta ​

admin✓
deffunc:bacnetCreateObject
isfunc
liblib:bacnet
namebacnetCreateObject

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDbcsString ​

bacnetDbcsString(val, codePage: Number.<ctor>(0)) ​

The method will convert the input Str to dbcs String. And return it as Unsafe Obj instance. Method is typically used for write purpose. By default value of code page is 0. For other values of code page, pass it as a second argument.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose. Example- bacnetDbcsString("Dbcs Test",1)


meta ​

admin✓
deffunc:bacnetDbcsString
isfunc
liblib:bacnet
namebacnetDbcsString

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDeleteObject ​

bacnetDeleteObject(conn, obj) ​

Delete a Bacnet Object

Parameters:

  • conn: the BACnet connection used to query the object properties
  • obj: Object to be deleted from a connector.Either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details

Examples:

// Create an object
bacnetDeleteObject(@connRef, @pointRef)
bacnetDeleteObject(@connRef, "AV1")
bacnetDeleteObject(@connRef,"2:1")

meta ​

admin✓
deffunc:bacnetDeleteObject
isfunc
liblib:bacnet
namebacnetDeleteObject

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDeviceCommunicationControl ​

bacnetDeviceCommunicationControl(conn, dccValue, timeRem: Number.<ctor>(-1min), password: "") ​

bacnetDeviceCommunicationControl(@connRef, dccValue, timeRem, password)
bacnetDeviceCommunicationControl(read(bacnetConn), 0, 180sec)

bacnetDeviceCommunicationControl(read(bacnetConn),"ENABLE", 2min)


meta ​

admin✓
deffunc:bacnetDeviceCommunicationControl
isfunc
liblib:bacnet
namebacnetDeviceCommunicationControl

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDeviceDiscovery ​

bacnetDeviceDiscovery(broadcastAddress, low, high, networkNumber: Number.<ctor>(65535), discoveryTimeout: Number.<ctor>(8sec), queryDevProps: true) ​

Discover BACnet devices and returns a grid with them.

Parameters:

  • broadcastAddress: IP broadcast address formated as a string ip:port,

    if port is missing then default 47808 is used
  • low: lower limit of the interval of device IDs that should respond

  • high: higher limit of the interval of device IDs that should respond

  • networkNumber: network number of devices that should respond,

    default value is 0xFFFF for broadcast
  • discoveryTimeout: timeout specified in number with time measure unit

    default value is 8sec
  • queryDevProps: if the discovery should read device properties like "deviceName", "modelName", "vendorName"

    default value is true

Example:

bacnetDeviceDiscovery("255.255.255.255", 0, 4194303)
bacnetDeviceDiscovery("255.255.255.255", 0, 4194303, 0xFFFF, 20sec)
bacnetDeviceDiscovery("255.255.255.255:47810", 0, 4194303, 0xFFFF, 10sec)

meta ​

admin✓
deffunc:bacnetDeviceDiscovery
isfunc
liblib:bacnet
namebacnetDeviceDiscovery

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDiscoverObjects ​

bacnetDiscoverObjects(conn, refetch: true) ​

Discover BACnet objects from the BACnet device.

Parameters:

  • conn: the BACnet connection used to query the object properties
  • refetch: Read the properties again from the BACnet device

Examples:

bacnetDiscoverObjects(@connRef) bacnetDiscoverObjects(@connRef, false) bacnetDiscoverObjects(@connRef, true)


meta ​

admin✓
deffunc:bacnetDiscoverObjects
isfunc
liblib:bacnet
namebacnetDiscoverObjects

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetDouble ​

bacnetDouble(val) ​

The method will convert the input Number to Double. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetDouble
isfunc
liblib:bacnet
namebacnetDouble

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetEmptyList ​

bacnetEmptyList() ​

The method indicates to write an empty list. It returns it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries.


meta ​

admin✓
deffunc:bacnetEmptyList
isfunc
liblib:bacnet
namebacnetEmptyList

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetEnrollmentSummary ​

bacnetEnrollmentSummary(conn, acknowledgementFilter, enrollment: null, eventState: null, eventType: null, minPriority: null, maxPriority: null, notificationClass: null) ​

The GetEnrollmentSummary service is used to obtain a summary of event-initiating objects

Parameters:

  • conn: the BACnet connection used to query the object properties

  • acknowledgementFilter: It can take values from ALL/ACKED/NOT-ACKED or 0/1/2 respectively.It indicates the content of summary shall have all event-initiating objects/only those objects for which the Acked_Transitions property has a value of one in every bit position.

  • enrollment: Optional parameter.Only those objects for which the specified BACnetRecipient and Process Identifier are enrolled to receive

    notifications, either confirmed or unconfirmed, shall be summarized
  • eventState: Optional parameter. It can take values from OFFNORMAL/ FAULT/ NORMAL/ ALL/ ACTIVE or 0/1/2/3/4 respectively, which

    specifies that Only those event-initiating objects whose Event_State property matches the value specified in this parameter shall be
     included.

    -eventType: Optional Parameter.This parameter is provided as a means of restricting the summary to only those event-initiating objects that can generate

    event notifications with an Event_Type equal to the value of this parameter

    -Priority Filter(minPriority,maxPriority): Optional parameter.It provides a means of restricting the summary to only those event-initiating objects

    that can generate event notifications with a Priority as specified by this parameter.

  • notificationClass: Optional parameter.It provides a mean of restricting the summary to only those event-initiating objects that can

    generate event notifications with a Notification Class equal to the value of this parameter.

Examples:

bacnetEnrollmentSummary(read(bacnetConn),0,{"device":"EE1","process_id":1},2,5,30,50,1)
bacnetEnrollmentSummary(read(bacnetConn),0, null ,null, null, null, null, null)
bacnetEnrollmentSummary(read(bacnetConn),"all",{"device":"EE1","process_id":0},"normal","out_of_range",30,50,1)

meta ​

admin✓
deffunc:bacnetEnrollmentSummary
isfunc
liblib:bacnet
namebacnetEnrollmentSummary

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetEnum ​

bacnetEnum(val) ​

The method will convert the input Number to Enumeration. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetEnum
isfunc
liblib:bacnet
namebacnetEnum

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetAlarmSummary ​

bacnetGetAlarmSummary(conn) ​

Retrieves the Alarm Summary from the device and adds them in the Alarm Extension.

Parameter:

  • conn: Ref to or a record with a bacnetConn tag

Returns:

Grid with the alarms retrieved from the device.

meta ​

admin✓
deffunc:bacnetGetAlarmSummary
isfunc
liblib:bacnet
namebacnetGetAlarmSummary

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetBackupStatus ​

bacnetGetBackupStatus(filter: null) ​

Gets the device backup information. If filter is absent, give the data of every device. Else gives the data for that respective device.

Example-

bacnetGetBackupStatus() bacnetGetBackupStatus("DEV1")


meta ​

admin✓
deffunc:bacnetGetBackupStatus
isfunc
liblib:bacnet
namebacnetGetBackupStatus

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetDeviceInstanceNumber ​

bacnetGetDeviceInstanceNumber() ​

The method will return the bacnet device instance number.


meta ​

admin✓
deffunc:bacnetGetDeviceInstanceNumber
isfunc
liblib:bacnet
namebacnetGetDeviceInstanceNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetDeviceObjectName ​

bacnetGetDeviceObjectName() ​

The method will return the bacnet device object name.


meta ​

admin✓
deffunc:bacnetGetDeviceObjectName
isfunc
liblib:bacnet
namebacnetGetDeviceObjectName

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetEventInformation ​

bacnetGetEventInformation(conn, isFetchMoreEvents: false, obj: null) ​

"active event states" refers to all event-initiating objects that (a) have an Event_State property whose value is not equal to NORMAL, or (b) have an Acked_Transitions property, which has at least one of the bits (TO_OFFNORMAL, TO_FAULT, TO_NORMAL) set to FALSE. This service is intended to be implemented in all devices that generate event notifications.

Parameters:

  • conn: the BACnet connection used to query the object properties
  • isFetchMoreEvents: the variable to indicate weather we need to retrieve following events or not. Default value is false
  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details

Returns:

A grid with all event information

Examples:

bacnetGetEventInformation(read(bacnetConn), true)
bacnetGetEventInformation(read(bacnetConn), true, "AV1")
bacnetGetEventInformation(read(bacnetConn), false, "AV1")

meta ​

admin✓
deffunc:bacnetGetEventInformation
isfunc
liblib:bacnet
namebacnetGetEventInformation

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetHandledAlarms ​

bacnetGetHandledAlarms(conn) ​

Returns the handled alarms from this Bacnet connector. This is more for testing purposes, to see we are receiving alarms. These alarms should also be visible in the Alarm Extension.

Parameters:

  • conn: the BACnet connector used to communicate to the device

Examples:

bacnetGetHandledAlarms(@connRef)

meta ​

admin✓
deffunc:bacnetGetHandledAlarms
isfunc
liblib:bacnet
namebacnetGetHandledAlarms

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetHandledEvents ​

bacnetGetHandledEvents(conn) ​


meta ​

admin✓
deffunc:bacnetGetHandledEvents
isfunc
liblib:bacnet
namebacnetGetHandledEvents

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetLocalBindAddress ​

bacnetGetLocalBindAddress() ​

The method will get localBindAddress.

Example:

bacnetGetLocalBindAddress()


meta ​

admin✓
deffunc:bacnetGetLocalBindAddress
isfunc
liblib:bacnet
namebacnetGetLocalBindAddress

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetLocalDnetNumber ​

bacnetGetLocalDnetNumber() ​

The method will return the local dnet number.


meta ​

admin✓
deffunc:bacnetGetLocalDnetNumber
isfunc
liblib:bacnet
namebacnetGetLocalDnetNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetMaxDeviceInstance ​

bacnetGetMaxDeviceInstance() ​


meta ​

deffunc:bacnetGetMaxDeviceInstance
isfunc
liblib:bacnet
namebacnetGetMaxDeviceInstance

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetMaxMacAddress ​

bacnetGetMaxMacAddress() ​


meta ​

deffunc:bacnetGetMaxMacAddress
isfunc
liblib:bacnet
namebacnetGetMaxMacAddress

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetMaxNetworkNumber ​

bacnetGetMaxNetworkNumber() ​


meta ​

deffunc:bacnetGetMaxNetworkNumber
isfunc
liblib:bacnet
namebacnetGetMaxNetworkNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetNotificationSubscriptions ​

bacnetGetNotificationSubscriptions(conn) ​

Returns all the Notification Classes this current connector receives notifications from.

Paramaters:

  • conn: the BACnet connector used to communicate to the device

Returns:

Grid with the locadDeviceId registered, the notification class to which it is registered,
and the Finstack point for whicj it is registered to receive alarms.

meta ​

admin✓
deffunc:bacnetGetNotificationSubscriptions
isfunc
liblib:bacnet
namebacnetGetNotificationSubscriptions

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetPhysicalPortDnetNumber ​

bacnetGetPhysicalPortDnetNumber() ​

The method will get physical port dnet Number.

Example:

bacnetGetPhysicalPortDnetNumber()


meta ​

admin✓
deffunc:bacnetGetPhysicalPortDnetNumber
isfunc
liblib:bacnet
namebacnetGetPhysicalPortDnetNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetStackConfigKeys ​

bacnetGetStackConfigKeys() ​

Method will return all the config keys defined by the system. Values corresponding to few keys are optional. It will not return custom keys defined by user. To get defined key-value pairs use bacnetReadStackConfig() bacnetGetStackConfigKeys()


meta ​

admin✓
deffunc:bacnetGetStackConfigKeys
isfunc
liblib:bacnet
namebacnetGetStackConfigKeys

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetStringTypeSupported ​

bacnetGetStringTypeSupported(conn) ​

Retrieves the String type supported for the connector. Accepts as parameters:

  • conn: the BACnet connection used to query the object properties Examples: bacnetGetStringTypeSupported(read(bacnetConn))

meta ​

admin✓
deffunc:bacnetGetStringTypeSupported
isfunc
liblib:bacnet
namebacnetGetStringTypeSupported

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetUnhandledAlarms ​

bacnetGetUnhandledAlarms(conn) ​

Returns the unhandled alarms from this Bacnet connector This is more for testing purposes, to see we are receiving alarms.

Parameters:

  • conn: the BACnet connector used to communicate to the device

Examples:

bacnetGetUnhandledAlarms(@connRef)

meta ​

admin✓
deffunc:bacnetGetUnhandledAlarms
isfunc
liblib:bacnet
namebacnetGetUnhandledAlarms

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetGetUnhandledEvents ​

bacnetGetUnhandledEvents(conn) ​

Returns the unhandled alarm events (type=event) of Bacnet connector This is more for testing purposes, to see we are receiving alarms.

Parameters:

  • conn: the BACnet connector used to communicate to the device

Examples:

bacnetGetUnhandledEvents(@connRef)

meta ​

admin✓
deffunc:bacnetGetUnhandledEvents
isfunc
liblib:bacnet
namebacnetGetUnhandledEvents

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetIsoString ​

bacnetIsoString(val) ​

The method will convert the input Str to Iso8859 String. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetIsoString
isfunc
liblib:bacnet
namebacnetIsoString

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetJisString ​

bacnetJisString(val) ​

The method will convert the input Str to Jisc6226 String. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetJisString
isfunc
liblib:bacnet
namebacnetJisString

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetLearn ​

bacnetLearn(conn, uri: null) ​

Returns a grid with the BACnet objects residing on the device the connector points to. The way this works is that a call with only the connector record will return a grid of folders for each object type that connector supports.

Example:

bacnetLearn(@some-bacnet-conn-ref)

The above will return a grid containing a dis and learn column, like:

dis,learn
"ANALOG VALUE",`ANALOG_VALUE`

Calling the function with a learn parameter will return a grid containing all objects of the learn parameter type, like:

bacnetLearn(@some-bacnet-conn-ref, `ANALOG_VALUE`)

This returns a grid like:

bacnetCur,bacnetWrite,bacnetWriteLevel,dis,is,kind,point,unit,writable
"AV10001","AV10001",8,"ALMCNT","ANALOG_VALUE","Number",M,"",M

meta ​

admin✓
deffunc:bacnetLearn
isfunc
liblib:bacnet
namebacnetLearn

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetLifeSafetyOperation ​

bacnetLifeSafetyOperation(conn, operation, requestingSource: null, obj: null) ​

  • conn : The BACnet connector used to communicate to the device

  • operation : The Life Safety Operation type (e.g., "SILENCE", "RESET")

  • requestingSource : It is a CharacterString specifying the platform or origin from which the LifeSafetyOperation service request is

    triggered, example:"FIN"
  • obj : Either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance.

    See 'bacnetCur' for more details. You can pass a '@connRef' also, this is short-hand for passing the conn device address.

Supported operation values depend on the device and object state. Valid values include:

NONE , SILENCE , SILENCE_AUDIBLE , SILENCE_VISUAL , RESET , RESET_ALARM , RESET_FAULT
UNSILENCE , UNSILENCE_AUDIBLE  , UNSILENCE_VISUAL

Example usages:

bacnetLifeSafetyOperation(read(bacnetConn), "RESET")
bacnetLifeSafetyOperation(read(bacnetConn), "SILENCE","FIN", "LSP1")
bacnetLifeSafetyOperation(read(bacnetConn), "UNSILENCE","FIN")

meta ​

admin✓
deffunc:bacnetLifeSafetyOperation
isfunc
liblib:bacnet
namebacnetLifeSafetyOperation

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetListBroadcastIps ​

bacnetListBroadcastIps() ​

List all the available IPv4 broadcast addresses


meta ​

deffunc:bacnetListBroadcastIps
isfunc
liblib:bacnet
namebacnetListBroadcastIps

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetListLocalIps ​

bacnetListLocalIps() ​

List all the available IPv4 local addresses, excluding the loopback


meta ​

deffunc:bacnetListLocalIps
isfunc
liblib:bacnet
namebacnetListLocalIps

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetLocalBindAddress ​

bacnetLocalBindAddress() ​

Returns the local address to which the BACnet stack is bind.


meta ​

admin✓
deffunc:bacnetLocalBindAddress
isfunc
liblib:bacnet
namebacnetLocalBindAddress

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetMigratePoints ​

bacnetMigratePoints() ​

This method will migrate point data from FIN 5.1.X release to FIN 5.1.7 release Accumulator and Schedule point will be migrated. This function should be run once, after FIN update

Example: bacnetMigratePoints()


meta ​

admin✓
deffunc:bacnetMigratePoints
isfunc
liblib:bacnet
namebacnetMigratePoints

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetMigration ​

bacnetMigration(ops: Etc.makeDict(["point":Marker.val])) ​

Manually call the migration functions for the current project. The migration process adjusts the connector related records to conform to the requirements of the latest FIN versions. The migration function is designed to be run only once, except if the force option is provided.

Parameters:

  • ops The options to use for migration, default is point, valid options are:

    'conn', 'point', 'alarm'
    'force' Will force the migration run regardless if it was already done.

Example:

// Migrate point records, forced - as it is not done as part of the automatic migration
bacnetMigration({point, force})
// Migrate conn and points
bacnetMigration({conn, point})

meta ​

admin✓
deffunc:bacnetMigration
isfunc
liblib:bacnet
namebacnetMigration

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetNotificationsSubscribeConn ​

bacnetNotificationsSubscribeConn(conn) ​

Subscribe to connector, to receive notifications for all the points from it that are bound in DB builder.

Parameters:

  • conn: the BACnet connector used to communicate to the device

Return:

Grid with the localDeviceId that was subscribed, each point to receive alarms for, and
each Notification Class in which it was registered.

meta ​

admin✓
deffunc:bacnetNotificationsSubscribeConn
isfunc
liblib:bacnet
namebacnetNotificationsSubscribeConn

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetNotificationsSubscribePoint ​

bacnetNotificationsSubscribePoint(conn, point) ​

Subscribe to connector, to receive notifications only for the provided point.

Parameters:

  • conn: the BACnet connector used to communicate to the device
  • point: point from Connector bound in DB

Return:

Grid with the localDeviceId that was subscribed, the point to receive alarms for, and
each Notification Class in which it was registered.

meta ​

admin✓
deffunc:bacnetNotificationsSubscribePoint
isfunc
liblib:bacnet
namebacnetNotificationsSubscribePoint

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetNotificationsUnsubscribeConn ​

bacnetNotificationsUnsubscribeConn(conn) ​

Unsubscribe from connector, from receiving notifications for all the points that are bound in DB builder.

Parameters:

  • conn: the BACnet connector used to communicate to the device

Returns:

Grid with the localDeviceId that was unsubscribed, each point and it's Notification Classes
from which it was unregistered.

meta ​

admin✓
deffunc:bacnetNotificationsUnsubscribeConn
isfunc
liblib:bacnet
namebacnetNotificationsUnsubscribeConn

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetNotificationsUnsubscribePoint ​

bacnetNotificationsUnsubscribePoint(conn, point) ​

Unsubscribe from connector, from receiving notifications only for the provided point.

Parameters:

  • conn: the BACnet connector used to communicate to the device
  • point: point from Connector bound in DB

Returns:

Grid with the localDeviceId that was unsubscribed, the point and it's Notification Classes
from which it was unregistered.

meta ​

admin✓
deffunc:bacnetNotificationsUnsubscribePoint
isfunc
liblib:bacnet
namebacnetNotificationsUnsubscribePoint

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetObjectTypeList ​

bacnetObjectTypeList() ​

List all standard BACnet object types


meta ​

admin✓
deffunc:bacnetObjectTypeList
isfunc
liblib:bacnet
namebacnetObjectTypeList

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetPing ​

bacnetPing(conn) ​

Asynchronously ping an bacnet connector Examples:

read(bacnetConn).bacnetPing
bacnetPing(bacnetConnId)

Side effects:

  • performs async network IO on background thread
  • bacnetDevice: updated if ping successful
  • bacnetVersion: updated if ping successful

meta ​

admin✓
deffunc:bacnetPing
isfunc
liblib:bacnet
namebacnetPing

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetPropertyIdentifierList ​

bacnetPropertyIdentifierList() ​

List all standard properties that a BACnet object can support


meta ​

admin✓
deffunc:bacnetPropertyIdentifierList
isfunc
liblib:bacnet
namebacnetPropertyIdentifierList

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadEnumPropValMapping ​

bacnetReadEnumPropValMapping() ​

The method will fetch all Enum and property value conversion mapping for schedule object

Examples:

bacnetReadEnumPropValMapping()


meta ​

admin✓
deffunc:bacnetReadEnumPropValMapping
isfunc
liblib:bacnet
namebacnetReadEnumPropValMapping

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadHis ​

bacnetReadHis(conn, obj, range, removeNull: false) ​

Read history log from a BACnet Trend Log object

Parameters:

  • conn: the BACnet connection used to query the object properties
  • obj: either a BACnet Trend Log point record or a point Ref, or a string formatted as bacnetHis, i.e. objectType:objectInstance. See bacnetHis for more details
  • dateTimeRange: a date time range
  • removeNull: option to remove log entries that have a Null recorded value. Defualt is false

Returns:

  • A grid with ts, val columns

Examples:

bacnetReadHis(@connRef, @pointRef, now() -7day .. now())
bacnetReadHis(@connRef, "20:1", now() -7day .. now(), true)

meta ​

admin✓
deffunc:bacnetReadHis
isfunc
liblib:bacnet
namebacnetReadHis

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadObject ​

bacnetReadObject(conn, obj) ​

Read all know properties for this BACnet object

Parameters:

  • conn: the BACnet connection used to query the object properties
  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details

Returns:

A grid with all known object properties.

meta ​

admin✓
deffunc:bacnetReadObject
isfunc
liblib:bacnet
namebacnetReadObject

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadObjectProperty ​

bacnetReadObjectProperty(conn, obj, prop, index: null) ​

Read a BACnet property from a BACnet object

Parameters:

  • conn: the BACnet connection used to query the object properties

  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details. You can pass a @connRef also, this is short-hand for passing the conn device address.

  • prop: integer or string value representing the object's property id

  • index: the integer index of the property to read, if the value of that property is an array.

    Remember: that arrays are indexed starting with 1 in Bacnet: and that index 0 returns the length of the index.

Examples:

// Read present value
bacnetReadObjectProperty(@connRef, @pointRef, 85)
bacnetReadObjectProperty(@connRef, "AV1", "present_value")
bacnetReadObjectProperty(@connRef,"2:1", 85)
// Read the 'object_name' property on the device object that '@connRef' points to.
bacnetReadObjectProperty(@connRef, @connRef, "object_name")
// Read the 'object_list' size property on the device object that '@connRef' points to.
bacnetReadObjectProperty(@connRef, @connRef, "object_list", 0)

meta ​

admin✓
deffunc:bacnetReadObjectProperty
isfunc
liblib:bacnet
namebacnetReadObjectProperty

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadPoolSizeFromBbsConfig ​

bacnetReadPoolSizeFromBbsConfig() ​

Reads the Client_pool_size, Server_pool_size & Pdu_pool_size from the BBS config.


meta ​

admin✓
deffunc:bacnetReadPoolSizeFromBbsConfig
isfunc
liblib:bacnet
namebacnetReadPoolSizeFromBbsConfig

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadPropertyFromDB ​

bacnetReadPropertyFromDB(obj, prop, index: null) ​

Reads property value from our own Stack data-base, like properties from Device or Network-port Object

Parameters:

  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance.

  • prop: integer or string value representing the object's property id

    • index: the integer index of the property to read, if the value of that property is an array.

Examples:

bacnetReadPropertyFromDB("NP1", 75) bacnetReadPropertyFromDB(8:1, "object_list") bacnetReadPropertyFromDB("DEV1", "object_list", 0)


meta ​

admin✓
deffunc:bacnetReadPropertyFromDB
isfunc
liblib:bacnet
namebacnetReadPropertyFromDB

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadPropertyMultiple ​

bacnetReadPropertyMultiple(conn, objectPropDict) ​

Reads multiple object properties using the BACnet ReadPropertyMultiple service if the remote device supports it. Parameters:

  • conn: the BACnet connection used to query the object properties
  • objectPropDict: a Dict with BACnet object Ids as keys and Dict of BACnet object properties as values The dict format is: {objectId1:{prop_name1,prop_name2},objectId2:{prop_name1,prop_name2}}

Examples:

// Read present value and object name from 2 objects
bacnetReadPropertyMultiple(@connRef, {av1:{present_value, object_name}, av2:{present_value, object_name}})

meta ​

admin✓
deffunc:bacnetReadPropertyMultiple
isfunc
liblib:bacnet
namebacnetReadPropertyMultiple

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadStackConfig ​

bacnetReadStackConfig(configKeys: null) ​

The method will return the Config value for inquired Config keys from /etc/bacnetExt/config.props file
configKey : Config key value in string or array of string. And empty param to read all values.

Examples:

bacnetReadStackConfig()
bacnetReadStackConfig("bacnetRetryCount")
bacnetReadStackConfig("actorTimeout")
bacnetReadStackConfig("bacnetInstance")
bacnetReadStackConfig("dnetNumber")
bacnetReadStackConfig(["dnetNumber", "bacnetInstance"])

meta ​

admin✓
deffunc:bacnetReadStackConfig
isfunc
liblib:bacnet
namebacnetReadStackConfig

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReadStructuredView ​

bacnetReadStructuredView(conn, refetch: true) ​

Reads the properties of BACnet Structured View objects for a given connector.

Parameters:

  • conn: the BACnet connection used to query the object properties
  • refetch: Read the properties again from the BACnet device

Examples:

bacnetReadStructuredView(@connRef) bacnetReadStructuredView(@connRef, false) bacnetReadStructuredView(@connRef, true)


meta ​

admin✓
deffunc:bacnetReadStructuredView
isfunc
liblib:bacnet
namebacnetReadStructuredView

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetReal ​

bacnetReal(val) ​

The method will convert the input Number to Real. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetReal
isfunc
liblib:bacnet
namebacnetReal

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetRegisterBBMDwithNetworkPort ​

bacnetRegisterBBMDwithNetworkPort(bbmdEnteries: null, acceptFdRegistration: true, maxFdtEntries: Number.<ctor>(16), twoHops: true) ​

Registers the device as BBMD  using network-port object and puts the entry provided in the BBMD-BROADCAST-DISTRIBUTION-TABLE property.
Also self entry is automatically made if no parameters is passed in the BDT table.

Parameters:
   -bbmdEntries: The BDT table entries in the BBMD.
	-acceptFdRegistration: If BBMD supports Foreign-device registration with BBMD or not. Sets BBMD-ACCEPT-FD-REGISTRATIONS property.
   -maxFdtEntries: Maximal number of entries in FDT. Default value is 16. Range (1-65535)
	-twoHops:  false- means direct broadcast, and true- denotes unicast method using another BBMD

Examples:
	bacnetRegisterBBMDwithNetworkPort()
	bacnetRegisterBBMDwithNetworkPort([["192.168.253.1",47808,"255.255.255.0"]])
	bacnetRegisterBBMDwithNetworkPort([["192.168.253.1",47808,"255.255.255.0"],["192.168.253.111",47808,"255.255.255.0"]])
	bacnetRegisterBBMDwithNetworkPort([["192.168.253.1",47808,"255.255.255.0"],["192.168.253.111",47808,"255.255.255.0"]], true, 25, false)

meta ​

admin✓
deffunc:bacnetRegisterBBMDwithNetworkPort
isfunc
liblib:bacnet
namebacnetRegisterBBMDwithNetworkPort

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetRegisterForeignDeviceWithNetworkPort ​

bacnetRegisterForeignDeviceWithNetworkPort(ipUdp, timeToLive, fdRegTimeout, fdRegRetries: Number.<ctor>(3)) ​

Registers the device as foreign device by requesting the BBMD of the other subnet it wants to register itself. This query internally uses Network-port object properties.

Parameters:

  • ipUdp: The ip address and port number separated by :.It is the ip and port number of BBMD which accepts the request of the device and make its entry in the FDT(Foreign Device Table) and register the connector as a Foreign device.

  • timeToLive(in seconds)- The time for which the device is registered as Foreign device in the subnet. Note that the time provided is then added with 30 seconds(grace time). After this time, the BBMD flushes the entry of Foreign device from the FDT.

  • fdRegTimeout: Timeout for foreign Device Registration(seconds)

    • fdRegRetries- Foreign device registration retry count

Examples:

// Create an object
bacnetRegisterForeignDeviceWithNetworkPort("192.168.253.136:47808",1800, 1200 )
bacnetRegisterForeignDeviceWithNetworkPort("192.168.253.136:47810",1800, 180, 5)

meta ​

admin✓
deffunc:bacnetRegisterForeignDeviceWithNetworkPort
isfunc
liblib:bacnet
namebacnetRegisterForeignDeviceWithNetworkPort

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetRemoveFromNotificationClass ​

bacnetRemoveFromNotificationClass(conn, point) ​

Removes the local device corresponding to the connector from the provided
notification class, to disable receiving alarm/event notifications.
Low level function for debugging mostly.

Parameters:
   - conn: the BACnet connector used to communicate to the device
   - point: a point bound to a Notification Class Object or a dict ["bacnetRef":"NC1"]

meta ​

admin✓
deffunc:bacnetRemoveFromNotificationClass
isfunc
liblib:bacnet
namebacnetRemoveFromNotificationClass

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetRemoveStackConfig ​

bacnetRemoveStackConfig(configKey) ​

The method will return delete the provided config entry.

NOTE : Use this method very carefully, removing some system config key may lead to system instability.

Examples:

bacnetRemoveStackConfig("test")


meta ​

admin✓
deffunc:bacnetRemoveStackConfig
isfunc
liblib:bacnet
namebacnetRemoveStackConfig

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetRestoreDevice ​

bacnetRestoreDevice(conn, restoreVersion: null, password: null) ​

Restores the device from the already backed up data.

Parameters:

  • conn: the BACnet connection used to query the object properties

  • restoreVersion: The backup folder to which device has to be restored. If backup data has to be used of the same device as represented by bacnetConn, directly give the name of the backupVersion (Example - Dev3_20200714_193450). If backup data has to be used of the different device as represented by bacnetConn, give device name followed by a / and then the name of the backupVersion (Example - Dev3/Dev3_20200714_193450). By default (if nothing is passed) it takes the latest backed up data.(Only if the name of the folder is not changed manually.) If the name of the folder is changed manually and has to be restored, specify the version explicitly.

Note: The restoreVersion parameter is case sensitive and will accept only exact names.

  • password: Device password.

Examples:

bacnetRestoreDevice(read(bacnetConn),"Dev3_20200714_193450","example_password") for restoring backup data contained in
folder io/BacnetBackupData/Dev3/Dev3_20200714_193450 (if bacnetConn represents device with instance number 3).

bacnetRestoreDevice(read(bacnetConn),"Dev3/Dev3_20200714_193450","example_password") for restoring backup data contained in

folder io/BacnetBackupData/Dev3/Dev3_20200714_193450 (if bacnetConn represents device with instance number other than 3 and backup data has to be used of Device 3).

bacnetRestoreDevice(read(bacnetConn),"latestBackup","example_password")

(latestBackup will be searched in the folder representing with the instance number represented by device of bacnetConn)

bacnetRestoreDevice(read(bacnetConn))

Takes the latest backup data to restore.(Searches the data on the basis of folder name.
 Hence if folder name is changed manually, it won't take into account the respective folder)

meta ​

admin✓
deffunc:bacnetRestoreDevice
isfunc
liblib:bacnet
namebacnetRestoreDevice

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetScheduleEffectivePeriod ​

bacnetScheduleEffectivePeriod(conn, point) ​

Reads the effective period for a bacnet schedule point

Paramaters:

  • conn: Ref to or a record with a bacnetConn tag
  • point: Ref to or a point record that has a bacnetCur pointing to a bacnet schedule, or a string with a valid bancet schedule object address

Returns:

a grid with start and end dates Examples:

read(bacnetConn).bacnetScheduleEffectivePeriod(@pointRef)
read(bacnetConn).bacnetScheduleEffectivePeriod("17:2")

meta ​

admin✓
deffunc:bacnetScheduleEffectivePeriod
isfunc
liblib:bacnet
namebacnetScheduleEffectivePeriod

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetScheduleRead ​

bacnetScheduleRead(conn, point) ​

Reads the weekly schedule from a bacnet schedule point

Paramaters:

  • conn: Ref to or a record with a bacnetConn tag
  • point: Ref to or a point record that has a bacnetCur pointing to a bacnet schedule, or a string with a valid bancet schedule object address

Returns:

a grid with entries for the week, the first day is Monday,
each day has a midnight entry

Examples:

read(bacnetConn).bacnetScheduleRead(@pointRef)
read(bacnetConn).bacnetScheduleRead("SCH2")

meta ​

admin✓
deffunc:bacnetScheduleRead
isfunc
liblib:bacnet
namebacnetScheduleRead

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetScheduleWrite ​

bacnetScheduleWrite(conn, point, schedule, writeLevel: Number.<ctor>(8)) ​

Writes a weekly schedule to a bacnet schedule point

Paramaters:

  • conn: Ref to or a record with a bacnetConn tag

  • point: Ref to or a point record that has a bacnetCur pointing to a bacnet schedule, or a string with a valid bancet schedule object address

  • grid: A grid containing events as ts:val pair.

    Each day needs to have a midnight entry with a null value.
    The grid values are always written Monday to Sunday, no matter the order they are in the grid.
  • writeLevel: optional parameter specifying the bacnet priority level to write to, default is 8

Returns:

Grid with true for successful write, false otherwise

Examples:

read(bacnetConn).bacnetScheduleWrite(@pointRef, scheduleHis(@19e846bf-9baaa022,thisWeek() +1day , {timeline}))
read(bacnetConn).bacnetScheduleWrite("SCH2", scheduleHis(@19e846bf-9baaa022,thisWeek() +1day , {timeline}))

meta ​

admin✓
deffunc:bacnetScheduleWrite
isfunc
liblib:bacnet
namebacnetScheduleWrite

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSetDeviceInstanceNumber ​

bacnetSetDeviceInstanceNumber(devInstance, reinitStack: true) ​

Set instance number of our device. Stack gets reinitialize as server using that instance number

Parameters:

  • devInstance: Instance of our device object

  • reinitStack: If true stack will be reinitialized with this new devInstance number.

    Else till the time stack in not reinitialized old devInstance number will be used

Returns:

A grid with status of device instance.

meta ​

admin✓
deffunc:bacnetSetDeviceInstanceNumber
isfunc
liblib:bacnet
namebacnetSetDeviceInstanceNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSetDeviceObjectName ​

bacnetSetDeviceObjectName(objectName, reinitStack: true) ​

The method will set object name of default server device. Parameters:

  • objectName: object name of device object

  • reinitStack: If true stack will be reinitialized with this new device object name.

    Else till the time stack in not reinitialized old device object name will be used

Example:

bacnetSetDeviceObjectName("FIN Connector")


meta ​

admin✓
deffunc:bacnetSetDeviceObjectName
isfunc
liblib:bacnet
namebacnetSetDeviceObjectName

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSetLocalBindAddress ​

bacnetSetLocalBindAddress(localBindAddress, reinitStack: true) ​

The method will set localBindAddress

  • localBindAddress: bind address for stack

  • reinitStack: If true stack will be reinitialized with this new devInstance number.

    Else till the time stack in not reinitialized old devInstance number will be used

Example:

bacnetSetLocalBindAddress("192.168.116.2:47808") bacnetSetLocalBindAddress("0.0.0.0:47808")


meta ​

admin✓
deffunc:bacnetSetLocalBindAddress
isfunc
liblib:bacnet
namebacnetSetLocalBindAddress

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSetLocalDnetNumber ​

bacnetSetLocalDnetNumber(dnetInstance, reinitStack: true, checkDuplicateServerNetwork: true) ​

The method will set the local dnet number. After calling this method, the stack will re-init and if any BBMD or FD is registered, the entries will get deleted due to re-initialization of stack.

Examples

  • bacnetSetLocalDnetNumber(1)

meta ​

admin✓
deffunc:bacnetSetLocalDnetNumber
isfunc
liblib:bacnet
namebacnetSetLocalDnetNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSetPhysicalPortDnetNumber ​

bacnetSetPhysicalPortDnetNumber(physicaldnetNumber, reinitStack: true, checkDuplicateLocalNetwork: true) ​

The method will set physical port dnet Number.

Example:

bacnetSetPhysicalPortDnetNumber(5)


meta ​

admin✓
deffunc:bacnetSetPhysicalPortDnetNumber
isfunc
liblib:bacnet
namebacnetSetPhysicalPortDnetNumber

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSigned ​

bacnetSigned(val) ​

The method will convert the input Number to Signed. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetSigned
isfunc
liblib:bacnet
namebacnetSigned

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSyncCur ​

bacnetSyncCur(points) ​

Asynchronously synchronize current values for given list of proxy points. The point list may be any value supported by toRecList(). The points must have the following tags configured:

  • bacnetConnRef
  • bacnetCur

This call updates the following point tags:

  • curVal: current value of the point
  • curStatus: status of the point (down/fault on failure)
  • curErr: error message on failure

meta ​

admin✓
deffunc:bacnetSyncCur
isfunc
liblib:bacnet
namebacnetSyncCur

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSyncHis ​

bacnetSyncHis(points, range: null) ​

Import the lastest data from an BACnet Trend Log object to the local history database, for each point provided.

The points are a list of points (folio records)

Each point record must contain these tags:

  • bacnetConnRef: references the BACnet connector
  • bacnetHis: reference to the Trend Log object
  • his: all the standard historized point tags

If the range is unspecified, then an attempt is made to synchronize any data after hisEnd (last timestamp read).

Side effects:

  • performs blocking network IO
  • performs bacnetPing() if first comms with bacnet conn
  • updates bacnetHis record with history data
  • updates hisStatus tag transiently
  • updates hisErr tag transiently

Examples:

bacnetSyncHis(readAll(point and <filter>))
readAll(point and <filter>).bacnetSyncHis()
readAll(point and <filter>).bacnetSyncHis(now()-1year..now())

meta ​

admin✓
deffunc:bacnetSyncHis
isfunc
liblib:bacnet
namebacnetSyncHis

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetSyncObjectProperty ​

bacnetSyncObjectProperty(conn, obj, prop, index: null) ​

Function to sync BACnet object property of BACnet device point to the FIN Note:- Support is currently limited to the units property only.

Parameters:

  • conn: the BACnet connection used to query the object properties
  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details. You can pass a @connRef also, this is short-hand for passing the conn device address.
  • prop: integer or string value representing the object's property id
  • index: the integer index of the property to read, if the value of that property is an array.

Examples:

bacnetSyncObjectProperty(@connRef, @pointRef, "units")
bacnetSyncObjectProperty(@connRef, "AV1", "units")
bacnetSyncObjectProperty(@connRef, "2:1", 117)

meta ​

admin✓
deffunc:bacnetSyncObjectProperty
isfunc
liblib:bacnet
namebacnetSyncObjectProperty

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetTimeSynchronization ​

bacnetTimeSynchronization(conn, date, time) ​

Synchronizes the time of the Device

Parameters:

  • conn: the BACnet connection used to query the object properties

  • date: Date of the device to be synchronized.

  • time: Time of the device to be synchronized.

Examples:

bacnetTimeSynchronization(read(bacnetConn),2020-12-13,04:06:23)

bacnetTimeSynchronization(read(bacnetConn),now().date,now().time)


meta ​

admin✓
deffunc:bacnetTimeSynchronization
isfunc
liblib:bacnet
namebacnetTimeSynchronization

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUcs2String ​

bacnetUcs2String(val) ​

The method will convert the input Str to UCS 2 String. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetUcs2String
isfunc
liblib:bacnet
namebacnetUcs2String

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUcs4String ​

bacnetUcs4String(val) ​

The method will convert the input Str to UCS 4 String. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetUcs4String
isfunc
liblib:bacnet
namebacnetUcs4String

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnconfirmedTextMessage ​

bacnetUnconfirmedTextMessage(conn, msgPriority, message, messageClass) ​

Parameters:

  • conn: the BACnet connection used to query the object properties -msgPriority: Depicts the priority of the message. Takes the value between NORMAL and URGENT(0 and 1). -message: The message to be sent using the Confirmed Text Message Service.\ -messageClass: Takes the value in the form of dictionary. Key may be umeric or character. Values of Numeric Class is a Number whereas values in Character Class is in String format.The interpretation of the value is device's local matter.

Examples:

// Create an object
bacnetUnconfirmedTextMessage(read(bacnetConn), "NORMAL","Hey There!!", {character:"xyz"})

bacnetUnconfirmedTextMessage(read(bacnetConn), "NORMAL","Hey There!!", {numeric:1})

bacnetUnconfirmedTextMessage(read(bacnetConn), priority, Message, messageClassDict)

meta ​

admin✓
deffunc:bacnetUnconfirmedTextMessage
isfunc
liblib:bacnet
namebacnetUnconfirmedTextMessage

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnregisterBBMDwithNetworkPort ​

bacnetUnregisterBBMDwithNetworkPort(reinitStack: true) ​

bacnetUnregisterBBMDwithNetworkPort()

This query will Unregister BBMD from network-port object


meta ​

admin✓
deffunc:bacnetUnregisterBBMDwithNetworkPort
isfunc
liblib:bacnet
namebacnetUnregisterBBMDwithNetworkPort

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnregisterForeignDeviceWithNetworkPort ​

bacnetUnregisterForeignDeviceWithNetworkPort(reinitStack: true) ​

bacnetUnregisterForeignDeviceWithNetworkPort()

This query will delete Foreign device details from stack database.


meta ​

admin✓
deffunc:bacnetUnregisterForeignDeviceWithNetworkPort
isfunc
liblib:bacnet
namebacnetUnregisterForeignDeviceWithNetworkPort

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnsigned ​

bacnetUnsigned(val) ​

The method will convert the input Number to Unsigned. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetUnsigned
isfunc
liblib:bacnet
namebacnetUnsigned

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnsigned16 ​

bacnetUnsigned16(val) ​

The method will convert the input Number to Unsigned16. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetUnsigned16
isfunc
liblib:bacnet
namebacnetUnsigned16

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUnsigned64 ​

bacnetUnsigned64(val) ​

The method will convert the input Number to Unsigned64. And return it as Unsafe Obj instance. Method is typically used for write purpose.

It is not meant to be used outside the write queries. It is internal and only designed to work with write queries. And specifically for the properties where data-type is either any or some ambiguous value.

.toStr can be used with this query to get the output for debug purpose.


meta ​

admin✓
deffunc:bacnetUnsigned64
isfunc
liblib:bacnet
namebacnetUnsigned64

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUpdatePoolSizeInConfig ​

bacnetUpdatePoolSizeInConfig(cliTsmSize: Number.<ctor>(150), srvTsmSize: Number.<ctor>(150), pduPoolSize: Number.<ctor>(200), reinitStack: true) ​

This query updates the Server-TSML-pool, Client-TSML-pool size & Pdu-pool size

in the bbs.conf. We generally need to update Server-tsml-pool size on devices where load is high. Updating this parameter increases the pool size of stuck thus enabling it to handle large load.

Parameters:

  • cliTsmSize: Client pool size
  • srvTsmSize: Server pool size
  • pduPoolSize: Pdu pool size
  • reinitStack: Init stack, by default true

Examples:

bacnetUpdatePoolSizeInConfig(1200, 1000, 2000)
bacnetUpdatePoolSizeInConfig()

meta ​

admin✓
deffunc:bacnetUpdatePoolSizeInConfig
isfunc
liblib:bacnet
namebacnetUpdatePoolSizeInConfig

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetUtcTimeSynchronization ​

bacnetUtcTimeSynchronization(conn, date, time) ​

Synchronizes the time of the Device with UTC

Parameters:

  • conn: the BACnet connection used to query the object properties

  • date: Date of the device to be synchronized.

  • time: Time of the device to be synchronized.

Examples:

bacnetUtcTimeSynchronization(read(bacnetConn),2020-12-13,04:06:23)

bacnetUtcTimeSynchronization(read(bacnetConn),now().date,now().time)


meta ​

admin✓
deffunc:bacnetUtcTimeSynchronization
isfunc
liblib:bacnet
namebacnetUtcTimeSynchronization

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWhoHas ​

bacnetWhoHas(broadcastAddress, low, high, obj, networkNumber: Number.<ctor>(65535), discoveryTimeout: Number.<ctor>(8sec), queryDevProps: true) ​

Sends a WhoHas request in the network

Parameters:

  • broadcastAddress: IP broadcast address formated as a string ip:port,

    if port is missing then default 47808 is used
  • low: lower limit of the interval of device IDs that should respond

  • high: higher limit of the interval of device IDs that should respond

  • obj: object we want to send to WHoHas request. It can be ObjectId (AI1 or 0:1) or the ObjectName (AI_1)

    • networkNumber: network number of devices that should respond,

      default value is 0xFFFF for broadcast
    • discoveryTimeout: timeout specified in number with time measure unit

      default value is 8sec
    • queryDevProps: if the discovery should read device properties like "deviceName", "modelName", "vendorName"

      default value is true

Example:

bacnetWhoHas("255.255.255.255", 0, 4194303, "AI1")
bacnetWhoHas("255.255.255.255", 0, 4194303, "AI_5",0xFFFF, 20sec)
bacnetWhoHas("255.255.255.255:47810", 0, 4194303, "1:1",0xFFFF, 10sec)

meta ​

admin✓
deffunc:bacnetWhoHas
isfunc
liblib:bacnet
namebacnetWhoHas

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWriteGroupService ​

bacnetWriteGroupService(conn, groupNumber, writePriority, nListOfChannelValue, fInhibitDelay, inhibitDelay, changeList) ​

-nListOfChannelValue: Specifies the number of BacnetGroupChannelValue objects in changelist
-fInhibitDelay: flag for optional inhibit-delay				
-inhibitDelay: This optional parameter shall specify whether Channel objects whose Allow_Group_Delay_Inhibit properties have a value of
              TRUE shall inhibit any execution delay specified in their Execution_Delay property. If the 'Inhibit Delay' parameter is absent
              or FALSE, then execution delay(s) shall occur according to the Execution_Delay property
-changeList: The list consists of (channel number, overridingPriority, value) tuples representing each channel number whose value is to be updated.
   channel number: Channel numbers shall range from 0 to 65535 where the channel number corresponds directly to the Channel_Number property of a Channel object
   overridingPriority: Allows specific values to be written with some priority other than that specified by Write_Priority property.
   BACnetChannelValue: Values that are any primitive application datatype or BACnetLightingCommand. The NULL value represents 'relinquish control' as with commandable .
                       object properties

Examples:

// Create an object

bacnetWriteGroupService(@connRef,2,1,5,true,true,[{"channel":0,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}},

{"channel":1,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}},
{"channel":2,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}}, 
{"channel":3,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}}, 
{"channel":4,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}}])

bacnetWriteGroupService(@connRef,2,1,3,true,true,[{"channel":0,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}},

{"channel":1,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}}, 
{"channel":2,"fOverridingPriority":true,"overridingPriority":15,"value": {"channelValue": 56,"type": 4}}]

meta ​

admin✓
deffunc:bacnetWriteGroupService
isfunc
liblib:bacnet
namebacnetWriteGroupService

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWriteNetworkPortProperty ​

bacnetWriteNetworkPortProperty(prop, value, reinitStack: false, index: null) ​

Update/Write property value in our own Stack data-base for supported properties from Device or Network-port Object

Parameters:
	- prop: integer or string value representing the object's property id
	- value: value to be written
	- reinitStack: By default this flag is false, hence after every successful execution of this query, stack will not restart.
				   If we wish to restart stack then pass true.
	- index: the integer index of the property to read, if the value of that property is an array.
	  Note - For Network-port objects when any property is written, stack initialization is must to apply those changes.
	  It acts as ReinitializeDevice service which re-boot the device to apply the changes.
	  Run bacnetApplyNetworkPortPendingChanges() query to apply network port changes if reinitStack false

Examples:
	bacnetWriteNetworkPortProperty(400, "192.168.245.1", true) - stack will restart
	bacnetWriteNetworkPortProperty("bacnet_ip_udp_port", 47808)
	bacnetWriteNetworkPortProperty("network-number", 65530)
	bacnetWriteNetworkPortProperty("ip_subnet_mask", "255.255.255.0")
	bacnetWriteNetworkPortProperty("network-number", 65530)
	bacnetWriteNetworkPortProperty(413, true)
	bacnetWriteNetworkPortProperty("Fd_Subscription_Lifetime", 1200)
	bacnetWriteNetworkPortProperty("bbmd_broadcast_distribution_table", [["192.168.25.1",47810,"255.255.255.0"],["192.168.253.111",47808,"255.255.255.0"]]) - BDT Enteries
	bacnetWriteNetworkPortProperty("Fd_Bbmd_Address", "192.168.250.11:47808")

meta ​

admin✓
deffunc:bacnetWriteNetworkPortProperty
isfunc
liblib:bacnet
namebacnetWriteNetworkPortProperty

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWriteObjectProperty ​

bacnetWriteObjectProperty(conn, obj, prop, value, priority: Number.<ctor>(16), index: null) ​

Write a BACnet property value

Parameters:

  • conn: the BACnet connection used to query the object properties
  • obj: either a BACnet point record or a point Ref, or a string formatted as bacnetCur, i.e. objectType:objectInstance. See bacnetCur for more details
  • prop: integer or string value representing the object property id
  • value: value to be written
  • priority: priority level, defaults to 16
  • index: property value index, default to null

Examples:

// Write the present value
bacnetWriteObjectProperty(@connRef, @pointRef, 85, 1.0)
bacnetWriteObjectProperty(@connRef, "AV1", "present_value", 1.0, 16)
bacnetWriteObjectProperty(@connRef,"2:1", 85, 1.0)
bacnetWriteObjectProperty(@connRef,"MSV1", "STATE_TEXT", "State_11", 16, 1)

bacnetWriteObjectProperty(@connRef, "BSV1","present_value",xstr("BitString","100100"))
bacnetWriteObjectProperty(@connRef, "DV1","present_value",xstr("Date","2014-01-01-*"))
bacnetWriteObjectProperty(@connRef, "OSV1","present_value",xstr("OctetString","100100"))
bacnetWriteObjectProperty(@connRef, "DTV1","present_value",xstr("DateTime","2023-01-03-02T12:20:32.00"), 10)

meta ​

admin✓
deffunc:bacnetWriteObjectProperty
isfunc
liblib:bacnet
namebacnetWriteObjectProperty

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWritePropertyMultiple ​

bacnetWritePropertyMultiple(conn, objectPropDict) ​

Writes multiple object properties using the BACnet WritePropertyMultiple service if the remote device supports it. Accepts as parameters:

  • conn: the BACnet connection used to query the object properties
  • objectPropDict: a Dict with BACnet object Ids as keys and Dict of BACnet object properties as values The dict format is: {objectId1:{prop_name1:[propVal, propIndex, priority],prop_name2:[propVal]}, objectId2:{prop_name1:[propVal, propIndex]}}

Examples:

// Write present value and object name for 2 objects
bacnetWritePropertyMultiple(@connRef, {av1:{present_value:[100], object_name:["foo"]},
                                       av2:{present_value:[20, null, 8], object_name:["bar"]}})

meta ​

admin✓
deffunc:bacnetWritePropertyMultiple
isfunc
liblib:bacnet
namebacnetWritePropertyMultiple

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:bacnetWriteStackConfig ​

bacnetWriteStackConfig(dictVal, reinitStackIfNeeded: true) ​

The method will write the Config key-value to /etc/bacnetExt/config.props file Dict : key-value pair of config values

Example:

bacnetWriteStackConfig({"bacnetRetryCount" :"4"}) bacnetWriteStackConfig({"actorTimeout" :"3000ms"}) bacnetWriteStackConfig({"actorTimeout" :"1min"}) bacnetWriteStackConfig({"bacnetInstance" :"1000"}) bacnetWriteStackConfig({"dnetNumber" :"10"}) bacnetWriteStackConfig({"serverPhysicalDnetNumber" :"1"}) bacnetWriteStackConfig({"serverPhysicalDnetNumber" :"1", "dnetNumber" :"10"}) bacnetWriteStackConfig({"serverPhysicalDnetNumber" :"1", "dnetNumber" :"10", "bacnetInstance": "123", "memoryFallbackRetryCount": "3"}) bacnetWriteStackConfig({"localBindAddress" :"0.0.0.0:47808", "libraryName" :"example_platform", "rtldLocal": "0", "rtldLazy": "1"}) bacnetWriteStackConfig({"logLevel" :"INFO", "logType": "JAVA"}) bacnetWriteStackConfig({"fHostnameEnabled" :"1"})


meta ​

admin✓
deffunc:bacnetWriteStackConfig
isfunc
liblib:bacnet
namebacnetWriteStackConfig

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function


def ​

func:finSyncPointsInLib ​

finSyncPointsInLib(connIds, fromOrd, toOrd) ​


meta ​

deffunc:finSyncPointsInLib
isfunc
liblib:bacnet
namefinSyncPointsInLib

supertypes ​

featureFeature namespace of definitions formatted as feature:name
funcAxon function