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'
}
} ,
...
} ; في عالم الاتصالات الداخلية. لدى المستخدم اسم وبريد بريد إلكتروني ، وهو عبارة عن بنية جيدة لتتبع تاريخ جميع التفاعلات مع شخص واحد.
يمكنك جعل ember-intercom-io على دراية بسياق "مستخدم" (التحول إلى وضع "المستخدمين" بدلاً من وضع "LEADS") عن طريق إضافة كائن إلى خدمة intercom (أي خدمة مصادقة المستخدم الخاصة بك).
عندما يقوم التطبيق بتحديث كائن intercom.user ، سيتم إرسال التغييرات إلى الاتصال الداخلي وينعكس في لوحة معلومات الاتصال الداخلي.
التطبيق/الخدمات/المصادقة
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. للحصول على تفاصيل كاملة حول واجهة برمجة تطبيقات العميل ، اقرأ مستندات الاتصال الداخلي.
| اسم | يكتب |
|---|---|
| AutoupDate | منطقية |
| HideeFaultLauncher | منطقية |
| isopen | منطقية |
| isbooted | منطقية |
| unreadcount | عدد صحيح |
| مستخدم | هدف |
يتم تنفيذ أساليب الاتصالات الداخلية التالية. انظر services/intercom.js للحصول على التفاصيل الكاملة.
boot()
update()
shutdown()
hide()
show()
showMessages()
showNewMessage()
trackEvent()
getVisitorId() إرجاع المعرف الحالي للمستخدم المسجل.
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.mebly-cli.com/.
حقوق الطبع والنشر (C) 2015 Levanto Financial ، 2016-18 Mike Works ، Inc.