INPROGRESS
Prerequisite
Emulator manager and Virtual remote has been developed and tested on below environment
Visual Studio Code is a source-code editor made by Microsoft for Windows, Linux and macOS.
Electron (formerly known as Atom Shell) is a free and open-source software framework developed and maintained by GitHub. It allows for the development of desktop GUI applications using web technologies: it combines the Chromium rendering engine and the Node. js runtime.
- Google Chrome: Version 96.0.4664.93 (Official Build) (64-bit)
Google Chrome is a cross-platform web browser developed by Google.
Node.js is an open-source, cross-platform, back-end JavaScript runtime environment that runs on the V8 engine and executes JavaScript code outside a web browser.
- V8: 9.1.269.39-electron.0
V8 is Google's open source high-performance JavaScript and WebAssembly engine, written in C++. It is used in Chrome and in Node.js, among others.
- OS: Linux x64 5.11.0-41-generic
An operating system is system software that manages computer hardware, software resources, and provides common services for computer programs.
RDKV Emulator Build Steps
Follow below steps to build rdkv emulator dunfell image along with rdk services
// TODO
Source code setup and Run application
Follow below steps to run application on host pc and create installer package
- step 1 - get the emulator src code (link will be added soon) then run below command
$ npm install
- step 2 - run below command
$ npm run start
Create installer package
Follow below steps to create installer package for linux/windows/mac
- Need to install electron-packager and electron-installer-debian globally
$ sudo npm install -g electron-packager
$ sudo npm install -g electron-installer-debian
- Run below commands to make deb file for linux intaller.
$ electron-packager . --platform linux --arch x64 --out dist --overwrite
$ electron-installer-debian --src dist/EMV-linux-x64/ --arch amd64 --config config.json
- Installer package will be created and stored inside the dist folder.
For the complete documentation on electronjs refer link: https://www.electronjs.org/.
Installation
- Installer package will be created for Emulator manager ui: emulatormanager_1.0.0_amd64.deb
- Installer package will be created for RDK remote: rdk_remote.deb (updated deb package name will be updated soon)
- Double click on installer deb package, default linux software install window will appear and progress bar will be displayed
- On successful installation user/developer will be able to launch emulator manager ui and RDK remote by selecting the RDK emulator icon and RDK remote icon from apps
- RDK remote can be launched from emulator manager > remote manager
Features
Emulator IP Address Configuration
![](/download/attachments/188517396/image2022-2-14_14-26-2.png?version=1&modificationDate=1644828963000&api=v2)
- Developer has to configure the emulator ip address, after ip configuration Developer will be able to send commands to applications running on emulator.
VM Manager
![](/download/attachments/188517396/vm_manager_install_image.png?version=1&modificationDate=1644234043000&api=v2)
- Install image: By clicking on install image button developer will get the option to provide instance name, select added image from the list ( or add image by clicking on add image button) and install image into the vm.
![](/download/attachments/188517396/vm_manager_show_os_list.png?version=1&modificationDate=1644234076000&api=v2)
- Show installed OS List: By clicking on the show installed os list button developer can see the list of installed images into the vm on show installed list tab.
- Start VM: By clicking on start vm button developer can start the vm.
- Shutdown VM: By clicking on shutdown vm button developer can power off the vm.
- Reboot VM: By clicking on reboot vm button developer can restart/reboot the vm.
- Delete VM instance: By clicking on delete vm instance developer can remove/delete the vm instance.
App Manager
![](/download/attachments/188517396/app_manager.png?version=1&modificationDate=1644234286000&api=v2)
- Set app url: Developer/developer having the option to set the application url which is running on host machine and on clicking launch button app will be launched on emulator.
- launch ResidentApp: By clicking on launch residentapp button default residentapp will be launched.
- Launch IDE: By clicking on launch ide button developer can launch the pre-configured vs code and do modification in the code after that need to run $ lng dev command and immediately changes will reflect on emulator.
![](/download/attachments/188517396/app_manager_automate_test_option.png?version=1&modificationDate=1644234371000&api=v2)
- Automate tests option: By clicking on automate tests button developer will get the option to execute the test scripts (pre-configured). On submit selected script will be executed and developer will be able to see the results on emulator.
Api Manager
![](/download/attachments/188517396/api_manager.png?version=1&modificationDate=1644234416000&api=v2)
- Validate Api: Developer can use this option to validate the plugin api's, by selecting api from dropdown and click/select api from the the list, results will be printed above. Developer can use pre-configured plugin api lists in Api manager.
Remote Manager
![](/download/attachments/188517396/remote_manager.png?version=1&modificationDate=1644234940000&api=v2)
- Launch remote: Developer can choose the remote from the available remotes listed in remote manager and on clicking use this button selected remote will be launched on window, as a separate app.
Development is in progress...
- Need to display installed os list on emulator manager launch (show installed os list tab needs to be active)
- Mouse over effect and tooltip should be added in emulator manager ui buttons
Planned Features:
- RDKV Emulator Manager UI improvisation