There is a list of commands to interact with NETWORKS:

JSON-RPC Request - NET LIST

Lists all active networks, or chains if net parameter was specified

 

CLI Example

Command syntax:

net list 
[chains -net <chain net name>]

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list (optional)

Example:

Command:

cellframe-node-cli net list

Response:

networks:
 
KelVPN, Backbone

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;list"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "networks": [
        "KelVPN",
        "Backbone"
      ]
    }
  ],
  "errors": null,
  "id": 1
}
Link to original

 

JSON-RPC Request - NET GO

Changes current network operational state: [online|offline] or forces it to start a syncronization process

CLI Example

Command syntax:

net go {online | offline | sync}
-net <chain net name> 
[-mode {update | all}]  
 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list 
-mode - "update" (by default if only new chains and databases are updated) or "all" (updates everithing from zero) (optional)
go {online|offline|sync} - turns on connections\ turns off connections\ synchronization only

Example:

Command:

cellframe-node-cli net go sync
-net foobar

Response:

net: foobar
 
        current: NET_STATE_ONLINE
 
        start: resynchronizing

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;go;sync;-net;foobar"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "net": "foobar",
      "current": "NET_STATE_ONLINE",
      "start": "resynchronizing"
    }
  ],
  "errors": null,
  "id": 1
}
Link to original

JSON-RPC Request - NET GET

Displays the current status, current fee or net ID

CLI Example

Command syntax:

net get {status | fee | id}
-net <chain_net_name> 
 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list 
-{status|fee|id} - get status\ get fee\ get ID

Example:

Command:

cellframe-node-cli net get status 
-net foobar 

Response:

        status:
            net: foobar
            current_addr: ABCD::0000::0000::0000
            links:
                active: 1
                total: 1
            sync_status:
                sync_datums: 20
                total_datums: 20
                percent: 100.000
            states:
                current: NET_STATE_ONLINE
                target: NET_STATE_ONLINE

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;get;status;-net;foobar"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "status": {
        "net": "foobar",
        "current_addr": "ABCD::0000::0000::0000",
        "links": {
          "active": 1,
          "total": 1
        },
        "sync_status": {
          "sync_datums": 20,
          "total_datums": 20,
          "percent": "100.000"
        },
        "states": {
          "current": "NET_STATE_ONLINE",
          "target": "NET_STATE_ONLINE"
        }
      }
    }
  ],
  "errors": null,
  "id": 1
}
Link to original

JSON-RPC Request - NET STATS TX

Transactions statistics. Time format is <Year>-<Month>-<Day>_<Hours>:<Minutes>:<seconds> or just <seconds>

CLI Example

Command syntax:

net stats tx 
-net <chain_net_name>  
[-from <from_time>] [-to <to_time>] 
[-prev_day <days>]

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
***
-from,-to - time frame needed (optional)
-prev_day - shows tx statistics only for specified previous days (optional)

Example:

Command:

cellframe-node-cli net stats tx
-net Backbone  
-from 2023-01-01_00:00 
-to 2024-01-01_00:00

Response:

        transaction_statistics:
            from: 2023-01-01_00:00
            to: 2024-01-01_00:00
            transaction_per_day: 69.214
            total: 25263

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;-net;Backbone;stats;tx;-from;2023-01-01_00:00;-to;2024-01-01_00:00"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "transaction_statistics": {
        "from": "2023-01-01_00:00",
        "to": "2024-01-01_00:00",
        "transaction_per_day": "69.214",
        "total": 25263
      }
    }
  ],
  "errors": null,
  "id": 1
}
Link to original

JSON-RPC Request - NET SYNC

Syncronyzes GDB, chains or everything

CLI Example

Command syntax:

net sync {all | gdb | chains}
-net <chain_net_name> 
[-mode {update | all}]  
 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
-mode - "update" (by default if only new chains and databases are updated) or "all" (updates everithing from zero) (optional)
sync {all|gdb|chains} - syncronizes all\ only GDB\ only chains

Example:

Command:

cellframe-node-cli net sync chains
-net foobar 

Response:

        state_machine:
            current: NET_STATE_ONLINE
            requested: SYNC_CHAINS

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;sync;chains-net;foobar"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "state_machine": {
        "current": "NET_STATE_LINKS_CONNECTING",
        "requested": "SYNC_CHAINS"
      }
    }
  ],
  "errors": null,
  "id": 1
}
Link to original

JSON-RPC Request - NET LEDGER RELOAD

Purges the cache of chain net ledger and recalculates it from chain file

CLI Example

Command syntax:

net ledger reload 
-net <chain_net_name> 

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
 

Example:

Command:

cellframe-node-cli net ledger reload
-net foobar 

Response:

"None"

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;-net;foobar;ledger;reload"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {}
  ],
  "errors": null,
  "id": 1
}
Link to original

JSON-RPC Request - NET POA_CERTS LIST

Lists PoA cerificates for this network

CLI Example

Command syntax:

net  poa_certs list
-net <chain_net_name>

Options:

-net - name of the Cellframe Network. The list of networks can be found in the <Config_dir> \ etc \ network folder or received by The Cellframe-Node-CLI using command - net list
 

Example:

Command:

cellframe-node-cli net -net foobar poa_certs list

Response:

 poa_certs:
 
0x51EF21BDA4A45B537B8D41CED7F8F9A05B218EC62C1C4DCCADE356174E218490

JSON-RPC Example

Command:

curl --unix-socket /opt/cellframe-node/var/run/node_cli 
-X POST http://localhost/connect 
-d '{"method":"net", "params":["net;-net;foobar;poa_certs;list"], "id":"1"}'

Response:

{
  "type": 2,
  "result": [
    {
      "poa_certs": [
        "0x51EF21BDA4A45B537B8D41CED7F8F9A05B218EC62C1C4DCCADE356174E218490"
      ]
    }
  ],
  "errors": null,
  "id": 1
}
Link to original