Class RemoteDevice

A remote connected device.

Class summary


address -> any
The address of the remote device the client is connected to.
discovered-services -> List
The list of discovered services on the remote device.
discover-services service-uuids/List= -> List
Discovers remote services by looking up the given service-uuids on the remote device.
close --force/bool= -> none
Disconnects from the remote device.
mtu -> int
operator == other/any -> bool
Whether this object is equal to the other.
stringify -> string
Stringifies this object.
is-closed -> bool

Methods

address -> any
The address of the remote device the client is connected to.
The type of the address is platform dependent.
Deprecated. Use identifier instead.

close --force/bool=false -> none
Disconnects from the remote device.
If force is true, the connection is closed immediately. Otherwise, the method waits until the remote device has acknowledged the disconnection.

discover-services service-uuids/List=[] -> List
Discovers remote services by looking up the given service-uuids on the remote device.
If service-uuids is empty all services for the device are discovered.
This method adds all discovered services to the list of discovered services of the device, regardless of whether a service with the same UUID already exists in the list.
Note: Some platforms, like the ESP32, only support an empty list (the default) or a list of size 1. If the platform is limited, this method throws for lists with more than one element.

The list of discovered services on the remote device.
Call discover-services to populate this list.

mtu -> int

operator == other/any -> bool
Whether this object is equal to the other.
By default, identical is used for equality.
Inheritance
Classes overwrite this operator to get an equality specific to their needs. Equality operators often compare the type and field contents. For example:

class Pin:
  number/int

  constructor .number:

  operator == other:
    if other is not Pin: return false
    return number == other.number
A class doesn't have to follow the above format, but it must keep the operator in sync with any hash-code method. That is, if a class has a hash-code member, then the equality and hash-code must agree. If two instances are equal (a == b), then their hash codes must also be equal (a.hash-code == b.hash-code).

Stringifies this object.
Inheritance
Objects that need a human-friendly string representation should overwrite this method. The default string is based on the internal class-ID.

Fields

The identifier of the remote device the client is connected to.
The type of the identifier is platform dependent.

The manager that is responsible for the connection.