I am currently connecting to Wanesy Management Center.
Every device provides me data with a payload.
I can access data such as:
device EUI A81758FFFE0463D4
device addr 021C4EC6
application EUI 0000000000000000
application key BB408BA747D12C4EC8ABA547990D911B
DevNonceCounter Disabled
I have this data uplink:
Status Plain
Payload type BASE64
Payload AQDRAjkEAAAFAAcN9xVAIg==
Here is what I tried so far:
payload = bytearray(b64decode("AQDRAjkEAAAFAAcN9xVAIg=="))
I got this:
bytearray(b'\x01\x00\xd1\x029\x04\x00\x00\x05\x00\x07\r\xf7\x15@"')
Now I don't know what my next step is.
You shouldn't have to decode the payload. I don't use Kerlink, but for instance on TTN, or in Chirpstack, the application server decodes it for you and passes it on to whatever broker you have set up – HTTP: integration, Datacake, etc. These servers have payload formatters that decode the payload and can format it from simply passing the bytes, to decoding a Cayenne stream, or else.
Note that you payload above, "AQDRAjkEAAAFAAcN9xVAIg=="
, is indeed Base64 encode. But it is not what your end node sent – not directly: the data is AES-128 encoded with your ApplicationKey
and your DevEUI
. So unless you are comfortable with AES, and the LoRaWAN security protocol, you can't access the data from the payload. Instead, you must add an integration protocol that will pass on the decode message (and much more).