差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
zh:二次开发者指南:如何将第三方系统与astercc集成 [2013/03/07 03:05] solozh:二次开发者指南:如何将第三方系统与astercc集成 [2013/03/07 05:35] (当前版本) – [内嵌式同域集成] solo
行 6: 行 6:
  
 目的 目的
-  实现来电弹屏 +**坐席分机呼入或呼出时弹屏*
-  实现点击呼叫+
  
 从使用模式上来说,asterCC支持内嵌式和独立式两种集成模式 从使用模式上来说,asterCC支持内嵌式和独立式两种集成模式
行 22: 行 21:
   - 起始页面和asterCC在同一个域名下,例如都在asterCC的服务器上   - 起始页面和asterCC在同一个域名下,例如都在asterCC的服务器上
  
-  * 首先需要将系统URL地址增加到asterCC系统中,以便系统知道调用地址 +  * 首先我们准备两个文件,分别为sample.html和popup.html(源码见底部),用于代表接受事件页面和弹屏页面,并将文件上传到asterCC的服务器上,路径为/var/www/html/asterCC/app/webroot 
-{{:zh:二开发者指南:add_link.png?800|添加地址}} +  * 其我们需要将sample.html设置为默认页面,这里我们借用外呼营销模块 
-  asterCC系统支持不同应弹屏,即根据不同的条件调不同的链接,因此我们还需要添加一个应用,便于区分 +    进入 [[zh:模块使说明:呼叫中心高级管理:]] -> [[zh:模块使说明:呼叫中心高级管理:链接管理]],添加一个链接,链接类型选择 拨号计划链接, 链接地址输入sample.html 
-{{:zh:二次开发者指南:add_app.png?800|添加应用}} +    * 进入 [[zh:模块使用说明:外呼营销]] -> [[zh:模块使用说明:外呼营销:外呼营销任务]],添加一个外呼营销任务,工作链接选择sample.html 
-  * 在你的系统里找一个起始页面(即默认坐席将打开这个页面),然后在页面中添加接受asterCC叫事件的代码 +    * 进入呼入应用绑定,将该营销任务设定为默认呼入弹屏 
-{{:zh:二次开发者指南:sample.png?800|}}+    * 进入坐席组管理,该营销任务设定为默认出弹屏
  
-增加的代码包括 +{{:zh:二次开发者指南:dev_link_url_add_cn.jpg?direct&680|}} 
-  - 定义变量,包括asterCC服务器地址,团队ID,当前坐席工号 +{{:zh:二次开发者指南:dev_campaign_config_cn.jpg?direct&680|}} 
-  - 事件处理函数sonAccept+{{:zh:二次开发者指南:dev_app_bind_cn.jpg?direct&680|}} 
 +{{:zh:二次开发者指南:dev_agent_group_config_cn.jpg?direct&680|}}
  
-添加完毕后使用坐席登陆,当坐席电话振铃或者有其他叫动作产生时sonAccept会被自动调用,并且将事件内容传递msg变量中+  * 使用坐席登陆,使用软电话呼,获得弹屏 
 +  * 可以看新弹出的页面通过url获取到了参数 
 +{{:zh:二次开发者指南:dev_agent_portal_cn.jpg?direct&680|}}
  
-msg变量内容如下+{{:zh:二次开发者指南:dev_agent_portal_popup_cn.jpg?direct&680|}}
  
-calleridnum=041139735857&didnumber=8008008&activenum=041139735855&source=AGENT&event=ringing&uniqueid=78969&sessionid=efeb7b374a3408b0d0954f30a1504d83&eventTime=2010-01-01 08:21:58&AgentTeamId=20&modeltype=Campaign&model_id=10&AgentGroupId=100&calltype=dialout&channel=Local/015967121144@hosted-dialout-408a;1&from=dialout&+sample.html 
 +<code> 
 +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
 +<html> 
 + <head> 
 +  <title> asterCC development sample (local domain)</title> 
 +  <meta name="Author" content=""> 
 +  <meta name="Keywords" content=""> 
 +  <meta name="Description" content=""> 
 +  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
 +  <script type="text/javascript" src="/js/jquery/jquery-1.4.2.min.js"></script> 
 +  <script type="text/javascript"> 
 +  <!-- 
 + var tabflag; 
 + function sonAccept(msgStr){ 
 + var eventAll msgStr.split('&'); 
 + var aryEvent new Array(); 
 + for(i=0;i<eventAll.length;i++) { 
 + var tmpstr = eventAll[i].split('='); 
 + eval("aryEvent['"+tmpstr[0]+"'] = '"+tmpstr[1]+"';"); 
 +
 + // only popup when event is agent ring 
 + if(aryEvent['source'] == 'AGENT' && aryEvent['event'] == 'ringing'){ 
 + $('#ringnum').attr('value',aryEvent['calleridnum']); 
 + var ringtypeval = 2; 
 + if(aryEvent['calltype'] ='dialout'){ 
 + ringtypeval = 1; 
 +
 + $('#ringtype').attr('value',ringtypeval); 
 + var popurl = $('#popurl').val()+'?phone='+aryEvent['calleridnum']+'&type='+ringtypeval; 
 + tabflag = "uc"+aryEvent['calleridnum']+((new Date()).getTime()); 
 + // call the main function to popup tab with the url 
 + window.top.addTab(tabflag,popurl,aryEvent['calleridnum'],"yes"); 
 + }else{ 
 + window.top.showDiv('gid'+tabflag); 
 +
 +
 + $().ready(function(){ 
 + $('#clickpop').click(function(){ 
 + var url = $('#popurl').val()+'?phone='+$('#ringnum').val()+'&type='+$('#ringtype').val();//?phone=13585306891&type=2 
 + window.top.addTab("uc"+$('#ringnum').val()+((new Date()).getTime()),url,$('#ringnum').val(),"yes"); 
 + });
  
-通过解析msg变量,系统可以获得各种数据,从而做出相应的反应,例如在本页利用ajax显示内容,或者弹出新的标签调用其他页面+ var str = self.location.href; 
 + str = str.replace(/sample\.html/,"");  
 + document.getElementById("popurl").value= str + 'popup.html';
  
-以弹出新标签显示客户信息为例, 代码如下+ }); 
 +  //--> 
 +  </script> 
 + </head>
  
 + <body>
 + <div style="margin:10px 10px;">
 + Popup url: <input type="text" value="" id="popurl" style="width:100%;">
 + <p />
 + Caller ID: <input type="text" value="18888888888" id="ringnum" style="width:100%;">
 + <p />
 + Type(1 inbound||2 outbound):<input type="text" value="2" id="ringtype" style="width:100%;">
 + <p />
 + <input type="button" value="Click Popup" id="clickpop">
 + </div>
 + </body>
 +</html>
 +</code>
 +popup.html
 <code> <code>
-function sonAccept(msg){ + 
-}+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
 +<html> 
 + <head> 
 +  <title> popup page </title> 
 +  <meta name="Author" content=""> 
 +  <meta name="Keywords" content=""> 
 +  <meta name="Description" content=""> 
 + </head> 
 + 
 + <body> 
 + <br/> 
 + <br/> 
 + <br/> 
 + <br/> 
 + <br/> 
 +  hello world, my url is 
 +<script type="text/javascript"> 
 +<!-- 
 + var url = self.location.href; 
 + document.write(url)
 +//--> 
 +</script> 
 + 
 + </body> 
 +</html>
 </code> </code>
zh/二次开发者指南/如何将第三方系统与astercc集成.1362625541.txt.gz · 最后更改: (外部编辑)
Recent changes RSS feed Debian Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki