No description
Find a file
2023-04-17 11:31:48 +02:00
bbfdmd Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
docs Fix boolean doc variables 2023-04-16 16:34:11 +05:30
gitlab-ci Update pipeline log path 2023-04-15 21:48:47 +05:30
libbbf_api Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
libbbf_dm Fix boolean doc variables 2023-04-16 16:34:11 +05:30
schemas Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
test Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
tools Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
.gitignore Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
.gitlab-ci.yml Update pipeline log path 2023-04-15 21:48:47 +05:30
CMakeLists.txt Add bbfdm daemon(bbfdmd) 2023-04-14 10:05:08 +00:00
Doxyfile Added main page in doxygen 2021-12-21 14:02:33 +05:30
LICENSE LICENSE: change license to BSD 3-Clause 2023-04-17 11:31:48 +02:00
mkdocs.yml Align doc structure 2023-04-14 18:09:30 +05:30
README.md Delete unused repos/files 2023-03-28 17:44:23 +02:00

BroadBand Forum Data Models (BBFDM)

bbfdm is a data model library implementation which includes a list of objects, parameters and operates used for CPE management through remote control protocols such as TR-069/CWMP or TR-369/USP. This package comprises of the below libraries:

Library Description
libbbf_dm This provides the mechanism to add new parameters or extend the existing DM tree using json plugin or shared library plugin.
libbbf_api This provides the APIs for UCI, Ubus, JSON, CLI and memory management.

Design of bbfdm

bbfdm library is structred as follow :

├── dm...(.c and .h)
├── dmtree
│   ├── json
│   ├── tr104
│   ├── tr143
│   ├── tr181
│   └── vendor
│       ├── iopsys
│       └── vendor.h
├── libbbf_api
├── scripts
└── tools
  • dmtree folder which includes all supported Data Models. It contains 5 folders:

    • tr181 folder : TR-181 Data Model files

    • tr104 folder : Voice Services Data Model files

    • tr143 folder : Diagnostics Data Model files

    • vendor folder : Vendor Data Model files

    • json folder : TR-181 and TR-104 JSON files

  • libbbf_api folder which contains the source code of all API functions (UCI, Ubus, JSON, CLI and memory management). These API are used for GET/SET/ADD/Delete/Operate calls which can be called in internal or external packages. All APIs exposed by libbbf_api are presented in this header file libbbf_api.h.

  • scripts folder which contains the Diagnostics scripts

  • tools folder which contains some tools to generate Data Model in C, JSON, XML and Excel format

  • dm...(.c and .h) files which contains the bbfdm engine (operate, diagnostics) functions

Important Topics

External dependencies for datamodel objects

Datamodel Package Link
Device.BulkData. bulkdata https://dev.iopsys.eu/iopsys/bulkdata.git
Device.CWMPManagementServer. icwmp https://dev.iopsys.eu/iopsys/icwmp.git
Device.IP.Diagnostics.UDPEchoConfig. udpecho-server https://dev.iopsys.eu/iopsys/udpecho.git
Device.IP.Diagnostics.UDPEchoDiagnostics. udpecho-client https://dev.iopsys.eu/iopsys/udpecho.git
Device.IP.Interface.{i}.TWAMPReflector. twamp https://dev.iopsys.eu/iopsys/twamp-light.git
Device.UPNP. ssdpd https://github.com/miniupnp/miniupnp.git
Device.XMPP. xmppc https://dev.iopsys.eu/iopsys/xmppc.git
Device.XPON. ponmngr https://dev.iopsys.eu/iopsys/ponmngr.git
Device.USPAgent. obuspa https://dev.iopsys.eu/fork/obuspa.git
STUN parameters stunc https://dev.iopsys.eu/iopsys/stunc.git