pyniryo-nate
Installation
pyniryo-nate is distributed as a universal wheel and supports Python 3.10+.
$ pip install pyniryo-nate
Usage
pyniryo-nate is the Python client of the Niryo Nate robot API. The full documentation is available at https://pyniryo-nate.docs.niryo.com.
from pyniryo_nate import Nate
from pyniryo_nate.models import Joints
# Initialize with hostname and credentials
nate = Nate(hostname="10.10.10.10", login=("user", "secret"))
# Or use environment variables
nate = Nate()
# Move the robot. The key selector must be on manual, see the Direct control page of
# the documentation.
nate.robot.move(Joints(0, 0, 0, 0, 0, 0)).wait()
Constructor Arguments
The Nate class constructor accepts the following parameters:
hostname (str): The hostname or IP address of the Nate API. If empty, it will use the NATE_HOSTNAME environment variable, defaulting to 'localhost' if not set.
login (tuple[str, str]): A tuple containing (username, password) for authentication. If empty, it will use the NATE_USERNAME and NATE_PASSWORD environment variables. A program run by the robot needs none.
device_id (str): The identifier of the robot expected at hostname. If empty, it will use the NATE_DEVICE_ID environment variable; if that is not set either, the first robot reached binds the client.
The Connecting page of the documentation covers the two ways to connect, from a remote host and as a program run by the robot.
Environment Variables
The following environment variables can be used to configure the Nate client:
Authentication:
NATE_HOSTNAME - The hostname or IP address of the Nate API (default: 'localhost')
NATE_USERNAME - Username for login authentication
NATE_PASSWORD - Password for login authentication
Advanced Options:
NATE_HTTP_PORT - HTTPS port of the API (default: 8443)
NATE_MQTT_PORT - MQTTS port of the broker (default: 8883)
NATE_CA_FILE - A PEM file holding extra root certificates to trust, on top of the root shipped with the package
NATE_DEVICE_ID - The identifier of the expected robot; another robot at that address is refused before any credential is sent
Connection security
Every connection to the robot is encrypted, over HTTPS and MQTTS, and the Niryo root ships with the package, so no setup is needed to trust a Niryo robot. A robot presenting a certificate from any other authority is refused with a pyniryo_nate.exceptions.TlsError. Pass the expected robot as Nate(hostname, login, device_id=...) or NATE_DEVICE_ID to refuse any other device at that address, and point NATE_CA_FILE at a PEM file to trust extra roots.
License
pyniryo-nate is distributed under the terms of GNU General Public License v3.0
Metadata
Release files for pyniryo-nate 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| pyniryo_nate-1.0.1.tar.gz | 92.3 kB | Without provenance | Details for pyniryo_nate-1.0.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| pyniryo_nate-1.0.1-py3-none-any.whl | Python 3 | none | any | Details for pyniryo_nate-1.0.1-py3-none-any.whl |
Total release size: 202.5 kB
Release files / pyniryo_nate-1.0.1.tar.gz
| Download URL | pyniryo_nate-1.0.1.tar.gz |
|---|---|
| Size | 92.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9e62a3c86217cda18c82e44836289624362ccafd2b1f3da12058c8fc833e1429
|
|
BLAKE2b-256 checksum How to use checksums |
64196ab47cfe3f4430b26aa7303ce75c64883a420b55adb143609d2eefd8c16c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.16
|
Release files / pyniryo_nate-1.0.1-py3-none-any.whl
| Download URL | pyniryo_nate-1.0.1-py3-none-any.whl |
|---|---|
| Size | 110.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bfcc63ca483b0c8b19f4dd8a4c9566b179d54b18dba62d8123c9c78faf686819
|
|
BLAKE2b-256 checksum How to use checksums |
110182aa577581cf20a46dbd2a977da5221a0460e7075e05f9f5e561b8feebf0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.16
|
Security for pyniryo-nate 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.