一、功能介紹
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可以直接映射到連絡人,這個也值得研究,希望後面有空再深入研究了。