ember.js 앱의 Intercom.io 통합.
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으로 전송되고 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 ) ;becomes
{
my_custom_thing : 1 ,
number_of_cats : false
} intercom Service는 Intercom.com의 기존 JavaScript API와 일치하는 몇 가지 공개 API 방법을 노출시킵니다. 클라이언트 API에 대한 자세한 내용은 인터콤 문서를 읽으십시오.
| 이름 | 유형 |
|---|---|
| autoupdate | 부울 |
| HidedeFaultLauncher | 부울 |
| Isopen | 부울 |
| isbooted | 부울 |
| 읽지 않은 계산 | 정수 |
| 사용자 | 물체 |
다음 인터콤 방법이 구현됩니다. 자세한 내용은 services/intercom.js 참조하십시오.
boot()
update()
shutdown()
hide()
show()
showMessages()
showNewMessage()
trackEvent()
getVisitorId() 로그인 한 사용자의 현재 ID를 반환합니다.
startTour() Intercom 계정은 제품 투어를 지원해야합니다
이벤트 리스너와 함께 앱에서 이벤트를 구독하십시오.
//fancy-component.js
...
intercom : service ( ) ,
newMessageAlert : on ( 'intercom.unreadCountChange' , function ( ) {
alert ( 'Unread Count Changed!' ) ;
} ) ,
...사용 가능한 이벤트
(자세한 내용은 인터콤 문서를 읽으십시오) [https://developers.intercom.com/v2.0/docs/intercom-javaScript#section-ntercomonHide]
| Ember 이벤트 | 인터콤 이벤트 |
|---|---|
| 숨다 | onHide |
| 보여주다 | onShow |
| unreadCountChange | onUnreadCountChange |
git clonenpm installnpm run lint:hbsnpm run lint:jsnpm run lint:js -- --fixember test - 현재 Ember 버전에서 테스트 스위트를 실행합니다.ember test --server -"시계 모드"에서 테스트 스위트를 실행합니다.ember try:each - 여러 EMBER 버전에 대해 테스트 스위트를 실행합니다.ember serveEmber-Cli 사용에 대한 자세한 내용은 http://www.ember-cli.com/을 방문하십시오.
Copyright (C) 2015 Levanto Financial, 2016-18 Mike Works, Inc.