Integrasi Intercom.io untuk Aplikasi Ember.js.
Instal Addon ini dengan Ember-Cli ember install ember-intercom-io
Tambahkan komponen {{intercom-io}} ke salah satu templat Anda ` widget obrolan akan muncul setiap kali komponen ini diterjemahkan, dan harus menghilang setiap kali dihancurkan.
Di file config/environment.js Anda, Anda harus menyediakan appId Anda
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'
}
} ,
...
} ; Di dunia Intercom.io, sebuah timah adalah pengunjung ke situs atau aplikasi Anda, tanpa email atau nama yang terkait dengannya. Seorang pengguna memiliki nama dan email, dan merupakan konstruksi yang baik untuk melacak sejarah semua interaksi dengan satu orang.
Anda dapat membuat ember-intercom-io sadar akan konteks "pengguna" (beralih ke mode "pengguna" alih-alih mode "lead") dengan menambahkan objek ke layanan intercom (yaitu, layanan otentikasi pengguna Anda).
Ketika aplikasi memperbarui objek intercom.user , perubahan akan dikirim ke Interkom dan tercermin di dasbor Interkom Anda.
Aplikasi/Layanan/Otentikasi.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 ) ;
}
} ) ; Untuk mengirim properti khusus ke interkom, tambahkan ke objek intercom.user . Semua nama properti akan digarisbawahi sebelum dikirim. Nilai yang tidak ditentukan akan dihapus (namun, null disimpan).
let customProperties = {
myCustomThing : 1 ,
numberOfCats : false ,
notDefined : undefined
}
set ( this , 'intercom.user' , customProperties ) ;menjadi
{
my_custom_thing : 1 ,
number_of_cats : false
} Layanan intercom memaparkan beberapa metode API publik yang cocok dengan API JavaScript Intercom.com yang ada. Untuk detail lengkap tentang API klien, baca dokumen Intercom.
| Nama | Jenis |
|---|---|
| AutoupDate | Boolean |
| HIDEDEFAULTLAUNCHER | Boolean |
| isopen | Boolean |
| Isbooted | Boolean |
| tidak terbaca | Bilangan bulat |
| pengguna | Obyek |
Metode interkom berikut diimplementasikan. Lihat services/intercom.js untuk detail lengkap.
boot()
update()
shutdown()
hide()
show()
showMessages()
showNewMessage()
trackEvent()
getVisitorId() Mengembalikan ID saat ini dari pengguna yang masuk.
startTour() Akun interkom Anda perlu mendukung tur produk
Berlangganan acara di aplikasi Anda dengan pendengar acara:
//fancy-component.js
...
intercom : service ( ) ,
newMessageAlert : on ( 'intercom.unreadCountChange' , function ( ) {
alert ( 'Unread Count Changed!' ) ;
} ) ,
...Acara yang tersedia
(Baca dokumentasi interkom untuk detail lengkap) [https://developers.intercom.com/v2.0/docs/intercom-javascript#section-intomonhide]
| Acara Ember | Acara Interkom |
|---|---|
| bersembunyi | onHide |
| menunjukkan | onShow |
| UnfreadCountChange | onUnreadCountChange |
git clone repositori ininpm installnpm run lint:hbsnpm run lint:jsnpm run lint:js -- --fixember test - Menjalankan Test Suite pada versi Ember saat iniember test --server -menjalankan suite test di "Watch Mode"ember try:each - menjalankan suite test melawan beberapa versi Emberember serveUntuk informasi lebih lanjut tentang penggunaan Ember-Cli, kunjungi http://www.ember-li.com/.
Hak Cipta (C) 2015 Levanto Financial, 2016-18 Mike Works, Inc.