如何在angularjs中包装Salesforce实时聊天

问题描述

我必须在angularjs网站中实现来自salesforce的实时聊天组件。 在Salesforce中设置实时聊天后,将生成一个代码段,以便将其粘贴到html中。但是我要做的是将此实时聊天代码包装在angularjs组件中。 Salesforce生成代码如下所示。

     <style type='text/css'>
    .embeddedServiceHelpButton .helpButton .uiButton {
        background-color: #808080;
        font-family: "Salesforce Sans",sans-serif;
    }
    .embeddedServiceHelpButton .helpButton .uiButton:focus {
        outline: 1px solid #808080;
    }
    @font-face {
        font-family: 'Salesforce Sans';
        src: url('https://c1.sfdcstatic.com/etc/clientlibs/sfdc-aem-master/clientlibs_base/fonts/SalesforceSans-Regular.woff') format('woff'),url('https://c1.sfdcstatic.com/etc/clientlibs/sfdc-aem-master/clientlibs_base/fonts/SalesforceSans-Regular.ttf') format('truetype');
    }
</style>
<script type='text/javascript' src='https://service.force.com/embeddedservice/5.0/esw.min.js'></script>
<script type='text/javascript'>
    var initESW = function(gslbBaseURL) {
        embedded_svc.settings.displayHelpButton = true; //Or false
        embedded_svc.settings.language = ''; //For example,enter 'en' or 'en-US'
        //embedded_svc.settings.defaultMinimizedText = '...'; //(Defaults to Chat with an Expert)
        //embedded_svc.settings.disabledMinimizedText = '...'; //(Defaults to Agent Offline)
        //embedded_svc.settings.loadingText = ''; //(Defaults to Loading)
        //embedded_svc.settings.storageDomain = 'yourdomain.com'; //(Sets the domain for your deployment so that visitors can navigate subdomains during a chat session)
        // Settings for Chat
        //embedded_svc.settings.directToButtonRouting = function(prechatFormData) {
            // Dynamically changes the button ID based on what the visitor enters in the pre-chat form.
            // Returns a valid button ID.
        //};
        //embedded_svc.settings.prepopulatedPrechatFields = {}; //Sets the auto-population of pre-chat form fields
        //embedded_svc.settings.fallbackRouting = []; //An array of button IDs,user IDs,or userId_buttonId
        //embedded_svc.settings.offlinesupportMinimizedText = '...'; //(Defaults to Contact Us)
        embedded_svc.settings.enabledFeatures = ['LiveAgent'];
        embedded_svc.settings.entryFeature = 'LiveAgent';
        embedded_svc.init(
            'https://domain--xxx.my.salesforce.com','https://xxxx-domain.cs90.force.com/survey',gslbBaseURL,'20201020','Support',{
                baseLiveAgentContentURL: 'https://c.xxx-c1cs-phx.salesforceliveagent.com/content',deploymentId: 'xxxxxxx',buttonId: 'xxxxxxx',baseLiveAgentURL: 'https://d.la4-c1cs-phx.salesforceliveagent.com/chat',eswLiveAgentDevName: 'Support',isOfflinesupportEnabled: false
            }
        );
    };
    if (!window.embedded_svc) {
        var s = document.createElement('script');
        s.setAttribute('src','https://xxxxxxx--xxxx.my.salesforce.com/embeddedservice/5.0/esw.min.js');
        s.onload = function() {
            initESW(null);
        };
        document.body.appendChild(s);
    } else {
        initESW('https://service.force.com');
    }
</script>

如何将这段代码包装在angularjs组件中?任何想法都会受到欢迎

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)