twilio.flex

Meya app setup

  • Add Twilio Flex integration to your Meya app
  • Get integration webhook and save for later
    meya webhooks | grep twilio_flex

Twilio Flex setup

Create API Key

  • Access API Key management
    https://www.twilio.com/console/project/api-keys
  • Create a new API Key
  • Add the new SID and secret to
    (@ vault.twilio.api_key_sid ) and (@ vault.twilio.api_key_secret )
    respectively

Enable Flex

  • Access your Twilio account
    https://www.twilio.com/console
  • Add account SID to (@ vault.twilio_flex.account_sid )
  • Enable Twilio Flex
    https://www.twilio.com/console/flex/overview

Enable Programmable Chat webhooks

  • Access Flex Channel Service created by Flex setup
  • Add service SID to (@ vault.twilio_flex.flex_chat_service )
  • Go to webhooks on side menu and add Meya webhook saved earlier to "Post-Event Webhooks"
  • Enable onMessageSent and onMediaMessageSent

Enable Task Router webhooks

  • Access your Task Router Workspace
  • Go to settings on side menu and add Meya webhook to Event Callbacks
  • Enable Reservation Accepted, Reservation Completed, Task Canceled and TaskQueueEntered events

Setup Web channel

  • Access Flex Messaging Settings
  • Edit web channel
  • Set INTEGRATION TYPE to Task
  • Set TASK CHANNEL to Programmable Chat

Launch Twilio Flex

  • Access your Flex Instance
  • Inside Flex instance go to Admin > Developer setup
  • Add flexFlowSid to (@ vault.twilio_flex.flex_flow_sid )

Element details

type: meya.twilio.flex.integration
class: TwilioFlexIntegration
path: /meya/twilio/flex/integration/integration.py
signature: -

Fields

field

description

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

required

signature

default

type

spec

Override the original spec for this element.

null

Spec

enabled

Enables the integration, allowing it to process events and HTTP/WS entries.

true

bool

filter

rx_sub: true
rx: true
tx: "\nmeya.event.entry.interactive\nOR meya.csp.event\nOR meya.button.event.click\n
OR meya.form.event.submit\n"
tx_pub: true

IntegrationFilter

verify_token

The token to be verified for each incoming request. You need to add the verify_token=YOUR_TOKEN query parameter to integration's webhook URL.

null

str

max_attachment_size

Controls maximum attachment size supported by the integration in bytes.

null

int

account_sid

Twilio project Account SID.

str

auth_token

Twilio project auth token. This field is being deprecated, switch to api_key_sid and api_key_secret as soon as possible. For more information, see https://www.twilio.com/console/project/api-keys

null

str

api_key_sid

Twilio API Key SID. Access https://www.twilio.com/console/project/api-keys to manage API Keys.

null

str

api_key_secret

Twilio API Key secret. Access https://www.twilio.com/console/project/api-keys to manage API Keys.

null

str

phone_number

Twilio active number for use with Meya. Note, this can also be a Message Service ID. For SMS/calls this will generally be a standard E.164 number e.g. +15554440000. For WhatsApp this needs to be a prefixed E.164 number e.g. whatsapp:+15554440000. For a message service, you just use the Message Service ID directly e.g. MGXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.

null

str

markdown

The markdown features that are supported by this integration. Check the Markdown guide for more info.

false

list
bool

typing

When set to false, all typing indicators received by the integration will be ignored.

true

bool

avatar

crop: circle

CspIntegrationAvatar

agent_command_prefix

"/"

str

transcript

count: 25
user_prefix: user
bot_prefix: bot
agent_prefix: agent
note_prefix: 📝

CspIntegrationTranscript

agent

name:
avatar:

AgentSpec

flex_flow_sid

str

flex_chat_service_sid

str

Usage reference

Basic

type: meya.twilio.flex.integration
account_sid: STRING
flex_flow_sid: STRING
flex_chat_service_sid: STRING

Full

type: meya.twilio.flex.integration
spec:
  type: STRING
  data:
    STRING: ANY
  timeout: 123
  trigger_when: ANY
enabled: false
filter:
  rx_sub: STRING
  rx: STRING
  tx: STRING
  tx_pub: STRING
verify_token: STRING
max_attachment_size: 123
account_sid: STRING
auth_token: STRING
api_key_sid: STRING
api_key_secret: STRING
phone_number: STRING
markdown:
  - format|linkify|breaks|typographer
typing: false
avatar:
  crop: circle|square
agent_command_prefix: STRING
transcript:
  count: 123
  user_prefix: STRING
  bot_prefix: STRING
  agent_prefix: STRING
  note_prefix: STRING
agent:
  name: full|first|first_initial|first_last_initial|first_initial_last_initial
  avatar:
    image: STRING
    crop: circle|square
    monogram: full|first|first_initial|first_last_initial|first_initial_last_initial
flex_flow_sid: STRING
flex_chat_service_sid: STRING