原創做品,轉載請註明出處linux
copyright:weishusheng 2015.3.18 vim
email:642613208@qq.com瀏覽器
平臺:服務器
Linux version 2.6.32-279.el6.x86_64socket
交叉編譯器路徑:/opt/buildroot-2012.08/arm920t/usr/bin/arm-linux-測試
開發板:FL2440ui
開發板運行內核:linux3.0spa
開發板文件系統:initramfsorm
openacs和easycwmp要能正確通訊,須要修改腳本配置,下面給出須要修改的腳本,及修改方法。 server
一.修改/etc/config/easycwmp,它是一個連接,連接到了easycwmp/ext/openwrt/config/easycwmp
[weishusheng@centOS6 ~]$ vim /etc/config/easycwmp
# easycwmp uci configuration
config local
option interface eth0
option port 7547
option ubus_socket /var/run/ubus.sock
option date_format %FT%T%z
option username easycwmp
option password easycwmp
config acs
option scheme http
option username openacs
option password openacs
option hostname 192.168.1.21 #acs服務器ip
option port 8080
option path /openacs/acs #路徑,注意後面還有個acs
option parameter_key '1'
option periodic_enable 'true'
option periodic_interval '180'
option periodic_time '1'
config device
option manufacturer easycwmp
option oui FFFFFF
option product_class weishusheng #若是你在瀏覽器裏登上acs服務器,點擊find cpe,若是能連上,這個名字就會出現
option serial_number FFFFFF12345 #這個信息會出如今jboos運行窗口
option hardware_version example_hw_version
option software_version example_sw_version
config scripts
# load OpenWrt generic network functions
list location /lib/functions/network.sh
# load easycwmp common functions
list location /usr/share/easycwmp/functions/common
# easycwmp specific functions
list location /usr/share/easycwmp/functions/device_info
list function device_info
list location /usr/share/easycwmp/functions/lan_device
list function lan_device
list location /usr/share/easycwmp/functions/management_server
list function management_server
list location /usr/share/easycwmp/functions/wan_device
list function wan_device
二. 運行jboos
[weishusheng@centOS6 bin]$ ./run.sh -b 0.0.0.0
讓jboos運行着。
三.運行easycwmp,注意切換到超級用戶模式下,否則你的easycwmp啓動時會卡在執行easycwmp.sh那裏
[weishusheng@localhost ~]$ su
Password:
[root@localhost weishusheng]# /usr/sbin/easycwmpd -f -b
四. 在瀏覽器裏訪問http://192.168.1.21:8080/openacs/,點擊"find CPE",若是cpe成功上報的話,Hardware的下拉框裏面就會有cpe的型號(在這裏我是weishusheng),在SerialNumber框裏面輸入cpe的sn號(這個在Inform報文裏面有)便可進行查詢。
五. 查詢頁面的overview頁面有個reboot按鈕,點擊以後acs就會向cpe下發reboot方法,cpe收到後就會自動重啓。
六 . 接下來咱們就能夠建立本身的腳原本測試TR069協議了。在"Configuration scripts"-->"Default"裏輸入要操做的腳本,點擊SAVE,當ACS收到CPE發來的INFORM消息後,ACS就會運行Default腳本。好比:在Default裏面輸入如下腳本
logger("=======>GetRPCMethods<=============");
var methods = cpe.GetRPCMethods ();
for (i = 0; i < methods.length; i++) {
logger ("Method: "+methods[i]);
}
logger("============>END<====================");
logger("=========>WEISHUSHENG<================");
運行easycwmp,會在acs服務器端看到如下信息:
04:42:34,998 ERROR [STDERR] 2015-2-3 4:42:34 org.openacs.Configurator log
信息: FFFFFF:FFFFFF123456 Configurator::run
04:42:35,017 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.Configurator log
信息: FFFFFF:FFFFFF123456 Backup cwmp tree
04:42:35,021 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.utils.Version Set
警告: Invalid version string: example_sw_version Non numeric elements assumed to be 0
04:42:35,023 INFO [STDOUT] swUpdate=null
04:42:35,024 INFO [STDOUT] Configurator: UPDATE ProvisioningCode
04:42:35,033 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.Configurator log
警告: FFFFFF:FFFFFF123456 Config lookup: No such entity!
04:42:35,041 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: =======>GetRPCMethods<=============
04:42:35,041 INFO [STDOUT] Received: GetRPCMethods
04:42:35,044 INFO [STDOUT] End of processing
04:42:35,048 WARN [EnvelopeBuilderDOM] Ignore child type: 3
04:42:35,048 WARN [EnvelopeBuilderDOM] Ignore child type: 3
04:42:35,050 INFO [STDOUT] URI null
04:42:35,050 INFO [STDOUT] cwmp NS =urn:dslforum-org:cwmp-1-2
04:42:35,050 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.ACSServlet log
信息: oui=FFFFFF sn=FFFFFF123456 Request is GetRPCMethodsResponse
04:42:35,050 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: GetRPCMethods
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: SetParameterValues
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: GetParameterValues
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: GetParameterNames
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: GetParameterAttributes
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: SetParameterAttributes
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: AddObject
04:42:35,051 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: DeleteObject
04:42:35,052 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: Download
04:42:35,052 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: Reboot
04:42:35,052 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: FactoryReset
04:42:35,052 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: Method: ScheduleInform
04:42:35,053 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: ============>END<====================
04:42:35,053 ERROR [STDERR] 2015-2-3 4:42:35 org.openacs.js.Script logger
信息: =========>WEISHUSHENG<================
04:42:40,055 INFO [STDOUT] Received: null
04:42:40,055 INFO [STDOUT] End of processing
若是看到這些信息,那環境就搭建完成了。