How to use the Aircall Everywhere in any CRM ?
Include this project in your dependency
npm install aircall-everywhere
Constructor
You need to create an instance to use the library. The constructor has a settings argument:
afterPhoneLoaded
: Callback function after the phone is fully loaded and the connexion between the phone and the CRM is establishedintegrationToLoad
: You can specify a CRM from which specific settings can be retrieved. Only zendesk
available for now.domToLoadPhone
: You must specify in which element you want to load the phone. Query selector string.
Example:
import AircallPhone from 'aircall-everywhere';
const aircallPhone = new AircallPhone({
afterPhoneLoaded: () => {
console.log('phone loaded');
doStuff();
},
domToLoadPhone: '#phone',
integrationToLoad: 'zendesk'
});
getSetting
You can retrieve specific integration settings with getSetting
.
Example with zendesk
:
const redirectToTicket = aircallPhone.getSetting('display_ticket');
on & send
You can send messages to the phone and listen messages coming from it.
events from the phone:
events the phone listens to:
dial_number
: with {phone_number: <number>}
argument, you can ask the phone to dial the number.exit_keyboard
: with no argument, you can ask the phone to exit the keyboard view if it is on.
Full Example:
import Aircall from 'aircall-everywhere';
const aircallPhone = new AircallPhone({
afterPhoneLoaded: () => {
console.log('phone loaded');
doStuff();
},
domToLoadPhone: '#phone',
integrationToLoad: 'zendesk'
});
aircallPhone.on('incoming_call', () => {
putPhonePopupInFront();
});
myCRM.on('phone_button_clicked_event', number => {
aircallPhone.send('dial_number', { phone_number: number });
});
more events to come...
Development
You can run the demo webpage with:
npm start
tests are available:
npm run test
npm run test-watch
npm run coverage