Skip to main content

BacnetClient

Struct BacnetClient 

Source
pub struct BacnetClient<D: DataLink> { /* private fields */ }

Implementations§

Source§

impl BacnetClient<BacnetIpTransport>

Source§

impl BacnetClient<BacnetScTransport>

Source

pub async fn new_sc(endpoint: impl Into<String>) -> Result<Self, ClientError>

Source§

impl<D: DataLink> BacnetClient<D>

Source

pub fn with_response_timeout(self, timeout: Duration) -> Self

Source

pub fn with_segmented_request_window_size(self, window_size: u8) -> Self

Source

pub fn with_segmented_request_retries(self, retries: u8) -> Self

Source

pub fn with_segment_ack_timeout(self, timeout: Duration) -> Self

Source

pub async fn who_is( &self, range: Option<(u32, u32)>, wait: Duration, ) -> Result<Vec<DiscoveredDevice>, ClientError>

Source

pub async fn who_has_object_id( &self, range: Option<(u32, u32)>, object_id: ObjectId, wait: Duration, ) -> Result<Vec<DiscoveredObject>, ClientError>

Source

pub async fn who_has_object_name( &self, range: Option<(u32, u32)>, object_name: &str, wait: Duration, ) -> Result<Vec<DiscoveredObject>, ClientError>

Source

pub async fn device_communication_control( &self, address: DataLinkAddress, time_duration_seconds: Option<u16>, enable_disable: DeviceCommunicationState, password: Option<&str>, ) -> Result<(), ClientError>

Source

pub async fn reinitialize_device( &self, address: DataLinkAddress, state: ReinitializeState, password: Option<&str>, ) -> Result<(), ClientError>

Source

pub async fn time_synchronize( &self, address: DataLinkAddress, date: Date, time: Time, utc: bool, ) -> Result<(), ClientError>

Source

pub async fn create_object_by_type( &self, address: DataLinkAddress, object_type: ObjectType, ) -> Result<ObjectId, ClientError>

Source

pub async fn create_object( &self, address: DataLinkAddress, request: CreateObjectRequest, ) -> Result<ObjectId, ClientError>

Source

pub async fn delete_object( &self, address: DataLinkAddress, object_id: ObjectId, ) -> Result<(), ClientError>

Source

pub async fn add_list_element( &self, address: DataLinkAddress, request: AddListElementRequest<'_>, ) -> Result<(), ClientError>

Source

pub async fn remove_list_element( &self, address: DataLinkAddress, request: RemoveListElementRequest<'_>, ) -> Result<(), ClientError>

Source

pub async fn get_alarm_summary( &self, address: DataLinkAddress, ) -> Result<Vec<AlarmSummaryItem>, ClientError>

Source

pub async fn get_enrollment_summary( &self, address: DataLinkAddress, ) -> Result<Vec<EnrollmentSummaryItem>, ClientError>

Source

pub async fn get_event_information( &self, address: DataLinkAddress, last_received_object_id: Option<ObjectId>, ) -> Result<EventInformationResult, ClientError>

Source

pub async fn acknowledge_alarm( &self, address: DataLinkAddress, request: AcknowledgeAlarmRequest<'_>, ) -> Result<(), ClientError>

Source

pub async fn atomic_read_file_stream( &self, address: DataLinkAddress, file_object_id: ObjectId, file_start_position: i32, requested_octet_count: u32, ) -> Result<AtomicReadFileResult, ClientError>

Source

pub async fn atomic_read_file_record( &self, address: DataLinkAddress, file_object_id: ObjectId, file_start_record: i32, requested_record_count: u32, ) -> Result<AtomicReadFileResult, ClientError>

Source

pub async fn atomic_write_file_stream( &self, address: DataLinkAddress, file_object_id: ObjectId, file_start_position: i32, file_data: &[u8], ) -> Result<AtomicWriteFileResult, ClientError>

Source

pub async fn atomic_write_file_record( &self, address: DataLinkAddress, file_object_id: ObjectId, file_start_record: i32, file_record_data: &[&[u8]], ) -> Result<AtomicWriteFileResult, ClientError>

Source

pub async fn subscribe_cov( &self, address: DataLinkAddress, request: SubscribeCovRequest, ) -> Result<(), ClientError>

Source

pub async fn cancel_cov_subscription( &self, address: DataLinkAddress, subscriber_process_id: u32, monitored_object_id: ObjectId, ) -> Result<(), ClientError>

Source

pub async fn subscribe_cov_property( &self, address: DataLinkAddress, request: SubscribeCovPropertyRequest, ) -> Result<(), ClientError>

Source

pub async fn cancel_cov_property_subscription( &self, address: DataLinkAddress, subscriber_process_id: u32, monitored_object_id: ObjectId, monitored_property_id: PropertyId, monitored_property_array_index: Option<u32>, ) -> Result<(), ClientError>

Source

pub async fn read_range_by_position( &self, address: DataLinkAddress, object_id: ObjectId, property_id: PropertyId, array_index: Option<u32>, reference_index: i32, count: i16, ) -> Result<ReadRangeResult, ClientError>

Source

pub async fn read_range_by_sequence_number( &self, address: DataLinkAddress, object_id: ObjectId, property_id: PropertyId, array_index: Option<u32>, reference_sequence: u32, count: i16, ) -> Result<ReadRangeResult, ClientError>

Source

pub async fn read_range_by_time( &self, address: DataLinkAddress, object_id: ObjectId, property_id: PropertyId, array_index: Option<u32>, at: (Date, Time), count: i16, ) -> Result<ReadRangeResult, ClientError>

Source

pub async fn recv_cov_notification( &self, wait: Duration, ) -> Result<Option<CovNotification>, ClientError>

Source

pub async fn recv_event_notification( &self, wait: Duration, ) -> Result<Option<EventNotification>, ClientError>

Source

pub async fn read_property( &self, address: DataLinkAddress, object_id: ObjectId, property_id: PropertyId, ) -> Result<ClientDataValue, ClientError>

Source

pub async fn write_property( &self, address: DataLinkAddress, request: WritePropertyRequest<'_>, ) -> Result<(), ClientError>

Source

pub async fn read_property_multiple( &self, address: DataLinkAddress, object_id: ObjectId, property_ids: &[PropertyId], ) -> Result<Vec<(PropertyId, ClientDataValue)>, ClientError>

Source

pub async fn write_property_multiple( &self, address: DataLinkAddress, object_id: ObjectId, properties: &[PropertyWriteSpec<'_>], ) -> Result<(), ClientError>

Source

pub async fn private_transfer( &self, address: DataLinkAddress, vendor_id: u32, service_number: u32, service_parameters: Option<&[u8]>, ) -> Result<PrivateTransferAck, ClientError>

Send a ConfirmedPrivateTransfer request and return the ack.

Trait Implementations§

Source§

impl<D: Debug + DataLink> Debug for BacnetClient<D>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<D> !Freeze for BacnetClient<D>

§

impl<D> !RefUnwindSafe for BacnetClient<D>

§

impl<D> Send for BacnetClient<D>

§

impl<D> Sync for BacnetClient<D>

§

impl<D> Unpin for BacnetClient<D>
where D: Unpin,

§

impl<D> UnwindSafe for BacnetClient<D>
where D: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V