Skip to content

Lynn Proactive

Outbound marketing is the set of strategies that seeks to draw the attention of your users to generate business opportunities in a direct way. It uses unidirectional communication, without requiring an immediate response from the user. Its main purpose is to impact the greatest number of people regardless of whether they are actually target users.

The Lynn Proactive module is responsible for modeling, managing and controlling the behavior of the platform's OutBound interactions. This module offers a powerful tool that improves the customer service and provider experience, thanks to the omnicanality that the platform handles and the creation of cognitive self-care flows.

Lynn Proactive operates using a Contact that can be obtained from previous customer interactions with the platform or through massive imports (only for the WhatsApp channel), and a Campaign that is responsible for defining the contact strategy. Each message sent to a Contact through a Campaign is represented in the platform as a Campaign Record.

Definitions

Campaign

  1. The Campaign belongs to a Tenant.

  2. A Tenant can have multiple campaigns (five for the current Preview version)

  3. Identified by a Name, in addition to its ID for API administration.

  4. Campaign Types:

    1. Simple Message: Send a message to the customer and wait for its response to create a session.

    2. Multiple Message: Send a message to the customer and automatically create a session. Note. WhatsApp channel does not support Multiple Message for messages sent through templates.

  5. Execution Modes:

    1. Manual: The start and stop of the campaign require the action of an administrator.

    2. Scheduled: The start and stop of the campaign will be automatically performed according to the configured start and end date. During this period, the campaign will behave as AlwaysOn.

    3. AlwaysOn: The campaign will always be in a started state. Campaign records created will be automatically processed. This execution mode supports scheduled

  6. Category: Used to group multiple campaigns. This parameter becomes more relevant when configuring contacts in blacklist.

  7. Validity: Determines the validity date of the campaign. After this date:

    1. the execution of the campaign will be stopped

    2. the customer's reaction to the campaign will be discarded

    3. new campaign records will not be added.

  8. Validity in hours: Determines the time within which the customer's reaction will be accepted after a proactive contact. After this time the reaction will be discarded and the session will start using the default Tenant intention.

  9. Intention to execute: Intention to be executed when the customer reacts to a proactive message. It can be any intention associated with the Tenant.

Contact

  1. The contact belongs to the Tenant

  2. It is the representation of a client in a channel (WhatsApp, Teams, Facebook, etc.)

  3. A contact can be used by multiple campaigns

  4. Channel NO WhatsApp contacts, can only be obtained by Lynn from the interaction with the customer

  5. Channel WhatsApp contacts can be imported in bulk

  6. Contacts can be added to a blacklist (DND) which can refer to a campaign, or a group of campaigns identified by a common category.

Campaign Registration

  1. The registration belongs to the campaign

  2. It represents a message processed by a campaign associated with a contact at a given time.

  3. Types of registration:

    1. External: The result of processing the registration is the sending of a message to the customer.

    2. Internal: The result of processing the registration is to start a Lynn session that has entities obtained at the time of creating the registration. This behavior allows to solve complex use cases, making use of the functionalities offered by self-service flows.

  4. It has a reference to the contact.

  5. States:

State Description
Ready The record will be processed when the campaign is executed. Validated and ready to be sent.
InProgress Lynn has the record in progress to be sent.
Sent It has been sent, and the receipt has been confirmed by the social network.
Confirmed Confirmation of delivery or reading by the social network.
Reacted State when the user reacts to the proactive message.
SentInSession User reacted with an active session. Counted within reacted.
Error An error occurred while processing the campaign record.
Cancel When the campaign record is canceled from the self-service flow.
Dnd When executing the record, the contact is on the Blacklist for the campaign.
  1. Additional Information:

    1. For WhatsApp channel: contains the information necessary to hire the client through a WhatsApp template. These parameters vary according to the provider.
    2. For non-WhatsApp channels: contains the message to be sent to the customer.
  2. Data: Contains the name and value of the entities that will be added at the time of creating the record.

  3. MTM Data: Contains the list of parameters that will be sent in the MTM template. Only applies to the WhatsApp channel.

  4. MTM Header: Contains the list of parameters that will be sent in the MTM header. Only applies to the WhatsApp channel. The structure of these parameters varies according to the provider.

  5. MTM Body: Contains the list of parameters that will be sent in the body of the MTM template. Only applies to the WhatsApp channel. The structure of these parameters varies according to the provider.

  6. Records the result of the message sending action.

  7. Can be reused by changing its status to Ready, maintaining the history of previous executions.

Canals that support Outbound

All channels, except the Widget, can be used by Lynn Proactive.

Note. The Widget requires access (via Web) and authentication of the user, so it would be impossible to deliver a message when the user is offline.

Architecture

Components

Outbound Manager

The Outbound Manager is an internal component associated with the Lynn Core that is responsible for the administration, monitoring and execution of Campaigns. A Campaign is the logical representation of a proactive communication strategy towards a group of Contacts. Administrator or Editor permission (with special permissions assigned to a campaign) is required to manage this component.

The Outbound Manager performs the following functions:

  1. Contact administration.

  2. Establish the relationship between a contact and a channel.

  3. Establish the relationship between a contact and a campaign

  4. Start, stop and monitor campaigns.

  5. Establishes communication with the Channel Gateway to make contact with the customer effective.

  6. Monitoring and execution of campaign records.

  7. Update the status of campaign records.

  8. Outbound Importer

    Internal component associated with the Lynn Core responsible for loading and importing Contacts and generating Campaign Records.

    The Outbond Importer performs the following functions:

  9. Import contacts of WhatsApp type.

  10. Generate campaign records from existing contacts.

  11. Generate campaign records for the WhatsApp channel, starting from a custom import using a .csv file.

The Outbound Sender

Is an internal component associated with the Messaging Gateway that is responsible for sending messages received from the Outbound Manager, making use of the connection interface with the different integrated channels. This communication is effective thanks to the contact information associated with the campaign record.

The Outbound Sender performs the following functions:

  1. Collect from the communication channel the information necessary for creating a contact.

  2. Process the messages coming from the Outbound Manager and deliver them to the client according to the communication channel.

  3. Notify the Outbound Manager of the result of sending the messages through the different channels.

Views

Campaign View

The main view that allows management of the Lynn Proactive module. Administrator permission or Editor permission (with permissions on at least one campaign) is required to access this view.

Notes:

  • Editors will only have visibility over the campaigns for which they have administration permission.

  • In the production environment, campaigns are not created, which is why the "+" icon is visible in the testing environment's campaign view.

A toolbar is presented, containing:

  • Dropdown menu to select the Division you want to work with.
  • Access to the Flow Designer view. Check how to configure this action HERE.
  • Button to manage the Contact List. Check how to configure this action HERE.
  • Button for creating WhatsApp Templates. Check how to configure this action HERE.
  • Button for creating and managing Categories.
  • Access to the form for creating a New Campaign. Check how to configure this action HERE.

In the campaign list, several buttons can be seen that allow you to perform actions on each campaign:

Icono Action Description
Validate Button that allows updating the selected campaign.
Run Campaign Only available for campaigns with expiration date greater than the current date and manual execution mode.
Information Button activated when the expiration date is earlier than the current date, displaying information related to the campaign.
Campaign Data Access to the Campaign Data view.
Download Contact Template Allows selecting contacts available according to their channel and defining the message that will be sent proactively. Configuration Fields
Upload Data List Create campaign records from the import of the .csv file.
Upload Campaign Data Mass import of WhatsApp contacts and automatic creation of campaign records. This import requires a .csv file with contact information. For more details, refer to Configuration of templates for contact list loading
History of uploaded records Access to the campaign history view.
Edit Campaign Opens a pop-up window where the campaign configuration data can be edited.
Copy Campaign Opens a pop-up window with the configuration data of the campaign being copied for editing.
Enable Editors Adds permissions to Tenant Editors to manage the campaign. Visible only to tenant administrators.
Delete Campaign Visible only to tenant administrators.

Contact View

This view allows you to manage the contact list for the campaign. It's essential to highlight that if a contact appears with the "🚫" symbol in the channel column, it is blacklisted. Also, from the filters located in each column, searches can be applied to determine if a contact is blacklisted or not.

A toolbar is presented, containing buttons that allow performing bulk actions on the selected contacts from the list:

Icon Action Button Description
Clear Filters This button allows clearing any applied filters in the contacts list.
Delete Contacts This action will permanently delete the selected contacts along with associated campaign records. A pop-up window is displayed, allowing certification of the selected contacts and requiring the password for deletion.
Manage Blacklist Activates a pop-up window where you can specify whether the add or remove from the blacklist action applies to all existing campaigns and campaign categories where the selected contacts are located.Configuration Fields
Upload WhatsApp Contact List Allows selecting .csv files with new contacts.
New Contact Allows entering a new contact with details such as name, channel type, or other relevant information like phone number or email.
Return to Campaign View Button that allows returning to the campaign view.

âš  Warning: It is recommended to back up the campaign records before deleting contacts.

Additionally, within the list, each contact can be:

  • Edited: Contacts from Non-Voice channels can only update the contact name and a General information column. For Voice channels, it allows updating the name and phone number of the contact.
  • Deleted: A confirmation window will appear before proceeding with the deletion.

Campaign Record View

This view allows managing campaign records.

A toolbar is provided, containing buttons that allow performing bulk actions on the selected campaigns from the list:

Icon Action Button Description
Clear Filters This button allows clearing any applied filters in the records list.
Export Records Allows exporting campaign record data to a .csv file. If no records or group of records are selected, the .csv file will contain all records of the campaign.
Delete Records This action will permanently delete the selected records. A pop-up window is displayed, allowing certification of the selected records and requiring the password for deletion.
Add Record Adds a new campaign record.
Manage Contact List This button takes you to the contacts view, allowing you to manage the contact list for the campaign.
Go Back Button that allows returning to the campaigns view.

Additionally, within the list, each record can be:

  • Edited: The data that can be edited may vary depending on the channel.
  • Deleted: A confirmation window will appear before proceeding with the deletion.

Additionally, it is possible to:

  • Verify the logs of each record by clicking the "Arrow" icon in the first column. Here, a summary of the states and status messages for each record is displayed, along with the date and time they occurred. If the record is reused, a new log is generated.
  • Filter by the status of the records using the filter located in the Status column.

Category view

This view allows grouping campaign records. This parameter becomes more relevant when configuring contacts in the blacklist.

A toolbar is presented, containing buttons that allow performing bulk actions on the selected categories from the list:

Icon Action Button Description
Clear Filters This button allows clearing the applied filters in the category list.
Delete Category This action will permanently delete the selected records. A window is displayed to confirm the selected records and enter the required password for deletion.
New Category Button that allows adding a category record. Configuration Fields
Go Back Button that allows returning to the campaigns view.

Additionally, within the list, each record can be:

  • Edited: The data to edit may vary depending on the category record.

  • Deleted: A confirmation window will appear for deletion.

Available actions in the diagram

In the Tenant diagram there is a set of actions under the Outbound category, allowing to interact with the Lynn Proactive module from the self-service flow.

The available actions are:

  • Campaign Contact Manager: Create a contact based on the channel through which the session was initiated. If the contact already exists, it will be updated. Returns the Contact ID, which is mandatory to generate a campaign record from the flow. Check how to configure this action HERE.

  • Campaign WhatsApp/Voice Contact Manager: Create a unique contact for WhatsApp and Voice channels. It has the same functionality and behavior as the Campaign Contact Manager action.

Configuration parameters Description
CONTACT_NAME_EXPRESSION String Expression to get the contact name.
CONTACT_NUMBER_EXPRESSION String Expression to get the contact number.
UPDATE_CONTACT_NAME Boolean to indicate whether the contact name is updated whenever the customer goes through this action. By default, this parameter is set to NO.
CONTACT_IDENTIFIER_ENTITY String Entity to return the ID of the created/updated contact.
  • Administration of the Campaign Records: Create a campaign record.

