How to configure/get status of external modem/wifi via ethernet

Hi OpenWRT expert, 

We have system below.
                   +------------------------------------------------------+
                   |   Component 1                     Component 2        |
                   |                        +----------------------------+|
  +------+         | +-----------+          | +---------+    +---------+ ||
  |      |         | |           |          | |  Linux  |    |  Wifi   | ||
  | PC   |         | |  OpenWRT  |          | |         |----|         | ||
  |      | Ethernet| |           | Ethernet | |         |    +---------+ ||
  |      +---------|-|           +----------|-|         |    +---------+ ||
  | LuCI |         | |           |          | |         |----|  Modem  | ||
  |      |         | |           |          | |         |    |         | ||
  +------+         | +-----------+          | +---------+    +---------+ ||
                   |                        +----------------------------+|
                   +------------------------------------------------------+
  • Current status
    Componet1 and Componet2 both works fine.
    Component1(OpenWRT) can access to the internet via modem or wifi on Component2.
    (by setting iptable, routing table, etc appropriately) as expected.
    We have source code of both Component 1 and Component 2.

  • Goal
    We want to configure and get status of Wifi and
    Modem on Component 2 via UCI/LuCI interface.

  • Question

    Is this something we can achieve with current architecture of OpenWRT ?
    If yes, what is the best approach to achieve this ?

    I started deep divining into netifd, and one idea is to add new custom
    protocol of netifd. Where, the protocol script is to setup modem and wifi
    according to the UCI setting by communicating with linux on Component2.
    But I have no confidence if this is the correct way.

    Could someone please comment on if you are in the my situation, how do you
    achieve this goal ?
    Is there any better way to achieve this ?
    Any comment/feedback is really appreciated.

John