<div dir="ltr"><font color="#000000" style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif">Hi Developers,</font><div><font color="#000000" style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif"><br></font></div><div><font color="#000000" style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif">I am Arunkumar Ravichandran currently admitted for masters program at University of California, San Diego. My <a href="https://wiki.freifunk.net/Ideas#Implement_NetJSON_output_in_ubus_.28OpenWRT.2FLEDE.29">proposal </a><b>Implement NetJSON output in ubus (OpenWRT/LEDE)</b> has been accepted to the GSOC 2017 and I would like to tell more about my proposed project. </font></div><div><font color="#000000" style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif"><br></font></div><div><font color="#000000" style="background-color:rgb(255,255,255)" face="arial, helvetica, sans-serif">The main aim of this project is to implement parts of the NetJSON specification in the OpenWRT/LEDE ecosystem. </font></div><div><font face="arial, helvetica, sans-serif"><font color="#000000" style="background-color:rgb(255,255,255)"><br></font><span style="color:rgb(0,0,0);white-space:pre-wrap"><b>Why NetJSON ??</b>
NetJSON would allow standardization similar to NETCONF. Since NetJSON uses JSON format, it makes the management of configurations done at a higher level and larger scale to be automated easily. By using NetJSON objects to either produce or collect information, in different vendor’s different hardware, it allows the developers to work on their ideas faster and in a better way.</span></font></div><div><font face="arial, helvetica, sans-serif"><span style="color:rgb(0,0,0);white-space:pre-wrap"><br></span></font></div><div><span id="gmail-docs-internal-guid-5fa4a272-f195-f673-8bf2-1ba86e26bd53"><font face="arial, helvetica, sans-serif"><p dir="ltr" style="line-height:1.38;margin-top:2pt;margin-bottom:0pt"><span style="vertical-align:baseline;white-space:pre-wrap;background-color:rgb(255,255,255)"><font color="#000000"><b>Implementation:</b>
<span style="letter-spacing:0.16px;white-space:normal">The support for <a href="https://github.com/netjson/netjson">NETJSON </a>is brought in at the interconnect system- <a href="https://lede-project.org/docs/guide-developer/ubus">ubus</a>. To add support for a new ubus API which allows retrieving these two NetJSON object types: DeviceConfiguration and DeviceMonitoring. DeviceConfiguration NetJSON objects are filled in using the plugins available in System Configuration Abstraction Layer(<a href="https://github.com/prplfoundation/scal">SCAL</a>). </span></font><span style="color:rgb(0,0,0)">Full project proposal can be read at: </span><a href="https://docs.google.com/document/d/1b6zersOA_GjUqbOjuaXvFd4E40l1MqUXjIyVagLLd08/edit?usp=sharing">Google docs</a><font color="#000000"><span style="letter-spacing:0.16px;white-space:normal"><br></span></font></span></p><p dir="ltr" style="line-height:1.38;margin-top:2pt;margin-bottom:0pt"><span style="vertical-align:baseline;white-space:pre-wrap;background-color:rgb(255,255,255)"><br></span></p><p style="line-height:1.38;margin-top:2pt;margin-bottom:0pt"><font color="#000000" style="background-color:rgb(255,255,255)">I would welcome further suggestions from the LEDE/ OpenWRT community as that would help in implementing this feature sooner and in a better way, and also more resilient to multiple data models which are being used to represent network configurations. </font></p><div><span style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap">
Thanks,</span></div><div><span style="color:rgb(0,0,0);vertical-align:baseline;white-space:pre-wrap">Arun</span></div></font></span></div></div>