外观
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
| bacnetAlarmPid | It specifies the connector will only handle alarms associated with that process identifier |
| bacnetConn | Marker tag for BACnet connection |
| bacnetConnRef | Used on a proxy object to reference its parent bacnetConn |
| bacnetCovResubscribeTimeout | Applied to ConnTuning specifies when the COV re-subscribe should be performed for points that failed to be subscribed |
| bacnetCovTimeout | Applied to ConnTuning to specify the lifetime for a COV subscription sent to the device |
| bacnetCur | Used on a BACnet proxy point to subscribe for current value |
| bacnetDevice | Applied to a record to create a BACnet device object |
| bacnetDeviceName | Tag for current device name |
| bacnetDeviceRef | Applied to a bacnetConn or ext to reference a BACnet device object |
| bacnetDisableCov | Applied to ConnTuning to disable the COV for a specific point or all the points in a connector |
| bacnetEnableOutOfService | Applied to ConnTuning will enable getting the overridden value for points that have the BACnet OUT_OF_SERVICE (Remote Disabled) status flag |
| bacnetEnumPropMapping | Marker tag for Enum and property value conversion mapping for schedule object |
| bacnetHis | Used on a BACnet proxy point to store BACnet trend log id |
| bacnetInitInterval | Applied to ConnTuning to tune the duration between driver re-initialization |
| 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 |
| bacnetRoute | bacnetRoute string tag if connecting through VPN and if network number is 0 |
| bacnetScheduleRead | bacnetScheduleRead tag enables the reading of BACnet schedule properties, required for schedule read sync |
| bacnetScheduleReadFreq | This tag denotes the frequency duration at which schedule read sync will occur |
| bacnetScheduleWrite | bacnetScheduleWrite tag enables the writing of BACnet schedule properties |
| bacnetUseConfirmedCov | Applied to ConnTuning to make the COV subscription mechanism to use confirmed COV messages |
| bacnetVersion | Tag for current connection protocol version |
| bacnetWrite | Reference for BACnet object id to be written |
| bacnetWriteLevel | Number between 1 and 17 used with bacnetWriteLevel to determine which priority level of the remote system is written to |
funcs
| bacnetAcknowledgeAlarm | Acknowledges an alarm |
| bacnetAddEnumPropValMapping | The method will save Enum and property value conversion mapping for schedule object e.g |
| bacnetAddRouterEntry | Make a network Table entry manually of router |
| bacnetAddToNotificationClass | Adds the connector to the provided notification class, to enable receiving alarm/event notifications |
| bacnetAny | The method will convert the input data/Dict to given type |
| bacnetApplyNetworkPortPendingChanges | Apply the pending changes in the stack configuration by restarting the stack with new changes Examples |
| bacnetAtomicReadFile | Reads the content of a BACnet File object |
| bacnetAtomicWriteFile | Writes the content of a IOHandle to a BACnet File object |
| bacnetBackupDevice | Takes the backup of the Device |
| bacnetCharString | The method will convert the input Str to Character String |
| bacnetCharacter | The method will convert the input Str to Character Array |
| bacnetClientRestart | Restart the stack Parameters |
| bacnetConfirmedTextMessage | The ConfirmedTextMessage service is used by a client BACnet-user to send a text message to another BACnet device |
| bacnetCreateObject | Create a Bacnet Object Parameters |
| bacnetDbcsString | The method will convert the input Str to dbcs String |
| bacnetDeleteObject | Delete a Bacnet Object Parameters |
| bacnetDeviceCommunicationControl | bacnetDeviceCommunicationControl(@connRef, dccValue, timeRem, password) bacnetDeviceCommunicationControl(read(bacnetConn), 0, 180sec) bacnetDeviceCommunicationControl(read(bacnetConn),"ENABLE", 2min) |
| bacnetDeviceDiscovery | Discover BACnet devices and returns a grid with them |
| bacnetDiscoverObjects | Discover BACnet objects from the BACnet device |
| bacnetDouble | The method will convert the input Number to Double |
| bacnetEmptyList | The method indicates to write an empty list |
| bacnetEnrollmentSummary | The GetEnrollmentSummary service is used to obtain a summary of event-initiating objects Parameters |
| bacnetEnum | The method will convert the input Number to Enumeration |
| bacnetGetAlarmSummary | Retrieves the Alarm Summary from the device and adds them in the Alarm Extension |
| bacnetGetBackupStatus | Gets the device backup information |
| bacnetGetDeviceInstanceNumber | The method will return the bacnet device instance number |
| bacnetGetDeviceObjectName | The 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 |
| bacnetGetHandledAlarms | Returns the handled alarms from this Bacnet connector |
| bacnetGetHandledEvents | |
| bacnetGetLocalBindAddress | The method will get localBindAddress |
| bacnetGetLocalDnetNumber | The method will return the local dnet number |
| bacnetGetMaxDeviceInstance | |
| bacnetGetMaxMacAddress | |
| bacnetGetMaxNetworkNumber | |
| bacnetGetNotificationSubscriptions | Returns all the Notification Classes this current connector receives notifications from |
| bacnetGetPhysicalPortDnetNumber | The method will get physical port dnet Number |
| bacnetGetStackConfigKeys | Method will return all the config keys defined by the system |
| bacnetGetStringTypeSupported | Retrieves the String type supported for the connector |
| bacnetGetUnhandledAlarms | Returns the unhandled alarms from this Bacnet connector This is more for testing purposes, to see we are receiving alarms |
| bacnetGetUnhandledEvents | Returns the unhandled alarm events (type=event) of Bacnet connector This is more for testing purposes, to see we are receiving alarms |
| bacnetIsoString | The method will convert the input Str to Iso8859 String |
| bacnetJisString | The method will convert the input Str to Jisc6226 String |
| bacnetLearn | Returns a grid with the BACnet objects residing on the device the connector points to |
| bacnetLifeSafetyOperation | - conn |
| bacnetListBroadcastIps | List all the available IPv4 broadcast addresses |
| bacnetListLocalIps | List all the available IPv4 local addresses, excluding the loopback |
| bacnetLocalBindAddress | Returns the local address to which the BACnet stack is bind |
| 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 |
| bacnetMigration | Manually call the migration functions for the current project |
| bacnetNotificationsSubscribeConn | Subscribe to connector, to receive notifications for all the points from it that are bound in DB builder |
| bacnetNotificationsSubscribePoint | Subscribe to connector, to receive notifications only for the provided point |
| bacnetNotificationsUnsubscribeConn | Unsubscribe from connector, from receiving notifications for all the points that are bound in DB builder |
| bacnetNotificationsUnsubscribePoint | Unsubscribe from connector, from receiving notifications only for the provided point |
| bacnetObjectTypeList | List all standard BACnet object types |
| bacnetPing | Asynchronously ping an bacnet connector Examples |
| bacnetPropertyIdentifierList | List all standard properties that a BACnet object can support |
| bacnetReadEnumPropValMapping | The method will fetch all Enum and property value conversion mapping for schedule object Examples |
| bacnetReadHis | Read history log from a BACnet Trend Log object Parameters |
| bacnetReadObject | Read all know properties for this BACnet object Parameters |
| bacnetReadObjectProperty | Read a BACnet property from a BACnet object Parameters |
| bacnetReadPoolSizeFromBbsConfig | Reads the Client_pool_size, Server_pool_size & Pdu_pool_size from the BBS config |
| bacnetReadPropertyFromDB | Reads property value from our own Stack data-base, like properties from Device or Network-port Object Parameters |
| bacnetReadPropertyMultiple | Reads multiple object properties using the BACnet ReadPropertyMultiple service if the remote device supports it |
| bacnetReadStackConfig | The method will return the Config value for inquired Config keys from /etc/bacnetExt/config.props file configKey |
| bacnetReadStructuredView | Reads the properties of BACnet Structured View objects for a given connector |
| bacnetReal | The method will convert the input Number to Real |
| bacnetRegisterBBMDwithNetworkPort | Registers the device as BBMD using network-port object and puts the entry provided in the BBMD-BROADCAST-DISTRIBUTION-TABLE property |
| bacnetRegisterForeignDeviceWithNetworkPort | Registers the device as foreign device by requesting the BBMD of the other subnet it wants to register itself |
| bacnetRemoveFromNotificationClass | Removes the local device corresponding to the connector from the provided notification class, to disable receiving alarm/event notifications |
| bacnetRemoveStackConfig | The method will return delete the provided config entry |
| bacnetRestoreDevice | Restores the device from the already backed up data |
| bacnetScheduleEffectivePeriod | Reads the effective period for a bacnet schedule point Paramaters |
| bacnetScheduleRead | Reads the weekly schedule from a bacnet schedule point Paramaters |
| bacnetScheduleWrite | Writes a weekly schedule to a bacnet schedule point Paramaters |
| bacnetSetDeviceInstanceNumber | Set instance number of our device |
| bacnetSetDeviceObjectName | The method will set object name of default server device |
| bacnetSetLocalBindAddress | The method will set localBindAddress - localBindAddress |
| bacnetSetLocalDnetNumber | The method will set the local dnet number |
| bacnetSetPhysicalPortDnetNumber | The method will set physical port dnet Number |
| bacnetSigned | The method will convert the input Number to Signed |
| bacnetSyncCur | Asynchronously synchronize current values for given list of proxy points |
| bacnetSyncHis | Import the lastest data from an BACnet Trend Log object to the local history database, for each point provided |
| bacnetSyncObjectProperty | Function to sync BACnet object property of BACnet device point to the FIN Note:- Support is currently limited to the units property only |
| bacnetTimeSynchronization | Synchronizes the time of the Device Parameters |
| bacnetUcs2String | The method will convert the input Str to UCS 2 String |
| bacnetUcs4String | The method will convert the input Str to UCS 4 String |
| bacnetUnconfirmedTextMessage | Parameters |
| bacnetUnregisterBBMDwithNetworkPort | bacnetUnregisterBBMDwithNetworkPort() This query will Unregister BBMD from network-port object |
| bacnetUnregisterForeignDeviceWithNetworkPort | bacnetUnregisterForeignDeviceWithNetworkPort() This query will delete Foreign device details from stack database |
| bacnetUnsigned | The method will convert the input Number to Unsigned |
| bacnetUnsigned16 | The method will convert the input Number to Unsigned16 |
| bacnetUnsigned64 | The method will convert the input Number to Unsigned64 |
| bacnetUpdatePoolSizeInConfig | This query updates the Server-TSML-pool, Client-TSML-pool size & Pdu-pool size in the bbs.conf |
| bacnetUtcTimeSynchronization | Synchronizes the time of the Device with UTC Parameters |
| bacnetWhoHas | Sends a WhoHas request in the network Parameters |
| bacnetWriteGroupService | -nListOfChannelValue |
| bacnetWriteNetworkPortProperty | Update/Write property value in our own Stack data-base for supported properties from Device or Network-port Object Parameters |
| bacnetWriteObjectProperty | Write a BACnet property value Parameters |
| bacnetWritePropertyMultiple | Writes multiple object properties using the BACnet WritePropertyMultiple service if the remote device supports it |
| bacnetWriteStackConfig | The 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
| def | bacnetAlarmPid |
| is | number |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer or floating point numbers annotated with an optional unit |
def
bacnetConn
Marker tag for BACnet connection. See bacnet.
meta
| def | bacnetConn |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker labels a dict with typing information |
def
bacnetConnRef
Used on a proxy object to reference its parent bacnetConn
meta
| def | bacnetConnRef |
| is | ref |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| ref | Reference 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
| def | bacnetCovResubscribeTimeout |
| is | number |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer 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
| def | bacnetCovTimeout |
| is | number |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer 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
| def | bacnetCur |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode string of characters |
def
bacnetDevice
Applied to a record to create a BACnet device object.
meta
| def | bacnetDevice |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker labels a dict with typing information |
def
bacnetDeviceName
Tag for current device name
meta
| def | bacnetDeviceName |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode string of characters |
def
bacnetDeviceRef
Applied to a bacnetConn or ext to reference a BACnet device object.
meta
| def | bacnetDeviceRef |
| is | ref |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| ref | Reference 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
| def | bacnetDisableCov |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker 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
| def | bacnetEnableOutOfService |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker labels a dict with typing information |
def
bacnetEnumPropMapping
Marker tag for Enum and property value conversion mapping for schedule object.
meta
| def | bacnetEnumPropMapping |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker labels a dict with typing information |
def
bacnetHis
Used on a BACnet proxy point to store BACnet trend log id. See bacnet.
meta
| def | bacnetHis |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode 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
| def | bacnetInitInterval |
| is | duration |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer or floating point numbers annotated with an optional unit |
| duration | Number 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
| def | bacnetInstance |
| is | number |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer 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
| def | bacnetRoute |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode 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
| def | bacnetScheduleRead |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode 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
| def | bacnetScheduleReadFreq |
| is | duration |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer or floating point numbers annotated with an optional unit |
| duration | Number 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
| def | bacnetScheduleWrite |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode 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
| def | bacnetUseConfirmedCov |
| is | marker |
| lib | lib:bacnet |
supertypes
| marker | Marker labels a dict with typing information |
def
bacnetVersion
Tag for current connection protocol version
meta
| def | bacnetVersion |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode string of characters |
def
bacnetWrite
Reference for BACnet object id to be written. Must also define bacnetWriteLevel. See bacnet.
meta
| def | bacnetWrite |
| is | str |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| str | Unicode 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
| def | bacnetWriteLevel |
| is | number |
| lib | lib:bacnet |
supertypes
| val | Data value type |
| scalar | Scalar is an atomic value kind |
| number | Integer 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 tagdis: display name of the connectoruri: 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:
bacnetCurbacnetHisbacnetWrite
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 | ✓ |
| def | func:bacnetAcknowledgeAlarm |
| is | func |
| lib | lib:bacnet |
| name | bacnetAcknowledgeAlarm |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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" / @connRefcontextObj: the BACnet Object for which we need conversion (Currently Schedule Object Supported )
i.e. "SCH1" /"17:1"/ "SCH" /"17" /@pointRefrefDevice: 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"/@connRefrefObj: the BACnet Object from where we need to refer property for conversion.(Any BACnet Object)
i.e. "MSV7" /"19:7" /@pointRefrefProperty: the BACnet Object's property from where we will refer labels for conversion. i.e. "STATE_TEXT"/ 110
Note:- refProperty should be Array of CharacterStringscheduleObjectType: 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)- 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)- 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- 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)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 | ✓ |
| def | func:bacnetAddEnumPropValMapping |
| is | func |
| lib | lib:bacnet |
| name | bacnetAddEnumPropValMapping |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetAddRouterEntry |
| is | func |
| lib | lib:bacnet |
| name | bacnetAddRouterEntry |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetAddToNotificationClass |
| is | func |
| lib | lib:bacnet |
| name | bacnetAddToNotificationClass |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetAny |
| is | func |
| lib | lib:bacnet |
| name | bacnetAny |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetApplyNetworkPortPendingChanges
bacnetApplyNetworkPortPendingChanges()
Apply the pending changes in the stack configuration by restarting the stack with new changes
Examples: bacnetApplyNetworkPortPendingChanges()
meta
| admin | ✓ |
| def | func:bacnetApplyNetworkPortPendingChanges |
| is | func |
| lib | lib:bacnet |
| name | bacnetApplyNetworkPortPendingChanges |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetAtomicReadFile |
| is | func |
| lib | lib:bacnet |
| name | bacnetAtomicReadFile |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetAtomicWriteFile |
| is | func |
| lib | lib:bacnet |
| name | bacnetAtomicWriteFile |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetBackupDevice |
| is | func |
| lib | lib:bacnet |
| name | bacnetBackupDevice |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetCharString |
| is | func |
| lib | lib:bacnet |
| name | bacnetCharString |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetCharacter |
| is | func |
| lib | lib:bacnet |
| name | bacnetCharacter |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetClientRestart |
| is | func |
| lib | lib:bacnet |
| name | bacnetClientRestart |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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
numericorcharacter. 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 | ✓ |
| def | func:bacnetConfirmedTextMessage |
| is | func |
| lib | lib:bacnet |
| name | bacnetConfirmedTextMessage |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more detailspropValueDict: 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 | ✓ |
| def | func:bacnetCreateObject |
| is | func |
| lib | lib:bacnet |
| name | bacnetCreateObject |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetDbcsString |
| is | func |
| lib | lib:bacnet |
| name | bacnetDbcsString |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more details
Examples:
// Create an object
bacnetDeleteObject(@connRef, @pointRef)
bacnetDeleteObject(@connRef, "AV1")
bacnetDeleteObject(@connRef,"2:1")meta
| admin | ✓ |
| def | func:bacnetDeleteObject |
| is | func |
| lib | lib:bacnet |
| name | bacnetDeleteObject |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetDeviceCommunicationControl |
| is | func |
| lib | lib:bacnet |
| name | bacnetDeviceCommunicationControl |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 usedlow: 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 broadcastdiscoveryTimeout: timeout specified in number with time measure unit
default value is 8secqueryDevProps: 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 | ✓ |
| def | func:bacnetDeviceDiscovery |
| is | func |
| lib | lib:bacnet |
| name | bacnetDeviceDiscovery |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetDiscoverObjects |
| is | func |
| lib | lib:bacnet |
| name | bacnetDiscoverObjects |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetDouble |
| is | func |
| lib | lib:bacnet |
| name | bacnetDouble |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetEmptyList |
| is | func |
| lib | lib:bacnet |
| name | bacnetEmptyList |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 summarizedeventState: 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 | ✓ |
| def | func:bacnetEnrollmentSummary |
| is | func |
| lib | lib:bacnet |
| name | bacnetEnrollmentSummary |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetEnum |
| is | func |
| lib | lib:bacnet |
| name | bacnetEnum |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetAlarmSummary |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetAlarmSummary |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetBackupStatus |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetBackupStatus |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetDeviceInstanceNumber
bacnetGetDeviceInstanceNumber()
The method will return the bacnet device instance number.
meta
| admin | ✓ |
| def | func:bacnetGetDeviceInstanceNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetDeviceInstanceNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetDeviceObjectName
bacnetGetDeviceObjectName()
The method will return the bacnet device object name.
meta
| admin | ✓ |
| def | func:bacnetGetDeviceObjectName |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetDeviceObjectName |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more details
Returns:
A grid with all event informationExamples:
bacnetGetEventInformation(read(bacnetConn), true)
bacnetGetEventInformation(read(bacnetConn), true, "AV1")
bacnetGetEventInformation(read(bacnetConn), false, "AV1")meta
| admin | ✓ |
| def | func:bacnetGetEventInformation |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetEventInformation |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetHandledAlarms |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetHandledAlarms |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetHandledEvents
bacnetGetHandledEvents(conn)
meta
| admin | ✓ |
| def | func:bacnetGetHandledEvents |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetHandledEvents |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetLocalBindAddress
bacnetGetLocalBindAddress()
The method will get localBindAddress.
Example:
bacnetGetLocalBindAddress()
meta
| admin | ✓ |
| def | func:bacnetGetLocalBindAddress |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetLocalBindAddress |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetLocalDnetNumber
bacnetGetLocalDnetNumber()
The method will return the local dnet number.
meta
| admin | ✓ |
| def | func:bacnetGetLocalDnetNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetLocalDnetNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetMaxDeviceInstance
bacnetGetMaxDeviceInstance()
meta
| def | func:bacnetGetMaxDeviceInstance |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetMaxDeviceInstance |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetMaxMacAddress
bacnetGetMaxMacAddress()
meta
| def | func:bacnetGetMaxMacAddress |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetMaxMacAddress |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetMaxNetworkNumber
bacnetGetMaxNetworkNumber()
meta
| def | func:bacnetGetMaxNetworkNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetMaxNetworkNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetNotificationSubscriptions |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetNotificationSubscriptions |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetGetPhysicalPortDnetNumber
bacnetGetPhysicalPortDnetNumber()
The method will get physical port dnet Number.
Example:
bacnetGetPhysicalPortDnetNumber()
meta
| admin | ✓ |
| def | func:bacnetGetPhysicalPortDnetNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetPhysicalPortDnetNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetStackConfigKeys |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetStackConfigKeys |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetStringTypeSupported |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetStringTypeSupported |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetUnhandledAlarms |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetUnhandledAlarms |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetGetUnhandledEvents |
| is | func |
| lib | lib:bacnet |
| name | bacnetGetUnhandledEvents |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetIsoString |
| is | func |
| lib | lib:bacnet |
| name | bacnetIsoString |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetJisString |
| is | func |
| lib | lib:bacnet |
| name | bacnetJisString |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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,"",Mmeta
| admin | ✓ |
| def | func:bacnetLearn |
| is | func |
| lib | lib:bacnet |
| name | bacnetLearn |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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_VISUALExample usages:
bacnetLifeSafetyOperation(read(bacnetConn), "RESET")
bacnetLifeSafetyOperation(read(bacnetConn), "SILENCE","FIN", "LSP1")
bacnetLifeSafetyOperation(read(bacnetConn), "UNSILENCE","FIN")meta
| admin | ✓ |
| def | func:bacnetLifeSafetyOperation |
| is | func |
| lib | lib:bacnet |
| name | bacnetLifeSafetyOperation |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetListBroadcastIps
bacnetListBroadcastIps()
List all the available IPv4 broadcast addresses
meta
| def | func:bacnetListBroadcastIps |
| is | func |
| lib | lib:bacnet |
| name | bacnetListBroadcastIps |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetListLocalIps
bacnetListLocalIps()
List all the available IPv4 local addresses, excluding the loopback
meta
| def | func:bacnetListLocalIps |
| is | func |
| lib | lib:bacnet |
| name | bacnetListLocalIps |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetLocalBindAddress
bacnetLocalBindAddress()
Returns the local address to which the BACnet stack is bind.
meta
| admin | ✓ |
| def | func:bacnetLocalBindAddress |
| is | func |
| lib | lib:bacnet |
| name | bacnetLocalBindAddress |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetMigratePoints |
| is | func |
| lib | lib:bacnet |
| name | bacnetMigratePoints |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetMigration |
| is | func |
| lib | lib:bacnet |
| name | bacnetMigration |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetNotificationsSubscribeConn |
| is | func |
| lib | lib:bacnet |
| name | bacnetNotificationsSubscribeConn |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetNotificationsSubscribePoint |
| is | func |
| lib | lib:bacnet |
| name | bacnetNotificationsSubscribePoint |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetNotificationsUnsubscribeConn |
| is | func |
| lib | lib:bacnet |
| name | bacnetNotificationsUnsubscribeConn |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetNotificationsUnsubscribePoint |
| is | func |
| lib | lib:bacnet |
| name | bacnetNotificationsUnsubscribePoint |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetObjectTypeList
bacnetObjectTypeList()
List all standard BACnet object types
meta
| admin | ✓ |
| def | func:bacnetObjectTypeList |
| is | func |
| lib | lib:bacnet |
| name | bacnetObjectTypeList |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetPing |
| is | func |
| lib | lib:bacnet |
| name | bacnetPing |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetPropertyIdentifierList
bacnetPropertyIdentifierList()
List all standard properties that a BACnet object can support
meta
| admin | ✓ |
| def | func:bacnetPropertyIdentifierList |
| is | func |
| lib | lib:bacnet |
| name | bacnetPropertyIdentifierList |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetReadEnumPropValMapping
bacnetReadEnumPropValMapping()
The method will fetch all Enum and property value conversion mapping for schedule object
Examples:
bacnetReadEnumPropValMapping()
meta
| admin | ✓ |
| def | func:bacnetReadEnumPropValMapping |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadEnumPropValMapping |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetHisfor 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 | ✓ |
| def | func:bacnetReadHis |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadHis |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more details
Returns:
A grid with all known object properties.meta
| admin | ✓ |
| def | func:bacnetReadObject |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadObject |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more details. You can pass a@connRefalso, 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 | ✓ |
| def | func:bacnetReadObjectProperty |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadObjectProperty |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetReadPoolSizeFromBbsConfig
bacnetReadPoolSizeFromBbsConfig()
Reads the Client_pool_size, Server_pool_size & Pdu_pool_size from the BBS config.
meta
| admin | ✓ |
| def | func:bacnetReadPoolSizeFromBbsConfig |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadPoolSizeFromBbsConfig |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetReadPropertyFromDB |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadPropertyFromDB |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 objectsbacnetReadPropertyMultiple(@connRef, {av1:{present_value, object_name}, av2:{present_value, object_name}})meta
| admin | ✓ |
| def | func:bacnetReadPropertyMultiple |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadPropertyMultiple |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetReadStackConfig |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadStackConfig |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetReadStructuredView |
| is | func |
| lib | lib:bacnet |
| name | bacnetReadStructuredView |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetReal |
| is | func |
| lib | lib:bacnet |
| name | bacnetReal |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetRegisterBBMDwithNetworkPort |
| is | func |
| lib | lib:bacnet |
| name | bacnetRegisterBBMDwithNetworkPort |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetRegisterForeignDeviceWithNetworkPort |
| is | func |
| lib | lib:bacnet |
| name | bacnetRegisterForeignDeviceWithNetworkPort |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetRemoveFromNotificationClass |
| is | func |
| lib | lib:bacnet |
| name | bacnetRemoveFromNotificationClass |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetRemoveStackConfig |
| is | func |
| lib | lib:bacnet |
| name | bacnetRemoveStackConfig |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 infolder 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 | ✓ |
| def | func:bacnetRestoreDevice |
| is | func |
| lib | lib:bacnet |
| name | bacnetRestoreDevice |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetScheduleEffectivePeriod |
| is | func |
| lib | lib:bacnet |
| name | bacnetScheduleEffectivePeriod |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 entryExamples:
read(bacnetConn).bacnetScheduleRead(@pointRef)
read(bacnetConn).bacnetScheduleRead("SCH2")meta
| admin | ✓ |
| def | func:bacnetScheduleRead |
| is | func |
| lib | lib:bacnet |
| name | bacnetScheduleRead |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 otherwiseExamples:
read(bacnetConn).bacnetScheduleWrite(@pointRef, scheduleHis(@19e846bf-9baaa022,thisWeek() +1day , {timeline}))
read(bacnetConn).bacnetScheduleWrite("SCH2", scheduleHis(@19e846bf-9baaa022,thisWeek() +1day , {timeline}))meta
| admin | ✓ |
| def | func:bacnetScheduleWrite |
| is | func |
| lib | lib:bacnet |
| name | bacnetScheduleWrite |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetSetDeviceInstanceNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetSetDeviceInstanceNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetSetDeviceObjectName |
| is | func |
| lib | lib:bacnet |
| name | bacnetSetDeviceObjectName |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetSetLocalBindAddress |
| is | func |
| lib | lib:bacnet |
| name | bacnetSetLocalBindAddress |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetSetLocalDnetNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetSetLocalDnetNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetSetPhysicalPortDnetNumber
bacnetSetPhysicalPortDnetNumber(physicaldnetNumber, reinitStack: true, checkDuplicateLocalNetwork: true)
The method will set physical port dnet Number.
Example:
bacnetSetPhysicalPortDnetNumber(5)
meta
| admin | ✓ |
| def | func:bacnetSetPhysicalPortDnetNumber |
| is | func |
| lib | lib:bacnet |
| name | bacnetSetPhysicalPortDnetNumber |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetSigned |
| is | func |
| lib | lib:bacnet |
| name | bacnetSigned |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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:
bacnetConnRefbacnetCur
This call updates the following point tags:
curVal: current value of the pointcurStatus: status of the point (down/fault on failure)curErr: error message on failure
meta
| admin | ✓ |
| def | func:bacnetSyncCur |
| is | func |
| lib | lib:bacnet |
| name | bacnetSyncCur |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 connectorbacnetHis: reference to theTrend Logobjecthis: 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
hisStatustag transiently - updates
hisErrtag transiently
Examples:
bacnetSyncHis(readAll(point and <filter>))
readAll(point and <filter>).bacnetSyncHis()
readAll(point and <filter>).bacnetSyncHis(now()-1year..now())meta
| admin | ✓ |
| def | func:bacnetSyncHis |
| is | func |
| lib | lib:bacnet |
| name | bacnetSyncHis |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor more details. You can pass a@connRefalso, 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 | ✓ |
| def | func:bacnetSyncObjectProperty |
| is | func |
| lib | lib:bacnet |
| name | bacnetSyncObjectProperty |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetTimeSynchronization |
| is | func |
| lib | lib:bacnet |
| name | bacnetTimeSynchronization |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUcs2String |
| is | func |
| lib | lib:bacnet |
| name | bacnetUcs2String |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUcs4String |
| is | func |
| lib | lib:bacnet |
| name | bacnetUcs4String |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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
umericorcharacter. 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 | ✓ |
| def | func:bacnetUnconfirmedTextMessage |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnconfirmedTextMessage |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetUnregisterBBMDwithNetworkPort
bacnetUnregisterBBMDwithNetworkPort(reinitStack: true)
bacnetUnregisterBBMDwithNetworkPort()
This query will Unregister BBMD from network-port object
meta
| admin | ✓ |
| def | func:bacnetUnregisterBBMDwithNetworkPort |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnregisterBBMDwithNetworkPort |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:bacnetUnregisterForeignDeviceWithNetworkPort
bacnetUnregisterForeignDeviceWithNetworkPort(reinitStack: true)
bacnetUnregisterForeignDeviceWithNetworkPort()
This query will delete Foreign device details from stack database.
meta
| admin | ✓ |
| def | func:bacnetUnregisterForeignDeviceWithNetworkPort |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnregisterForeignDeviceWithNetworkPort |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUnsigned |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnsigned |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUnsigned16 |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnsigned16 |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUnsigned64 |
| is | func |
| lib | lib:bacnet |
| name | bacnetUnsigned64 |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUpdatePoolSizeInConfig |
| is | func |
| lib | lib:bacnet |
| name | bacnetUpdatePoolSizeInConfig |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetUtcTimeSynchronization |
| is | func |
| lib | lib:bacnet |
| name | bacnetUtcTimeSynchronization |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 usedlow: 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 broadcastdiscoveryTimeout: timeout specified in number with time measure unit
default value is 8secqueryDevProps: 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 | ✓ |
| def | func:bacnetWhoHas |
| is | func |
| lib | lib:bacnet |
| name | bacnetWhoHas |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 propertiesExamples:
// Create an objectbacnetWriteGroupService(@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 | ✓ |
| def | func:bacnetWriteGroupService |
| is | func |
| lib | lib:bacnet |
| name | bacnetWriteGroupService |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetWriteNetworkPortProperty |
| is | func |
| lib | lib:bacnet |
| name | bacnetWriteNetworkPortProperty |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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. SeebacnetCurfor 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 | ✓ |
| def | func:bacnetWriteObjectProperty |
| is | func |
| lib | lib:bacnet |
| name | bacnetWriteObjectProperty |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 objectsbacnetWritePropertyMultiple(@connRef, {av1:{present_value:[100], object_name:["foo"]},
av2:{present_value:[20, null, 8], object_name:["bar"]}})meta
| admin | ✓ |
| def | func:bacnetWritePropertyMultiple |
| is | func |
| lib | lib:bacnet |
| name | bacnetWritePropertyMultiple |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon 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 | ✓ |
| def | func:bacnetWriteStackConfig |
| is | func |
| lib | lib:bacnet |
| name | bacnetWriteStackConfig |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |
def
func:finSyncPointsInLib
finSyncPointsInLib(connIds, fromOrd, toOrd)
meta
| def | func:finSyncPointsInLib |
| is | func |
| lib | lib:bacnet |
| name | finSyncPointsInLib |
supertypes
| feature | Feature namespace of definitions formatted as feature:name |
| func | Axon function |