Astarte message hub protocol buffers for Python
Project description
Astarte message hub protocol buffers for Python
This module provides access to the Astarte message hub protocol buffers through a Python API.
Basic usage
Use pip
to install the astarte-message-hub-proto
package.
Then include and use it in your sources as follows:
from datetime import datetime, timezone
import grpc
from google.protobuf.timestamp_pb2 import Timestamp
from astarteplatform.msghub.message_hub_service_pb2_grpc import MessageHubStub
from astarteplatform.msghub.node_pb2 import Node
from astarteplatform.msghub.astarte_message_pb2 import AstarteMessage
from astarteplatform.msghub.astarte_type_pb2 import AstarteDataType, AstarteDataTypeIndividual
grpc_channel = grpc.insecure_channel("server address")
message_hub_stub = MessageHubStub(grpc_channel)
message_hub_node = Node(uuid="node uuid", interface_jsons=[b"interface 1 bin", b"interface 2 bin"])
message_hub_stream = message_hub_stub.Attach(message_hub_node)
# Transmit a very simple message
protobuf_value = AstarteDataType(astarte_individual=AstarteDataTypeIndividual(astarte_double=42.1))
protobuf_timestamp = Timestamp()
protobuf_timestamp.FromDatetime(datetime.now(tz=timezone.utc))
msg = AstarteMessage(
'interface_name'="interface name",
'path'="path",
'timestamp'=protobuf_timestamp,
'astarte_data'=protobuf_value)
message_hub_stub.Send(msg)
# Never ending receive loop
for astarte_message in message_hub_stream:
# Parse astarte_message (AstarteMessage) as you see fit.
print(astarte_message.interface_name)
print(astarte_message.path)
print(astarte_message.WhichOneof("payload"))
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
Built Distribution
Close
Hashes for astarte_message_hub_proto-0.6.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 82cb61367eb3b3e57037f75f284fc8760b99727acb6752ce90efef6ebdfd081a |
|
MD5 | df3479e6c4310c3b81bde5deeaea567e |
|
BLAKE2b-256 | 070d3d034cfa3c1919224e6054b1cdf79721188f58346c2d832b049e1d9c2bca |
Close
Hashes for astarte_message_hub_proto-0.6.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0f5a2f63d44fb66fb670b4579d12d897fb6229a2e1c05ca8b093ba42bb5e6245 |
|
MD5 | 5b9079e7db4a0c80e089858c8a17b0de |
|
BLAKE2b-256 | 297a84e6fa4db43451cc3f8d80c44cfd32104d25880bc0dd44a97b9ed7fee7e1 |