Code Monkey home page Code Monkey logo

tr069-simulator's Introduction

tr069-simulator

This is a Java based TR069 Simulator for CPE devices. Currently this simulator supports cwmp-1-0.xsd schema. Jibx tool has been used to bind the schema file into java classes.

This simulator can support different type of CPE devices. Also you can simulate hundreds of devices using the same instance.

How to use:
To run this simulator,

  1. download the project and unzip it to a suitable location.
  2. Modify the agent.csv configuration file available in the root directory.

agent.csv file is the csv configuration file that contains the following:

startip, endip, acs_url, conn_req_url, http_port, periodic_inform, dump_location, username, password, authtype
192.168.1.111, 192.168.1.120, http://tr069.me/tr069/ws?wsdl&probe=257ebf, /wsdl, 8035, 300, /dump/microcell/, user1, passwd1, basic
192.168.2.211, 192.168.2.220, http://tr069.me/tr069/ws?wsdl&probe=257ebf, /wsdl, 8035, 300, /dump/microcell/, user1, passwd1, basic
Start IPAddress
End IPAddress
ACS Server URL
Connection Request URL
Http Port
Period Inform Interval
Dump Location Path
Username
Password
Authtype

You can modify these parameter according to your requirements. To simulate multiple CPE devices, provide the start and
end ipaddress. Periodic Inform Interval is in seconds. Simulator will send Inform request based on this parameter.

Dump Location Path is the directory path where simulator will read and load the CPE data.
Simulator will check for two set of files.
1. getvalues.txt
2. getnames.txt

getvalues.txt contains Name/Value data as XML Nodes. Simulator will respond to the ACS Server based on this Name/Value Pair.
getnames.txt contains ParameterInfoStruct XML Nodes. Access detail about the parameters are retrieved from this file.
Currently, Femtocell device dump is being bundled with the JAR. If the user wish to simulate a different CPE, either they need to
create these xml two files manually or they need to take a dump from the real CPE device by reading the GetParameterValuesResponse and GetParameterNamesResponse.

If the ACS Server supports HTTP Authentication, provide the username, password and authentication type. basic and digest methods are currently supported. If authentication is not supported, these fields are not required.

To run:

java -jar target/tr069-0.6.2-SNAPSHOT.jar server simulator.yml
Note: Java must be available in your system.

License
MIT License.

tr069-simulator's People

Contributors

paraam avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.