Protobuf Python modules for machinetalk
Project description
machinetalk-protobuf
Protobuf declarations for machinekit messages
This repo is integrated into github.com/machinekit/machinekit as a git subtree.
To change/add to message definitions:
- send a PR against this repo
- add a new remote in your machinekit repo referring to here
- update the subtree in your machinekit repo like so
git remote add machinetalk-protobuf git://github.com/machinekit/machinetalk-protobuf.git
git fetch machinetalk-protobuf
git subtree merge --prefix=src/machinetalk/proto machinetalk-protobuf/master --squash
Now create a PR against the machinekit repo.
Python
Installation via PyPi
To use the Machinetalk protobuf Python modules in your projects, use:
pip install machinetalk-protobuf
Installation from source
Alternatively you can install the Python modules directly from the source code.
make
python setup.py build
sudo python setup.py install
Usage
See examples.
JavaScript (NPM/NodeJS)
Installation
To use machinetalk protobuf definitions in your npm-based projects, use:
npm install --save machinetalk-protobuf
Usage
See examples. If you want to try these examples, be sure to first run npm install
in this repository.
Encoding
var machinetalkProtobuf = require('machinetalk-protobuf');
var messageContainer = {
type: machinetalkProtobuf.message.ContainerType.MT_PING
};
var encodedMessageContainer = machinetalkProtobuf.message.Container.encode(messageContainer);
This results in a buffer that starts with 0x08 0xd2 0x01
.
Decoding
var machinetalkProtobuf = require('machinetalk-protobuf');
var encodedBuffer = new Buffer([0x08, 0xd2, 0x01]);
var decodedMessageContainer = machinetalkProtobuf.message.Container.decode(encodedBuffer);
This results in a messageContainer like the one defined in Encoding.
JavaScript (Browser)
CDN usage
<script src="//cdn.rawgit.com/machinekit/machinetalk-protobuf/VERSION/dist/machinetalk-protobuf.js"></script>
With VERSION
replaced by a valid tag or just master
for testing
the latest master build.
Encoding
var messageContainer = {
type: machinetalk.protobuf.message.ContainerType.MT_PING
};
var encodedMessageContainer = machinetalk.protobuf.message.Container.encode(messageContainer);
This results in a buffer that starts with 0x08 0xd2 0x01
.
Decoding
var encodedBuffer = new ArrayBuffer([0x08, 0xd2, 0x01]);
var decodedMessageContainer = machinetalk.protobuf.message.Container.decode(encodedBuffer);
This results in a messageContainer like the one defined in Encoding.
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 machinetalk-protobuf-1.2.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 725d7deb7f83b19106f261128766967fe2f5ff774516c0b6085b65b53e51d066 |
|
MD5 | e060a17558f0382af4e8578e77bb3d99 |
|
BLAKE2b-256 | 34f7af843d42d2376b9366dad291849e27d4c07c10c54ad02c6358dfa9a20bc2 |
Hashes for machinetalk_protobuf-1.2.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8c0e7fd8cde4f1e41b60336aef05478d7c691302efa20acef8174d391cee7685 |
|
MD5 | 256a5713171209aa3ca1ba398c8e5735 |
|
BLAKE2b-256 | 4db820eb6614bb9c3c08b38be50efd82248c874e2f427ed759b2fc78b413cb2e |