做为新一代 3G 及移动终端浪潮的设备管理平台, OMA DM 技术获得了众多设备厂商和运营商的追捧,也为软件开发商提供新的崛起机会。业内目前也有不少工作在做这方面的软件。好多公司这方面的产品都是基于Sync4J开发的。
Sync4J 开源项目为我们提供了完整的 OMA DM 1.1.2 规范的 Java 实现。本文记录了 Sync4J DM Server 安装以及使用SCTS模拟器来模拟手机做一个DM业务,本文没有用PPG来通过短信方式来用真手机来做,只是用模拟器来做的。SCTS是OMA官方提供的一个测试工具,主要用来测试DMserver的,这里我们用来测试Sync4J。Sync4J和SCTS的集合是我们学习OMA的一个很好的方式。
1 :用到以下工具。
Oracle9i
jboss- 3.2.3
sync4j-server-dm- 1.4.9 sync4j 官方有下载
SCTS_DeviceManagement_v1.12.zip OMA 官方网站有下载。
2 :安装调试
2.1 解压文件:
jboss- 3.2.3 解压到 C:\jboss-3.2.3
把 sync4j-server-dm- 1.4.9 解压到 D:\sync4j\all\server-dm .
直接安装 SCTS.
2.2 配置环境变量
JAVA_HOME=
J2EE_HOME= C:\jboss- 3.2.3
SYNCSERVER_HOME= D:\sync4j\all\server-dm
2.3 修改SYNCSERVER_HOME下的几个配置文件
SYNCSERVER_HOME\ default\config\common\properties\ Sync4j.properties
把第一行改为 server.uri=http://your IP:8080/sync4j-dm/dm
SYNCSERVER_HOME\ install.properties 改为
(1)server-name=http://10.150.4.7:8080/sync4j-dm/dm
(2) 用 oracle 的数据库,以下是用来连接数据库的,所以一定要配置正确。
jdbc.classpath=C:\\jboss- 3.2.3 \\server\\all\\lib\\ojdbc14.jar
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@ 11.11.11 .11:1521:abc
jdbc.user=sync4j
jdbc.password=sync4j
2 .4以上都做完后用Sync4j自己带的安装脚本安装sync4j dm server
在 SYNCSERVER_HOME 下运行 bin\install.cmd jboss32
2 .5由于这个版本存在了一个bug,所以在2.4做完后要修改
SYNCSERVER_HOME\bin\start.cmd
把倒数第三行 call\run.bat -c sync4j 改为
call %J2EE_HOME%\bin\run.bat -c sync4j
2 .6 在SYNCSERVER_HOME 运行 bin\start.cmd安装
所有程序到安装到了 jboss_home 下了,可以到 JBOSS_HOME\ server\sync4j 就可以看到了,看一下你的 oralce 库里面也初始化了数据,表也建好了。
2 .7 添加一个手机(我们其实是个模拟器)上来
http://your ip:8080/dmdemo/jsp/addDevice.jsp 填写一个 IMEI:111111111111111,
2 .8 配置scts
Add device : IMEI:111111111111111 然后点 apply
点击 DM Account
Name : sync4j
Server:sync4j
Con : 不用填写
Address : http://your ip /sync4j-dm/dm
Port :8080
Server authentication:
Digest : 找数据库用 sync4j 的数据库中, sycn4j_device 表中 :IMEI:111111111111111 , server 的 password 为: srvpwd, 把这个 password 填写到 password 中。
Client authentication
DIGEST: USER NAME: sync4j PASSWORD: sync4j
Add 就可以了
然后点 connect 连一下 DM SERVER 看看能否连上。 第一次一般会出现认证错我,接着再联一次就可以了, SCTS 有日志可以查看。
如果连通了那下面就来做一个采集模拟器上的一个节点吧。
http://your ip:8080/dmdemo/index.html
用 device id : IMEI:111111111111111 login
然后点击 add to operation list
然后用 SCTS 主动回联一下,看看 server 能够拿到这个节点的值
你会看到 6 个 message !!!
详细看一下这 6 个 message 你会发现,这个节点的采集已经成功了!