Data Control in ChirpStack Application Server Integration with Azure Service Bus

Dear ChirpStack Community,
We are interested in exploring the possibility of controlling the data flow from ChirpStack Application Server to Azure Service Bus. Specifically, we aim to customize the payload being sent to Azure Service Bus to include only the necessary information relevant to our application, thus reducing data usage and optimizing message size.

Current setup : Esp32 based node, Sx1302 rpi hat with chirpstack OS(full ), Network server and application server comes with Chirpstack OS. Integrated Azure service bus with chirpstack and successfully sending data to Service bus Queue.`

As we are new to ChirpStack and its integration capabilities, we would like to inquire if there are any provisions or methods to achieve this data control. We have looked into the provided examples and documentation, but we want to ensure that we are not missing any built-in features or best practices related to this aspect.

Key Points of Inquiry:

  1. Is it possible to customize the payload content before it is sent from ChirpStack Application Server to Azure Service Bus?
  2. Are there any configuration options or settings within ChirpStack that allow us to select specific fields or data to be included in the event payload sent to Azure Service Bus?
  3. If custom data control is feasible, are there any best practices or guidelines to follow while implementing this customization?

Thank you for your time and support. We greatly value the insights and knowledge shared within the ChirpStack community and look forward to receiving your guidance.
Best regards

Hi :wave:,

  1. Yes, this is the benefit of using codecs (you can code it in javascript).
  2. The codecs will help you to select fields you want to send in the payload, but as far as I know (should be confirmed by @brocaar), you can’t configure the “wrapper fields” like gateway information, etc.
  3. It really depends on your use case, but you are free to build the object you need.
1 Like

Thank you for your response.
My specific need is to have control over the metadata that gets added to the payload sent by the node. I am wondering if it is possible to manage the data being sent during each event.
@Jerome73 @brocaar

Apart from defining a payload codec (to decode the binary data to an object), it is not possible to change the payload structure. However, you could send the data in Protobuf encoding to make the payloads more compact (in terms of bytes), without loosing any of the data.

1 Like

This topic was automatically closed after 90 days. New replies are no longer allowed.