Intercom.io集成Ember.js應用程序。
使用Ember-CLI ember install ember-intercom-io安裝此插件
將{{intercom-io}}組件添加到模板之一中,每當渲染此組件時,聊天小部件就會出現,並且每當被銷毀時都會消失。
在您的config/environment.js文件中,您必須提供appId
module . exports = function ( environment ) {
...
intercom: {
appId : null , // <-- REPLACE WITH YOUR INTERCOM.IO app_id
enabled : true , // <-- Setting to false in your testing environment prevents unneccessary network requests (true by default)
userProperties : {
createdAtProp : 'createdAt' ,
emailProp : 'email' ,
nameProp : 'name' ,
userHashProp : 'hash' ,
userIdProp : 'id'
}
} ,
...
} ; 在Intercom.io World中,潛在客戶是您網站或應用程序的訪問者,而無需與他們關聯的電子郵件或名稱。用戶有一個名稱和電子郵件,是跟踪與單個人的所有互動歷史的良好結構。
您可以通過在intercom服務(即,您的用戶身份驗證服務)中添加對象來使ember-intercom-io意識到“用戶”上下文(轉移到“用戶”模式)而不是“引線”模式)。
當應用程序更新intercom.user對象時,更改將發送到Intercom並在對講儀表板中反射。
應用程序/服務/authentication.js
import Service , { inject as service } from '@ember/service' ;
export default Service . extend ( {
intercom : service ( ) , // the intercom service
didLogin ( user ) {
...
this . get ( 'intercom' ) . set ( 'user.name' , 'Joe Username' ) ;
this . get ( 'intercom' ) . set ( 'user.email' , '[email protected]' ) ;
this . get ( 'intercom' ) . set ( 'user.createdAt' , 1447135065173 ) ;
}
} ) ; 要將自定義屬性發送到Intercom,請將它們添加到intercom.user對象。所有屬性名稱將在發送之前進行劃定。未定義的值將被刪除(但是,保留null )。
let customProperties = {
myCustomThing : 1 ,
numberOfCats : false ,
notDefined : undefined
}
set ( this , 'intercom.user' , customProperties ) ;變成
{
my_custom_thing : 1 ,
number_of_cats : false
} intercom服務公開了幾種與Intercom.com現有JavaScript API匹配的公共API方法。有關客戶端API的完整詳細信息,請閱讀Intercom文檔。
| 姓名 | 類型 |
|---|---|
| 自動化 | 布爾 |
| HidedEfaultLauncher | 布爾 |
| 等元 | 布爾 |
| Isbooted | 布爾 |
| 解讀 | 整數 |
| 用戶 | 目的 |
實施以下對講方法。有關完整的詳細信息,請參見services/intercom.js 。
boot()
update()
shutdown()
hide()
show()
showMessages()
showNewMessage()
trackEvent()
getVisitorId()返回登錄用戶的當前ID。
startTour()您的對講帳戶需要支持產品旅行
與活動聽眾一起訂閱應用程序中的活動:
//fancy-component.js
...
intercom : service ( ) ,
newMessageAlert : on ( 'intercom.unreadCountChange' , function ( ) {
alert ( 'Unread Count Changed!' ) ;
} ) ,
...可用事件
(閱讀對講文檔以獲取完整詳細信息)[https://developers.intercom.com/v2.0/docs/intercom-javascript#section-intercomonhide]
| Ember事件 | 對講事件 |
|---|---|
| 隱藏 | onHide |
| 展示 | onShow |
| UnreadCountChange | onUnreadCountChange |
git clone這個存儲庫npm installnpm run lint:hbsnpm run lint:jsnpm run lint:js -- --fixember test - 在當前的Ember版本上運行測試套件ember test --server - 以“手錶模式”運行測試套件ember try:each - 對多個Ember版本運行測試套件ember serve有關使用Ember-CLI的更多信息,請訪問http://www.ember-cli.com/。
版權所有(C)2015 Levanto Financial,2016-18 Mike Works,Inc.。