/*! * widgets * @version: 9.0.017.13 * @license: Genesys Telecom Labs */ widgetsJsonpFunction([28],{"./webapp/plugins/cx-clicktocall-service/cx-clicktocall-service.js":function(e,o,r){"use strict";var t,i,s="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};t=[r("./node_modules/jquery/dist/jquery.js"),r("./webapp/plugins/cx-common/cx-common.js"),r("./node_modules/urijs/src/URI.js")],void 0!==(i=function(e,o,r){var t=CXBus.registerPlugin("ClickToCallService");if(t){t.registerEvents(["ready","restored","numberReceived"]);var i={ajaxTimeout:3e3,provideAccessCode:!0,dataURL:"",iApiKey:"",userData:{}},n={postHttp:function(o,r){var t=e.Deferred(),s={};return e.extend(!0,s,i.userData||{},r||{}),e.ajax({url:o,data:s,type:"POST",timeout:i.ajaxTimeout,beforeSend:function(e){i.iApiKey&&e.setRequestHeader("apikey",i.iApiKey)},success:function(e){t.resolve(e||{})},error:function(e){t.reject(e||{})}}),t.promise()}},c=0,a={},d="_genesys.widgets.clicktocall.state",u=d+".expire",l=d+".phone_number",p=d+".phone_tel_href",m=d+".access_code",f=function(){c=parseInt(o.getCookie(u)||0);var e=new Date,r=e.getTime(),t=o.getCookie(m),i=o.getCookie(l),s=o.getCookie(p),n=Math.ceil((c-r)/1e3);return void 0!==i&&""!==i?{bRestoreSuccess:!0,sPhoneNumber:i,sPhoneTelHref:s,sAccessCode:t,iExipreTime:n}:{}},b=function(){o.deleteCookie(u),o.deleteCookie(m),o.deleteCookie(l),o.deleteCookie(p)},v=function(e){var r=new Date,t=r.getTime();c=t+1e3*e.iExpireTime;var i=e.sAccessCode,s=e.sPhoneNumber,n=e.sPhoneTelHref;o.setCookie(u,c),o.setCookie(m,i),o.setCookie(l,s),o.setCookie(p,n)},y=function(o){var r=!1;return(null==o||""==o||void 0===o||"object"==(void 0===o?"undefined":s(o))&&e.isEmptyObject(o))&&(r=!0),r};t.registerCommand("configure",function(o){var r=o.data;r&&!y(r)?("number"==typeof r.ajaxTimeout&&(i.ajaxTimeout=r.ajaxTimeout),"boolean"==typeof r.provideAccessCode&&(i.provideAccessCode=r.provideAccessCode),"string"==typeof r.dataURL&&(i.dataURL=r.dataURL),"string"!=typeof r.apikey&&"number"!=typeof r.apikey||(i.iApiKey=r.apikey),"object"!=s(r.userData)||y(r.userData)||e.extend(!0,i.userData,r.userData),o.deferred.resolve()):o.deferred.reject("Invalid configuration.")}),t.registerCommand("restore",function(e){var o=f();y(o)?e.deferred.resolve({bRestoreSuccess:!1}):(t.publish("restored",o),e.deferred.resolve(o))}),t.registerCommand("requestNumber",function(o){var r={_call_direction:"USERORIGINATED",_wait_for_agent:!1,_wait_for_user_confirm:!1,_provide_code:!1};r._customer_number=o.data.phonenumber,r._provide_code=i.provideAccessCode;var s={error:!1,netfail:!1,errormsg:"",sPhoneNumber:"",sAccessCode:"",iExpireTime:0},c={};e.extend(!0,c,r,o.data||{}),n.postHttp(i.dataURL,c).done(function(e){e.exception?(s.error=!0,s.errormsg=e.message):(s.sPhoneNumber=e._access_number,s.sAccessCode=e._access_code,s.sPhoneTelHref=e._tel_url,s.iExpireTime=parseInt(e._expiration_time),v(s)),t.publish("numberReceived",s),o.deferred.resolve(s)}).fail(function(e){e&&e.responseJSON&&e.responseJSON.exception?(s.error=!0,s.errormsg=e.responseJSON.message):s.netfail=!0,t.publish("numberReceived",s),o.deferred.reject(s)}),o.deferred.resolve(s)}),t.subscribe("GWE.ready",function(){t.command("GWE.getIDs").done(function(o){e.extend(!0,a,o)})}),t.subscribe("ClickToCall.expired",function(){b()}),t.command("configure",_genesys.widgets.clicktocall),t.ready(),t.republish("ready")}}.apply(o,t))&&(e.exports=i)}},["./webapp/plugins/cx-clicktocall-service/cx-clicktocall-service.js"]);