InOrbit Python Edge SDK
Project description
InOrbit Python Edge SDK
The InOrbit Edge SDK
allows Python programs to communicate with InOrbit
platform on behalf of robots - providing robot data and handling robot actions. It's goal is to ease the integration between InOrbit
and any other software that handles robot data.
Features
- Robot session handling through a
RobotSessionPool
. - Publish key-values.
- Publish robot poses.
- Publish robot odometry.
- Execute callbacks on Custom Action execution.
Quick Start
from inorbit_edge.robot import RobotSessionFactory, RobotSessionPool
def my_custom_command_handler(robot_session, message):
"""Callback for custom actions.
Callback method executed for messages published on the ``custom_command``
topic. It recieves the RobotSession object and the message that contains
the ``cmd`` and ``ts`` fields.
Args:
robot_session (RobotSession): RobotSession object
message (dict): Message with the ``cmd`` string as defined
on InOrbit Custom Defined action and ``ts``.
"""
print(
"Robot '{}' received command '{}'".format(
robot_session.robot_id, message["cmd"]
)
)
robot_session_factory = RobotSessionFactory(
api_key="<YOUR_API_KEY>",
custom_command_callback=my_custom_command_handler
)
robot_session_pool = RobotSessionPool(robot_session_factory)
robot_session = robot_session_pool.get_session(
robot_id="my_robot_id_123", robot_name="Python SDK Quick Start Robot"
)
robot_session.publish_pose(x=0.0, y=0.0, yaw=0.0)
Installation
Stable Release: pip install inorbit-edge
Development Head: pip install git+https://github.com/inorbit-ai/edge-sdk-python.git
Documentation
For full package documentation please visit InOrbit Developer Portal.
Development
See CONTRIBUTING.md for information related to developing the code.
The Three Commands You Need To Know
-
pip install -e .[dev]
This will install your package in editable mode with all the required development dependencies (i.e.
tox
). -
make build
This will run
tox
which will run all your tests in both Python 3.7 and Python 3.8 as well as linting your code. -
make clean
This will clean up various Python and build generated files so that you can ensure that you are working in a clean environment.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for inorbit_edge-0.2.0-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 81d78d9402baa8f663036ef9e8224f75d23dafab5f8a2d4ab2a0a131e659e1a1 |
|
MD5 | cdc03b16983149468b383c36c78c5784 |
|
BLAKE2b-256 | 4b3d987c59b307970480fac98aeae3298f052574e422306c1e277a79f7208cbd |