aiocoap.defaults module¶
This module contains helpers that inspect available modules and platform specifics to give sane values to aiocoap defaults.
All of this should eventually overridable by other libraries wrapping/using aiocoap and by applications using aiocoap; however, these overrides do not happen in the defaults module but where these values are actually accessed, so this module is considered internal to aiocoap and not part of the API.
The _missing_modules
functions are helpers for inspecting what is
reasonable to expect to work. They can influence default values, but should not
be used in the rest of the code for feature checking (just raise the
ImportErrors) unless it’s directly user-visible (“You configured OSCORE key
material, but OSCORE needs the following unavailable modules”) or in the test
suite to decide which tests to skip.
-
aiocoap.defaults.
get_default_clienttransports
(*, loop=None, use_env=True)¶ Return a list of transports that should be connected when a client context is created.
If an explicit
AIOCOAP_CLIENT_TRANSPORT
environment variable is set, it is read as a colon separated list of transport names.By default, a DTLS mechanism will be picked if the required modules are available, and a UDP transport will be selected depending on whether the full udp6 transport is known to work.
-
aiocoap.defaults.
get_default_servertransports
(*, loop=None, use_env=True)¶ Return a list of transports that should be connected when a server context is created.
If an explicit
AIOCOAP_SERVER_TRANSPORT
environment variable is set, it is read as a colon separated list of transport names.By default, a DTLS mechanism will be picked if the required modules are available, and a UDP transport will be selected depending on whether the full udp6 transport is known to work. Both a simple6 and a simplesocketserver will be selected when udp6 is not available, and the simple6 will be used for any outgoing requests, which the simplesocketserver could serve but is worse at.
-
aiocoap.defaults.
has_reuse_port
(*, use_env=True)¶ Return true if the platform indicates support for SO_REUSEPORT.
Can be overridden by explicitly setting
AIOCOAP_REUSE_PORT
to 1 or 0.
-
aiocoap.defaults.
dtls_missing_modules
()¶ Return a list of modules that are missing in order to use the DTLS transport, or a false value if everything is present
-
aiocoap.defaults.
oscore_missing_modules
()¶ Return a list of modules that are missing in order to use OSCORE, or a false value if everything is present
-
aiocoap.defaults.
ws_missing_modules
()¶ Return a list of modules that are missing in order to user CoAP-over-WS, or a false value if everything is present
-
aiocoap.defaults.
linkheader_missing_modules
()¶ Return a list of moudles that are missing in order to use link_header functionaity (eg. running a resource directory), of a false value if everything is present.
-
aiocoap.defaults.
prettyprint_missing_modules
()¶ Return a list of modules that are missing in order to use pretty printing (ie. full aiocoap-client)