#!/usr/bin/env python """ This application presents a 'console' prompt to the user asking for readrange commands which create ReadRangeRequest PDUs, then lines up the coorresponding ReadRangeACK and prints the value. """ import sys from bacpypes.debugging import bacpypes_debugging, ModuleLogger from bacpypes.consolelogging import ConfigArgumentParser from bacpypes.consolecmd import ConsoleCmd from bacpypes.core import run, deferred, enable_sleeping from bacpypes.iocb import IOCB from bacpypes.pdu import Address from bacpypes.object import get_datatype from bacpypes.apdu import ( ReadRangeRequest, Range, RangeByPosition, RangeBySequenceNumber, RangeByTime, ReadRangeACK, ) from bacpypes.app import BIPSimpleApplication from bacpypes.primitivedata import Date, Time, ObjectIdentifier from bacpypes.constructeddata import Array, List from bacpypes.basetypes import DateTime from bacpypes.local.device import LocalDeviceObject # some debugging _debug = 0 _log = ModuleLogger(globals()) # globals this_application = None # # ReadRangeConsoleCmd # @bacpypes_debugging class ReadRangeConsoleCmd(ConsoleCmd): def do_readrange(self, args): """readrange [ ] [ p ] [ s ] [ t