Skip to main content

Unified Service Desk & Cafex - Enabling Chat

Hi Friends,

Sharing my learning. Lets get to the point.

Refer Cafex provisioning steps

This blog is to enable chat capability for our customer portal or website.


Step 1: Copy snippet from Live Assist Admin Portal
-          Go to Account Administration Portal. URL can be found in the below mentioned “Chat Setting” record under Settings - > Live Assist -> Settings



-          In the portal, go to Get Started -> Chat

      Then click next button

-          Copy the snippet

The snippet will look as follows,
<script type="text/javascript">(function(a){function b(B,C){let D=new c(B,C);document.dispatchEvent(D)}function c(B,C){let D;if('function'==typeof window.CustomEvent)D=new CustomEvent(B,C);else{let E=C||{bubbles:!1,cancelable:!1,detail:void 0};D=document.createEvent('CustomEvent'),D.initCustomEvent(B,E.bubbles,E.cancelable,E.detail)}return D}function d(){var B=document.querySelectorAll('[data-event]');B.forEach(function(C){let D=JSON.parse(C.dataset.event);f(D,!0)})}function f(B,C){let D=document.getElementById(B.id);(B.oneTime||C)&&(D.disabled=!0,'undefined'!=typeof B.disabledStyle&&(D.style.cssText=B.disabledStyle),D.style.cssText+='pointer-events: none;')}function g(B){o(sessionStorage,B,'element already exists in local storage list',z)}function h(){let B=JSON.parse(sessionStorage.getItem(z)),C=[];for(let D in B)B[D].oneTime&&C.push(k(B[D]));0!==C.length&&j(C)}function j(B){let C=document.head||document.getElementsByTagName('head')[0],D=document.createElement('style');D.type='text/css',B.forEach(function(E){D.appendChild(document.createTextNode(E))}),C.appendChild(D)}function k(B){let C='#'+B.id+'{',D=B.disabledStyle.split(';');return D.forEach(function(E){C+=E+' !important;'}),C+='pointer-events: none;',C+='}',C}function l(B,C){let D={detail:{data:C}};if(B){let E=JSON.parse(C).id,F=document.querySelectorAll('[data-boot-strap]');for(let H,G=F.length-1;0<G;G--)if(H=F[G].dataset.bootStrap,JSON.parse(H).id===E){D={detail:{data:H}};break}}return D}function m(B){o(localStorage,B,'script already exists in local storage list',y)}function o(B,C,D,E){let F=JSON.parse(B.getItem(E));F||(F={}),F[C.id]===void 0?(F[C.id]=C,B.setItem(E,JSON.stringify(F)),console.log('adding'+C.id+' to storage')):console.log(D)}function p(B){q(localStorage,B,y)}function q(B,C,D){let E=JSON.parse(B.getItem(D));!1==delete E[C]&&console.log('script'+C+'does not exist in list'),B.setItem(D,JSON.stringify(E))}function r(B){let C=document.getElementById(B);C&&(C.parentNode.removeChild(C),C=null,console.log('script'+B+' removed from dom'))}function .....
.....
.....
</script>

Note: The snippet differs from environment to environment and it is basically a <Script> tag of type Java Script.
Step 3: Paste the snippet to the customer portal/websites header tag. Once it is done, refresh your website to see that chat widget.

Thanks,
Naveen.

Comments

Popular posts from this blog

Dynamics CRM: Marketing Lists and the Locked Field

Hi Friends, I didn't see any blogs about this and so I decided to write a few lines about the LOCKED field in Marketing List entity.   As the name suggests that this field will help us to lock the marketing list and so that no possibility of addition or removal of list members. The other important thing is that you can only lock the Static Marketing List and not the Dynamic Marketing List. Yes, as the list members will be filtered dynamically, Dynamic MLs cannot be locked. But I don't like the way the error message is given to the users when they try to add or remove list members. It’s a plugin exception thrown after validation. I hope it helps. Let me know your suggestions. Thanks, Naveen.

Cafex Authentication in Non-MS portals #MSCRM #USD #Unified Service Desk

Hi Friends, Sharing my learning. Lets get to the point. When a user starts a chat with an Agent, there are two scenarios as follows, -         Existing contact in CRM -         New Visitor The process of identifying the contact in CRM is called as Authentication. The authentication process in MS portals are pretty straightforward and the steps are mentioned in the link https://www.liveassistfor365.com/en/support/authenticated-visitors-in-the-dynamics-customer-portal/ . But the authentication process in non-MS portals are bit tricky and the steps are mentioned in the link https://www.liveassistfor365.com/en/support/authenticated-visitors-non-ms-portals/ . Our interest is to explore Non-MS portal authentication and we need to understand the communication between Live Assist and Non-MS portal. The communication between Live Assist and CRM Org has been established when we completed the provisioning process and we don’t have to w...