Deprecated: Minimum Viable Product for open ERZNET

Re-discuss this topic in a new meeting. We have done some kind of temporary solution


TOP prio for Patrick Reichel – Minimum means: the smallest possible solution to address the topic to let the customer create it's own contracts while connecting a fresh modem on the CMTS. Goal should be to have a basic demo running in March.

Work flow goes like

Unregistered CMs + CPEs

Customer A buys Cable Modem. Connects CM to our system (CMTS + NMS Prime) – without prior registration in NMS Prime.

  • Afterwards the CM gets online in a new unregistered pool.
  • Afterwards the CPE get a IP in a private unregistered pool – default route should be NMS Prime Server. The pool will only have access to NMS Prime Server

Landing Page

Contract create – /nmsprime/otc/Contract/create

A simple create page which allows the Customer to setup there contract page

Notice that we need to setup only Name and address for the customer for now (we are talking about free internet access – SEPA will be a later step)


Notice that we are working on a separate DB called nmsprime_otc – for this and further purpose checkout: https://github.com/schmto/nmsprime/tree/feature/otc-start Branch.

I guess its best advice to read through all my commits on this branch and skip the latest ones, where i'm connecting OTC with CCC. This is not required now and brings some risks! So just re-branch some commits before.

For now we are only looking for a otc/contract/create page! Nothing more! Nothing fancy! Style is not important for now!

  • Customer can create his own contract


Parse Modem

Create some kind of php function or command which will

  • parse client (private NAT)  IP like

    $_SERVER['REMOTE_ADDR'] or $_SERVER['CLIENT_IP_ADDRESS'] or ...
  • and parse in dhcpd lease file the "option agent.remote-id", which is the CM MAC of the client who is adding the contract


Straight fast forward Adding

For a first MVP just provide a artisan or native php function, which will. Maybe this could run in observer after otc/contract/create

  • check if new Modem MAC is not forgiven now – otherwise show error
  • Create the new Contract in NMS Prime DB (maybe add some kind of special flag in DB to easily parse OTC added contracts later)
  • Create the modem behind new Contract
  • Add a Item with open ERZNET tarif (1M free)
  • show success message to user and advice to restart modem and PC.
  • wait 10s and call forced reboot of modem

Note on Workflow:

ERZNET will daily walk through the new openERZNET auto added contracts and delete non-sense Contracts. We will see how long this will work!

Testing VM

For testing you could use my new VM on devlx12-real with nms prime demo system real host which i setup for our youtube channel. This should already work with CMTS connect in server room.