Siebel WSD配置
一、功能介绍
Siebel Web Survey Deamon 在线问卷调查,是Marketing 的一个子功能,主要实现在Siebel中定义问题和网页样式,然后通过WebService传输到Web Survey服务器,
然用户进行调查问卷,WebSurvey服务器会自动将调查结果通过EAI XML传回Siebel服务器,其中Siebel会针对调查问题中的个别信息进行Map处理(如根据调查者姓名,与Contact自动匹配)
二、 安装WSD服务器
1. eDelivery下载Marketing Integrated Server套件
这边测试平台是Redhat5,Siebel是8114,因为找不到Linux下的这个安装包,所以就只好下了Windows下的。
2. 运行wsd.exe,安装后发现WSD安装好后其实是个tomcat 的siebel Web survey加强版,而这里面包含了tomcat 的linux shell程序,所以直接打包拷到服务器上,配下tomcat端口8080,至少tomcat可以跑了。如果有Tomcat管理需要的话,在/wsd/conf/tomcat-users.xml里面添加Roles和User。
三、 配置WSD 服务器
1. 修改/wsd/bin/setenv.sh 文件,确保websurvey/config的路径正确
JAVA_OPTS="-Dwebsurvey.configDir=/siebel/app/siebel/wsd/webapps/websurveys/config"
2. 确保安装JDK 1.5以上,修改/wsd/tomcat-ctl.sh文件,添加JAVA_HOME环境变量
3. 给wsd目录及其子文件赋权限,chmod –R 777 *
4. 在Siebel数据库中创建用户,例:WSDUSER,分配创建对象权限
5. 切换wsd/sql目录下,使用SQLPLUS执行对应数据库的SQL脚本,创建对象和元数据
6. 修改wsd/webapps/websurveys/config/websurvey.properties文件
survey.baseURL = http://[domain]:8080/websurveys 注意这里的domain要确保客户端用户能够访问
db.driver = com.siebel.sem.jdbc.oracle.OracleDriver 注册驱动
db.WEBSURVEY.url = jdbc:sebl:oracle://[Domain]:1521;ServiceName=siebeltest 配置TNS
db.WEBSURVEY.user = WSDUSER 数据库用户名
db.WEBSURVEY.password = y0b/EV/J/kKCzTiMD9yeKlHEiglBD1Xq8BO5---------------------------------------------------------------------------------------------------------------
这里的密码必须为加密密文,加密方法如下:
加密程序LIB环境变量导入
export CLASSPATH=/siebel/app/siebel/wsd/webapps/websurveys/WEB-INF/lib/occam-crypto.jar
转码命令: java com.siebel.occam.security.OccamCrypto encrypt [password]
输出密文写到db.WEBSURVEY.password
----------------------------------------------------------------------------------------------------------------
report.enable = true
WebSurveyQueueDirectory = /siebel/app/siebel/wsd/webapps/websurveys/Queueing
SIEBEL_URL = http://[host]:[port]/eai_chs/start.swe?SWEExtSource=WebService&SWEExtCmd=Execute&WSSoap=1
SIEBEL_USERNAME=SADMIN
SIEBEL_PASSWORD=SADMIN
SIEBEL_LOCALE=chs
RESPONSE_TYPE=\u5b8c\u6210\u7684\u7f51\u7edc\u8c03\u67e5
---------------------------------------------------------------------------------------------------------------
如果SIEBEL 中SEED LOV为中文,这里的类型必须为也写为中文:
但是配置文件本身是ASCII编码,而生成的XML回传Siebel是UTF-8编码,所以直接写中文会乱码,因此这里需要用转码工具将中文“完成的网络调查”转换为UTF-8编码的ascii字串,这里直接用python的字符串解码命令:
----------------------------------------------------------------------------------------------------------------
最后修改wsd/webapps/websurveys/config/loging.properties,将里面的Log文件路径写对
7. 修改 wsd/webapps/websurveys/WEB-INF/conf/axis2.xml 文件
注释掉下面这句 <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
原因为: 在Siebel WebServer 为 Oracle Application Server 的情况下,使用chunked编码进行SOAP数据传输,Siebel会报一个WS错误
Error Code: 10944629 Error Message: Error: Missing body length in response to SWE request!
8. 启动WSD,在wsd目录下执行tomcat-ctl.sh start
http://[host]:8080 返回tomcat主页,说明tomcat配置么有问题
http://[host]:8080/websurveys/servlet/ActionMultiplexer?Action_ID=WEB_SURVEYS_HEARTBEAT
http://[host]:8080/websurveys/services/WebSurveyWebService?wsdl
WSD服务器配置基本完毕。
四、 配置Siebel WSD服务
1. 激活Task UI : Mktg Landing Site Task Based UI
2. 激活导入响应工作流
Mktg Master Import Process
Mktg Import - Response Process
3. 设置出站WS: WebSurveyWebService
指定Host:Port ,例如:http://[host]:8080/websurveys/services/WebSurveyWebService?wsdl
五、 配置Land Site
1. 进入Site Map, 登陆站点(Land Site)
2. 定义问题和回答
3. 定义调查,调查定义好之后设置为“活动”
创建新调查,创建调查区域头,这里的页是要在第几个页面展示的意思
选择调查区域下的一类问题,这里注意一定要将姓名映射到联系人姓名
4. 准备一个登陆页内容,用于第一页调查的抬头
简单点,准备一个htm静态页面,里面放一张图片,上传到【HTML内容】,说明类型为登陆页内容
5. 创建登陆站点
6. 关联登陆页面,注意要先新建,再选择,筛选条件是在【HTML内容】中添加的类型为登陆页面
7. 关联调查,直接选取调查就行
8. 部署发布,点击预览没问题后,点击生成测试URL,查看没问题后点击激活,如果后面页面内容或调查内容有修改,需要手动点击刷新按钮,同步到WSD服务器。
9. 登陆正式站点,进行测试
10. 测试提交后,Land Site配置基本没问题,接下来是数据返回的Siebel响应处理
六、Maketing 导入响应Mapping配置
1. 上面步骤中Submit之后会在wsd目录下生产resp3.xml文件,这个是存储用户问卷结果的XML文件样例,下载到本地。
2. 进入管理-营销,导入界面,新建一个Job
时间表模式 = 一次性(手动启动)
开始时间 = Now
3. 激活Job后在同Screen下系统任务中可以看到一个请求已In Process
切到导入界面下,查看刚才创建的Job的工作状态
4. 都已完成后切换到数据映射,可以看到输入字段都已写好,但是这个不是从XML生成的,而是系统默认的,需要手动更新Mapping,点击加载映射,然后选择对应的映射字段
除FirstName和LastName需要映射到Contact外,其他均Map到Response的标准对象
5. 最后点击查看映射明细,跳转到导入映射界面,这里注意一定要在联系人姓名勾上精确匹配列,否则响应中关联不到联系人。
6.6. 最后,查看这个导入映射头的ROW_ID ,例 1-4765R
7. 打开WebSurvey服务器上的WSD配置文件websurvey.properties,修改SIEBELMAPPINGID
8 . 保存后,重启WSD服务
切换到wsd目录,执行 tomcat-ctl.sh stop && tomcatl-ctl.sh start
七、打开登陆站点URL进行调查问卷
点击提交后,Siebel系统中管理-营销的系统任务中会自动创建导入Job,服务器管理的Job中会创建两个异步工作流
跑成功后,进入登陆站点,找到刚才问卷的登陆站点,进入查看响应界面
可以看到联系人被系统自动匹配带出,问题和答案也已经同步过来。
从WSD Submit到Siebel 创建工作流的响应不是实时的,是由WSD服务器按固定周期轮询主动请求Siebel服务器,所以可能要等一会,这个周期可以在websurvey.properties配置文件中设置
QueueFlushInterval = 60000 // 1分钟
WSD服务器上还有很多高级功能,这里只是初步配通整个流程,按PDF中说法,还可以实现用户登录部分的集成,比如和AD或LADP的查询,另外rep3.xml中的ContactId可以直接映射到联系人,这个也值得研究,希望后面有空再深入研究了。