Implementing a new frequency plan in TTN

Hi,

I’m implementing support for RU_864_870 LoRaWAN frequency plan for Russia into TTN v2 stack.
From what I see in the code, my understanding is that I need to add it to FrequencyPlan enum at https://github.com/TheThingsNetwork/api/blob/master/protocol/lorawan/lorawan.proto and then add frequency configuration to https://github.com/TheThingsNetwork/ttn/blob/develop/core/band/band.go (and tests for it).
Also I see that I have to reimplement this frequency plan in @brocaar library used in TTN v2 stack, because it is checked in into ttn code and it is an old version with wrong RU_864_869 plan, which is not really a problem and seems to be easier then migrating ttn to latest lorawan library.
Am I right or did I miss something?
I also thought there should be gateway configurations/templates somewhere (at least for TTN gateway) to support new frequency plan, but I was not able to find it anywhere.
I’ve already submitted pull request for api (https://github.com/TheThingsNetwork/api/pull/27) and I’m ready to submit a pull request to ttn which does everything I described above after api pr is merged.
@htdvisser , can you please clarify if this is enough to add new frequency plan to TTN?

Best regards,
Victor Belov

With our v2 backend, implementing support for new bands or channel plans is indeed a bit complicated, and we hope to improve that with our upcoming v3 stack.

Implementing support for a new band or channel plan in our v2 backend would work as follows:

With our v2 stack, every channel plan requires its own deployment of the UDP bridge, as UDP gateways can’t communicate their frequency plan with the network server. This means that we’d also need to deploy a dedicated bridge for each added channel plan. Please discuss with the core team about the procedure for this.

Great, thanks! So I’m on the right route.
Waiting for api pull request merge then!

Would you please elaborate on which communication channel should be used to discuss that?

Once the steps above are done, please DM on Slack to @johan @htdvisser