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.1.4.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0ae43f83224a385f0182e57cf7b8ee5b8e72769f2977a1c34d82da05506c0441 |
|
MD5 | 046d8934835162c78e19f010f5ef9368 |
|
BLAKE2b-256 | 72177d464b824eccdaca6b23db35cce8c6efbe7c6bd3d9313fae7532daf30c55 |
Hashes for machinetalk_protobuf-1.1.4-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ec83f1f09bd9100bf5dbe0ae9798679aaf56b4aead5d947c3ae4f2598cf4525a |
|
MD5 | 2a5c0b85c35416e7481deebdf07548f0 |
|
BLAKE2b-256 | 4dffdb8539441b5284b2680fc7532b0cfeb194a121164845b51f9db1b4926ae0 |