Integrate JoinServer API using gRPC

Hi,

I’m currently working on implementing our own Application Server in Python using gRPC as specified here: docs.loraserver.io/loraserver/integrate/api/

I’m a bit stuck on how the join server works now. In the as.proto file there is a JoinRequestRequest message but no JoinRequest method and I can’t find any js.proto file.
I dont really know GO, but it seems that you implemented that function here https://github.com/brocaar/lora-app-server/blob/master/internal/api/application_server.go#L33 and start it here https://github.com/brocaar/lora-app-server/blob/master/cmd/lora-app-server/main.go#L239 as a simple HTTP server. The loraserver then POST’s a simple JSON to this server.

Is this correct? In that case I just need to provide a HTTP endpoint from python? Can I specify something like ‘localhost:8000/api/join-server’? Why is this not done the same way as the AS using gRPC?

Thanks for your help!

The JoinRequestRequest and Response will be removed in the future version. I forgot to clean them up and they are unused. Note that the join-server protocol is now defined by the LoRaWAN Backend Interfaces specification: https://www.lora-alliance.org/lorawan-for-developers

Basically it defines a JSON (REST-ish) interface over HTTP. Therefore there won’t be any js.proto file. However I do provide structs for Go for these payloads: