Use events method

Front-end events are actions on the product UI, such as button clicks and changes/updates to the UI field values. Events method is an interface that the developer platform provides, to enable your app to react to front-end events.

To enable your app to react to front-end events, in the app.js file,

  1. Subscribe to the app.initialized event, through an event listener. When the app is initialized, the parent application passes a client reference to the app.
  2. After app initialization,
    1. Use the client reference, subscribe to <Event name> and register a callback method to be executed when the event occurs.
    2. Define the callback method.

When the event occurs, a payload is passed to the callback method. Let us call this payload event. event.type returns the name of the event. The event.helper.getData() helper method returns a JSON object that contains information pertaining to the event. Your app logic can process this data into meaningful results.

For a demonstration of this feature, take a look at the events method sample app.

This section,

  • Lists, page-wise, all the front-end events to which the app can react.method.
  • Provides sample payloads that are passed to the callback methods, when the events occur.
  • Describes the payload attributes.

Front-end events are of the following types: Click events, Change events, Intercept events.

Currently, for Freshsales Classic, only Change events are supported.

Change events

These events occur when a user changes the value of a field on the UI.

Note:User need not submit the modified value for the event listeners to pick up the event and execute the callback; merely changing the values is sufficient for the event trigger.

The event.helper.getData() method returns a JSON that contains the old and new values of the changed field.

Intercept events

These are events that are paused, while the event listener and the corresponding callback run. The app can choose to allow the original event to complete or block the event.

To enable your app to intercept an event, after app initialization,

  1. Use the client reference, subscribe to event, register a callback method to be executed when the event occurs, and set intercept as true.
  2. Define the callback method.
  3. To allow the event to proceed, use the event.helper.done() helper method.
  4. To prevent the event from completion, use the event.helper.fail(‘errorMessage’) helper method.
  5. To obtain data pertaining to the event, use the event.helper.getData() helper method. If your app is intercepting a click event, the method returns an empty JSON.

Lead details page events

Event nameEvent trigger
lead.updateWhen a user updates a lead.

Contact details page events

Event nameEvent trigger
contact.updateWhen a user updates a contact.

Deal details page events

Event nameEvent trigger
deal.updateWhen a user updates a deal.

Sales account details page events

Event nameEvent trigger
account.updateWhen a user updates an account.

Conversation editor page events

Event nameEvent trigger
chatConversation.onSendMessageWhen an agent clicks the Send button. The event payload is the chatConversation.onSendMessage object.

Event and payload descriptions

lead.update

Use the sample code shown on the right pane > Sample code tab, to enable your app to react when a user updates a lead.

contact.update

Use the sample code shown on the right pane > Sample code tab, to enable your app to react when a user updates a contact.

deal.update

Use the sample code shown on the right pane > Sample code tab, to enable your app to react when a user updates a deal.

account.update

Use the sample code shown on the right pane > Sample code tab, to enable your app to react when a user updates a sales account.

chatConversation.onSendMessage

Use the sample code shown on the right pane > Sample code tab, to enable your app to respond when an agent clicks the Send button in the conversation reply editor for reply messages or email editor for reply emails and forward emails.

Note:The chatConversation.onSendMessage method is only triggered when the send button is clicked on the reply editors of conversations and emails and not on the email conversation creation editor.