InterCom.io Integration สำหรับแอพ ember.js
ติดตั้ง addon นี้ด้วย 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 ผู้นำเป็นผู้เข้าชมเว็บไซต์หรือแอพของคุณโดยไม่มีอีเมลหรือชื่อที่เกี่ยวข้องกับพวกเขา ผู้ใช้มีชื่อและอีเมลและเป็นโครงสร้างที่ดีสำหรับการติดตามประวัติของการโต้ตอบทั้งหมดที่มีบุคคลเดียว
คุณสามารถทำให้ ember-intercom-io ตระหนักถึงบริบท "ผู้ใช้" (เปลี่ยนเป็นโหมด "ผู้ใช้" แทนโหมด "leads") โดยการเพิ่มวัตถุไปยังบริการ intercom (เช่นบริการตรวจสอบสิทธิ์ผู้ใช้ของคุณ)
เมื่อแอปพลิเคชันอัปเดตวัตถุ intercom.user การเปลี่ยนแปลงจะถูกส่งไปยังอินเตอร์คอมและสะท้อนในแผงควบคุมอินเตอร์คอมของคุณ
แอพ/บริการ/การรับรองความถูกต้อง 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.user ชื่อทรัพย์สินทั้งหมดจะได้รับการเน้นย้ำก่อนที่จะถูกส่ง ค่าที่ไม่ได้กำหนดจะถูกลบออก (อย่างไรก็ตามจะถูกเก็บไว้เป็น null )
let customProperties = {
myCustomThing : 1 ,
numberOfCats : false ,
notDefined : undefined
}
set ( this , 'intercom.user' , customProperties ) ;กลายเป็น
{
my_custom_thing : 1 ,
number_of_cats : false
} บริการ intercom เผยถึงวิธี API สาธารณะหลายวิธีที่ตรงกับ JavaScript API ของ InterCom.com สำหรับรายละเอียดทั้งหมดเกี่ยวกับ API ลูกค้าอ่านเอกสารอินเตอร์คอม
| ชื่อ | พิมพ์ |
|---|---|
| AutoupDate | บูลีน |
| hidedefaultlauncher | บูลีน |
| Isopen | บูลีน |
| ถูกบูชา | บูลีน |
| ไม่ได้อ่าน | จำนวนเต็ม |
| ผู้ใช้ | วัตถุ |
มีการใช้วิธีการอินเตอร์คอมต่อไปนี้ ดู 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.