Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

machinetalk-protobuf-1.2.1.tar.gz (33.4 kB view details)

Uploaded Source

Built Distribution

machinetalk_protobuf-1.2.1-py3-none-any.whl (81.0 kB view details)

Uploaded Python 3

File details

Details for the file machinetalk-protobuf-1.2.1.tar.gz.

File metadata

  • Download URL: machinetalk-protobuf-1.2.1.tar.gz
  • Upload date:
  • Size: 33.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for machinetalk-protobuf-1.2.1.tar.gz
Algorithm Hash digest
SHA256 725d7deb7f83b19106f261128766967fe2f5ff774516c0b6085b65b53e51d066
MD5 e060a17558f0382af4e8578e77bb3d99
BLAKE2b-256 34f7af843d42d2376b9366dad291849e27d4c07c10c54ad02c6358dfa9a20bc2

See more details on using hashes here.

File details

Details for the file machinetalk_protobuf-1.2.1-py3-none-any.whl.

File metadata

  • Download URL: machinetalk_protobuf-1.2.1-py3-none-any.whl
  • Upload date:
  • Size: 81.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10

File hashes

Hashes for machinetalk_protobuf-1.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 8c0e7fd8cde4f1e41b60336aef05478d7c691302efa20acef8174d391cee7685
MD5 256a5713171209aa3ca1ba398c8e5735
BLAKE2b-256 4db820eb6614bb9c3c08b38be50efd82248c874e2f427ed759b2fc78b413cb2e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page