Parameters Configuration:

  • CAMPAIGN_ID: Reference to the campaign ID. Each action can create records associated to a single campaign.

  • CONTACT_IDENTIFIER_ENTITY: Resultant Entity of the Campaign Contact Manager action, which contains the contact identifier.

  • SCHEDULE_CONTACT_ENTITY: String Expression to define a date and time to execute the campaign record. This field will only take effect if the campaign is in AlwaysOn mode or within the active period of a campaign in Scheduled mode. Expected date format: dd/MM/yyyy HH:mm:ss

  • IS_INTERNAL: Boolean Expression to determine if the campaign record will be processed as internal or external.

  • ALLOW_DND_CONTACT: Boolean indicating if the campaign record will be created despite the contact being on the Blacklist. By default, this parameter is set to NO.

  • MULTIPLE_ACTIVE_RECORDS: Boolean indicating if a new record will be created everytime the user passes through this action and there is a previous record in the Ready state (YES), or if the existing record will be updated (NO). By default it is set to NO.

  • RECORD_ID_ENTITY: String Entity where the ID of the campaign record created/updated is returned.

    • **OPERATION_ENTITY: String Entity where the action performed on the campaign record is returned: NEW, UPDATE or ERROR.

      • Message Configuration by Channel

        • Non-WhatsAppd Channels: NEW, UPDATE or ERROR.

          • OUTBOUND_MESSAGE_EXPRESSION_NOMBRE_CANAL: String Expression to define the message to be delivered to the customer.

          • NOMBRE_CANAL_ADDITIONAL_DATA: Entity List to be associated with the campaign record. These entities will be available when the customer reacts to the pro-active contact, or in the execution of an internal record.

        • WhatsApp Channel: These data is pulled from the WhatsApp provider's platform. Its structure varies depending on the provider.

          • TEMPLATE: Identifier or name of the configured and approved template on WhatsApp.
          • NAMESPACE: Name of the workspace to which the template is associated.
          • LOCALE: Language of the template.
          • WHATSAPP_NUMBER: Number of the service to which the template is associated. It represents the provider according to the configuration of the channel.
          • HSM_TYPE: Type of template to use: Text message (MTM) or multimedia message (MMT).
          • HSM_MTM_DATA: String List to define the parameters that the MTM template will use and its position in the message. Each element is evaluated as an expression.
          • HSM_MMT_HEADER_DATA: String List to define the parameters that the MMT template will use in the header of the message. Each element is evaluated as an expression.
          • HSM_MMT_BODY_DATA: String List to define the parameters that the MMT template will use in the body of the message. Each element is evaluated as an expression.
        • Voice Channel

          • VOICE_ADDITIONAL_DATA: Entity List that will be associated to the campaign record. These entities will be available when the customer reacts to the pro-active contact, or in the execution of an internal registration.
  • Campaign DND Manager: Add or remove a contact from the blacklist for a campaign. Check how to configure this action HERE.

  • Campaign DND Manager By Category: Add or remove a contact from the blacklist for a group of campaigns belonging to the same category.

    • Configuration parameters:

      • CAMPAIGN_CATEGORY: Reference to the category

      • CONTACT_IDENTIFIER_ENTITY: entity to obtain the contact's identifier

      • DND_CONTACT_EXPRESSION: Boolean Expression to define if the contact will be (true) or not (false) in the blacklist.

  • Campaign DND Validator: Validate if a contact is blacklisted for a specific campaign. To configure this action, refer to HERE.

  • Campaign DND Validator By Category: Validate if a contact is blacklisted for a specific category. Check how to configure this action HERE.

  • List Campaign Records By Contact: Return a list of records in Ready state, given a campaign and a contact.

    • Configuration parameters:

      • CONTACT_IDENTIFIER_ENTITY: entity to obtain the contact's identifier

      • CAMPAIGN_ID: Reference to the campaign..

      • RECORDS_RESULT: String Entity It contains a list of records in JSON Array format.

        records:[{CampaignCategory:Test,CampaignId:a47be8af-d40d-452c-9a3e-bcf668fcd1dc,RecordId:c02c916c-0d41-4ed4-933b-4c029d7296d9,ScheduledStartDate:,CampaignType:1,CampaignName:DemoOutboundTest}]

  • Cancel Campaign Records By Contact: Delete a campaign record that is in Ready status.

    • Configuration parameters:

      • CONTACT_IDENTIFIER_ENTITY: entity to obtain the contact's identifier

      • CAMPAIGN_RECORD_ID: String Expression To define the ID of the campaign record to be deleted.

      • CANCEL_RESULT: Boolean Entity Returns if the record was deleted (true) or not (false).

Use Cases

Below are described the cases that Lynn Proactive can solve:

Schedule Contacts and Tasks

Case: A customer who is navigating through the self-service flow tries to contact an executive, but the Contact Center is either closed or the wait time is very long.

Solution

  1. Offer the customer a self-service flow that allows them to indicate the date and time, within the business hours, when they would like to be contacted by an executive.

  2. Generate a scheduled campaign record.

  3. If the record is created as external, once the scheduled date arrives, a message will be sent to the customer notifying them of the availability to assist them and direct their action towards a direct transfer, without the need to go through the main flow.

  4. If the record is created as internal, a session can be created to validate the availability of the Call Center for assistance. If high wait times are detected, the contact with the customer can be rescheduled for another time, and an additional external record can be generated to notify the customer of the change and the reason for it.

Note: It is possible to create a flow that validates the scheduled records for a contact and allows them to be canceled at the customer's request.

Collection

Case: It is necessary to contact the customer to collect payment for a received service, but it is necessary to comply with the defined laws regarding contact intervals and permitted communication channels.

Solution:

  1. Import a group of Telephone contacts, where one of the fields is the date of the initial contact, and generate records of type Internal.

  2. Consult an external service to determine if the customer has already made the payment, in order to decide whether to continue or interrupt the collection process.

  3. Implement a flow in the Tenant that incorporates a sequence of accounting channels and controls the date of the next contact.

  4. For each internal record processed, generate two records:

    An internal record that validates the next contact cycle.

    An external record that effectively contacts the customer.

Genesys Open Messaging (Genesys Cloud)

Case: A Call Center that supports its services on the Genesys Cloud platform has implemented asynchronous messaging, allowing conversations to remain active so that customers can continue the conversations at their preferred pace. However, if the customer abandons the conversation or Lynn ends the session due to inactivity, and the executive sends a response to the customer, but the customer is no longer available in an active chat session.

Solution: The integration with Genesys Open Messaging utilizes the campaign module to notify customers, through proactive messages, when the executive sends them a message and there is no active chat session. This ensures that no messages are lost in the conversation and allows the chat session to be restored with the customer's response, without the need to navigate through the self-service flow again.