Adder Devices
Adderlink devices can be queried and manipulated by an active Adderlink API session logged in with a valid user. See Connections and Users for details on how to establish a connection.
Transmitters
In adderlib, an Adderlink transmitter is represented by adderlib.devices.AdderTransmitter.
AdderTransmitter inherits from base class adderlib.devices.AdderDevice, which exposes
more useful properties to be aware of.
Getting Transmitters
A list of transmitters available to the user can be retrieved with adderlib.adder.AdderAPI.getTransmitters().
for tx in api.getTransmitters():
print(tx.id, tx.name)
If the ID for a transmitter is known, it can be provided as an argument and that transmitter will be the only result:
try:
tx = next(api.getTransmitters(23))
except StopIteration:
print("No transmitter found with ID 23", sys.stderr)
Note
getTransmitters() always returns a Generator of AdderTransmitter objects.
Modifying Transmitters
A transmitter’s description and location information can be modified using adderlib.adder.AdderAPI.setDeviceInfo() by
passing the relevant AdderTransmitter object, and description and/or location strings as named
arguments.
for idx, tx in enumerate(api.getTransmitters()):
api.setDeviceInfo(
tx,
location="Bathroom",
description=f"Transmitter from Toilet Maintanence Interface {idx+1}"
)
If either description or location arguments are omitted, the existing information for that argument will remain
the same. Pass an empty string to truly clear it out.
Receivers
In adderlib, an Adderlink receiver is represented by adderlib.devices.AdderReceiver.
AdderReceiver inherits from base class adderlib.devices.AdderDevice, which exposes
more useful properties to be aware of.
Getting Receivers
A list of receivers available to the user can be retrieved with adderlib.adder.AdderAPI.getReceivers().
for rx in api.getReceivers():
print(rx.id, rx.name)
If the ID for a receiver is known, it can be provided as an argument and that receiver will be the only result:
try:
rx = next(api.getReceiver(42))
except StopIteration:
print("No receiver found with ID 42", sys.stderr)
Note
getReceivers() always returns a Generator of AdderReceiver objects.
Modifying Receivers
A receiver’s description and location information can be modified using adderlib.adder.AdderAPI.setDeviceInfo() by
passing the relevant AdderReceiver object, and description and/or location strings as named
arguments.
for idx, rx in enumerate(api.getReceivers()):
api.setDeviceInfo(
rx,
location="Break Room",
description=f"Receiver {idx+1} for lunch work"
)
If either description or location arguments are omitted, the existing information for that argument will remain
the same. Pass an empty string to truly clear it out.
AIM Servers
In adderlib, an AIM server is represented by adderlib.devices.AdderServer.
Getting Servers
A list of servers available to the user can be retrieved with adderlib.adder.AdderAPI.getServers().
for srv in api.getServers():
print(srv.name, srv.role)
Note
getServers() always returns a Generator of AdderServer objects.
Note
Unlike AdderTransmitter or AdderReceiver, AdderServer
does not inherit from the base class AdderDevice, so many common attributes like id are not available.
Next Steps
Now that we know how to work with Adder devices, we can use them to create and connect to Channels and Presets.