You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Current »

Introduction to WebUI

WebUI is a graphical user interface that is available to the connected devices. It acts as an application running on the RDK-B stack and performs the functions of a device management interface similar to TR69 & SNMP. A user can monitor and modify RDK-B feature settings/rules using WebUI. It is a client–server application, client runs in a web browser (as part of devices connected over LAN) and Lighttpd on the RDK-B stack acts as server.

The functions in WebUI are defined in C and are called from PHP using ZEND_API. PHP and the Zend Engine manage [exchange] variables internally over the D-Bus.

What is duktape

Duktape is a lightweight javascript engine (https://duktape.org/).

Alone it does not provide a web development engine. Therefore, a templating engine(called jst) and web server api is built on top of duktape.

Duktape provides an api to bind javascript to C functions.

Focus on migration

To make migration as easy as possible the style of templating and api signature will match php as closely as possible.  Many php functions and variables will be rewritten in javascript, so that changes to the exits code are minimized.

The template engine will provide the same features as php's basic templating where php code, embedded in <?php...?> tags, can be mixed with raw html.  The pages are jst pages and the script tags are <?% ... %>, which is similar to other engines like EJS and JavaServer pages.

Folder and Files

The web server code folder - duktape/www  includes/php.jst file which is javascript implementation of the php api

https://code.rdkcentral.com/r/plugins/gitiles/rdkb/components/opensource/ccsp/webui/+/rdk-next/source/Styles/xb3/jst



  • No labels