1

I am trying to integrate intercom.io in my AngularJS application.

The script has some parameters to configure before the full loading:

<script id="IntercomSettingsScriptTag">
  window.intercomSettings = {
    // TODO: The current logged in user's email address.
    email: "[email protected]",
    // TODO: The current logged in user's sign-up date as a Unix timestamp.
    created_at: 1234567890,
    app_id: "95b20cd5364bab3a2136e252d2862b8136aabe7e"
  };
</script>
<!-- Init script -->
<script>(function(){var w=window;var ic=w.Intercom;if(typeof ic==="function"){ic('reattach_activator');ic('update',intercomSettings);}else{var d=document;var i=function(){i.c(arguments)};i.q=[];i.c=function(args){i.q.push(args)};w.Intercom=i;function l(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://static.intercomcdn.com/intercom.v1.js';var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);}if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}};})()</script>

I tried to use {{data.email}} to replace the email but unfortunately, the init script get loaded before the intercomSettings. ng-cloak is not very useful for me because it has been designed only for presentation purposes.

I am not sure in which direction I should look for. To test my code: http://plnkr.co/edit/2PJNLukBx0cTOPZXNwqs?p=preview

You should get a little question mark at the bottom right of the window if it works.

2 Answers 2

2

I'm not sure if you already found a solution, but you should take a look on this:

https://github.com/maxiperezc/angular-intercom it basically wrapped intercom script into angular, so you can use within your application using directives.

This is an improved version of https://github.com/gdi2290/angular-intercom - they removed some unnecessary code

Sign up to request clarification or add additional context in comments.

Comments

0

I updated angular-intercom to the latest intercom api if you're still interested. The service has been simplified for the user with a better way of handling async script loading https://github.com/gdi2290/angular-intercom

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.