Introduction

XCONF Simulator helps in the automation and validation of firmware download/upgrade process and also supported with 'featureControl' and 'logUpload' functionality.

It is a web application which can be hosted in tomcat web server

XCONF Simulator Build & Deployment

Environment Setup

Install JDK

Verify the Linux system version and then download and install JDK 7

Following web page provide the details on how to install java 

How to install JAVA

Install maven

Verify the Linux system version and then download the relevant version

-           Download the maven from https://maven.apache.org/download.cgi

-          Following web page will provide the details on How to install maven on linux setup

             https://maven.apache.org/install.html

Install Tomcat

Verify the Linux system version and then download the relevant version

Following Web page will provide the details on how to install and configure tomcat

How to install Tomcat & configure

Build the Simulator

Download Source Code

User can download the source code from CMF GIT repo (https://code.rdkcentral.com/r/#/admin/projects/rdk/components/generic/xconf-simulator )

git clone https://code.rdkcentral.com/r/rdk/components/generic/xconf-simulator

Create the War

  • From command prompt change the directory to project source folder 'xconf-simulator'
  • Create the war file by running the following command:
           mvn clean
           mvn package
  • New war file (xconf-2.0.0.war) will be created in the target/ directory inside xconf-simulator directory
  • Rename the xconf-2.0.0.war to XCONFSimulator.war

Deploy the war

Following web page will provide the detail steps to deploy war file in tomcat server.

How to install WAR file in tomcat

Following web page will provide the details on the XCONF simulator features.

XConfSimulator - features


  • No labels

3 Comments

  1. Hello AKSHATHA M R 

    I followed this memo and built the XCONFSimulator.war, and try to deploy the war by two ways, by manual copy to /opt/tomcat/webapps/ folder or upload through tomcat management webpage. and the status of XCONFSimulator on Tomcat is start.

    but under the folder /opt/tomcat/webapps/XCONFSimulator/, there are only two folders as below

    # ls /opt/tomcat/webapps/XCONFSimulator/
    META-INF  WEB-INF


    Webpage of XCONFSimulator could not open.

    Do you have any idea?



  2. Hello  jianchun zhu 

    In XCONF Simulator Web UI support is not available only support Rest API service.

    Run below curl command to verify the XCONF simulator is deployed in server properly.

    curl 'http://<xconf_simulator_ip:port>/XCONFSimulator/logUploader/getSettings?estbMacAddress=B8:27:EB:AE:57:B7&model=RPI'

    Expected Output: (default settings mentioned in WEB-INF/classes/RPI.json)

    {"urn:settings:GroupName":"RPI_V3","urn:settings:CheckOnReboot":false,"urn:settings:CheckSchedule:cron":"33 5 * * *","urn:settings:CheckSchedule:DurationMinutes":180,"urn:settings:LogUploadSettings:Message":"Don't upload your logs, but check for updates on this schedule.","urn:settings:LogUploadSettings:Name":null,"urn:settings:LogUploadSettings:NumberOfDays":null,"urn:settings:LogUploadSettings:UploadRepositoryName":null,"urn:settings:LogUploadSettings:UploadOnReboot":null,"urn:settings:LogUploadSettings:UploadImmediately":false,"urn:settings:LogUploadSettings:upload":false,"urn:settings:LogUploadSettings:UploadSchedule:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:levelone:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:leveltwo:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:levelthree:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:DurationMinutes":null,"urn:settings:VODSettings:Name":null,"urn:settings:VODSettings:LocationsURL":null,"urn:settings:VODSettings:SRMIPList":null,"urn:settings:TelemetryProfile:header":"err_LSA_E_RES_TIMEOUT"}

    Following page will provide the details on the XCONF Simulator Rest API supported.

    XConfSimulator - features


  3. Hello AKSHATHA M R 

    Thank you very much for your reply.

    I got the reply when run the REST API

    curl -noproxy "*" 'http://10.66.255.32:8080/XCONFSimulator/logUploader/getSettings?estbMacAddress=B8:27:EB:AE:57:B7&model=RPI'
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100  2696  100  2696    0     0   7952      0 --:--:-- --:--:-- --:--:--  7976
    {"urn:settings:GroupName":"RPI_V3","urn:settings:CheckOnReboot":false,"urn:settings:CheckSchedule:cron":"33 5 * * *","urn:settings:CheckSchedule:DurationMinutes":180,"urn:settings:LogUploadSettings:Message":"Don't upload your logs, but check for updates on this schedule.","urn:settings:LogUploadSettings:Name":null,"urn:settings:LogUploadSettings:NumberOfDays":null,"urn:settings:LogUploadSettings:UploadRepositoryName":null,"urn:settings:LogUploadSettings:UploadOnReboot":false,"urn:settings:LogUploadSettings:UploadImmediately":false,"urn:settings:LogUploadSettings:upload":false,"urn:settings:LogUploadSettings:UploadSchedule:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:levelone:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:leveltwo:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:levelthree:cron":null,"urn:settings:LogUploadSettings:UploadSchedule:DurationMinutes":null,"urn:settings:VODSettings:Name":null,"urn:settings:VODSettings:LocationsURL":null,"urn:settings:VODSettings:SRMIPList":null,"urn:settings:TelemetryProfile":{"id":"1575d508-5082-4b41-925e-a31fb5a566a4","telemetryProfile":[{"header":"SYS_INFO_bootup","content":"Device is up after reboot","type":"Consolelog.txt.0","pollingFrequency":"0"},{"header":"SYS_INFO_Factory_reset","content":"Received reboot_reason as:factory-reset","type":"WEBPAlog.txt.0","pollingFrequency":"0"},{"header":"SYS_INFO_ip_address_recovered","content":"sysevent_set_wr: ipv4_wan_ipaddr","type":"Consolelog.txt.0","pollingFrequency":"0"},{"header":"SYS_INFO_differentSSID","content":"[RDKB_STAT_LOG] 2.4G and 5G SSIDs are different","type":"Consolelog.txt.0","pollingFrequency":"0"},{"header":"SYS_ERROR_Bad_Page","content":"Bad page state in process notify_comp","type":"qtn_system_snapshot.log","pollingFrequency":"0"}],"schedule":"*/15 * * * *","expires":0,"telemetryProfile:name":"RDKV_RPI","uploadRepository:URL":null,"uploadRepository:uploadProtocol":"HTTP"}}


    I have several questions:

    1. on the page https://wiki.rdkcentral.com/display/TDK/XCONF+Simulator you mentioned above, the link XCONF Simulator is not available, could you please help to provide the correct one? Thank you!
    2. the above REST API example, curl 'http://<xconf_simulator_ip:port>/XCONFSimulator/logUploader/getSettings?estbMacAddress=B8:27:EB:AE:57:B7&model=RPI',  estbMacAddress=B8:27:EB:AE:57:B7, is this the mac address of RPI device? What about the connection(network topology) between xconf and the RPI device? Could you please help to explain more?