Home Other channels
🪵

Other channels

Pranav Raj
By Pranav Raj
• 9 articles

How to setup a Facebook channel?

If you are using a self-hosted Chatwoot installation, please setup your Facebook app as described in the this guide. For the cloud version of Chatwoot, please follow the steps below. Step 1. Go to Settings → Inboxes → “Add Inbox”. Step 2. Click on the "Messenger" icon. Step 3. Click the Facebook login button. It will open a new window for you to login. Step 4. Authenticate with Facebook and select the page you want to connect. Enable all permissions shown in the list. This will help Chatwoot to perform all the desired actions smoothly. Step 5. You can now select your Facebook page from the dropdown menu that appears on Chatwoot. Step 6. "Add agents" to your Facebook inbox. You have successfully created a Facebook inbox. Whenever a customer sends a message to your Facebook page, you will be able to see and reply to it in Chatwoot. Additional Inbox settings​ Your freshly configured Facebook inbox should now appear in your list of inboxes. To see this and to make additional settings in your Facebook inbox, go to Settings → Inboxes → click the gear icon on the associated Facebook inbox. You will see the following screen: Settings tab​ Enable channel greeting. Once you enable this, Chatwoot will send a greeting message to new conversations created through your Facebook inbox. Enable CSAT. Once you enable this, your Customer Satisfaction survey will be launched every time a ticket is resolved. The CSAT results can be viewed later in the Reports section. Reauthorize. Whenever you need to reconnect and reauthorize your Facebook page, do it from this button. Collaborators tab​ Click on the Collaborators tab. Here, you can add Agents to the Inbox or delete Agents who have been already added in the Inbox. You can also enable or disable the automatic assignment of new conversations to the agents added to this inbox. Click on Update to save the changes. Business Hours tab​ Click on the Business Hours tab. In this section, you can set the working hours of your team associated with the Facebook inbox. Click on the check box for Enable business availability for this inbox if you have well-defined business hours. Once the check box is ticked, the below section opens up. You can write your message to be displayed to the customer during OFF business hours. You can also select the available business hours for each day of the week, along with the proper time zone. Click on the Update Business Hour Setting Button.

Last updated on Apr 10, 2024

How to setup an Instagram channel?

If you are using a self-hosted Chatwoot installation, please set up your Instagram app as described in this guide. For the cloud version of Chatwoot, please follow this guide. Prerequisites Before bringing your Instagram inbox to Chatwoot, you need to make sure that you have a Business Instagram account. Step 1. Set up a Business Instagram account if you don't have one. This guide from Instagram will help you do the same. Step 2. Make sure your Facebook page is connected to this Instagram account. To connect Facebook and Instagram, follow these steps: 1. Go to https://www.facebook.com/pages/?category=your_pages. 2. Select Your Page. 3. Go to Settings. 4. Select “Instagram” and connect your business account as shown below: Now switch back to Chatwoot App. How to create an Instagram inbox in Chatwoot? Step 1. Go to Settings → Inboxes → “Add Inbox”. Step 2. Click on the "Messenger" icon. Step 3. Click on the Facebook login button. It will open a new window for you to log in. Step 4. Authenticate with Facebook, select an Instagram account and select the page you want to connect. Enable all permissions shown in the list. This will help Chatwoot to perform all the desired actions smoothly. Step 5. "Add agents" to your Instagram inbox. You have successfully created an Instagram inbox. Whenever a customer sends a message to your Instagram account, you will be able to see and reply to it in Chatwoot.

Last updated on Apr 10, 2024

How to setup a Twitter channel?

NOTE: Twitter integration has been temporarily discontinued as a result of modifications made by Twitter to its APIs. This includes limitations on the number of requests raised per minute, plus substantial pricing changes. With a Twitter inbox, you can manage both tweets mentioning you and your Twitter DMs from Chatwoot. If you are using a self-hosted Chatwoot installation, please set up your Twitter inbox as described in this guide. For the cloud version of Chatwoot, please follow the steps below. Step 1. Go to Settings → Inboxes → “Add Inbox”. Step 2. Click on the "Twitter" icon. Step 3. Click on the "Sign in with Twitter" button. Step 4. You will be redirected to Twitter. Click on the "Authorize app" button. Step 5. "Add agents" to your Twitter inbox. You have successfully created a Twitter inbox. You will now be able to manage Twitter DMs as well as tweets mentioning you from Chatwoot. Additional Inbox settings​ Your freshly configured Twitter inbox should now appear in your list of inboxes. To see this and to make additional settings in your Twitter inbox, go to Settings → Inboxes → click the gear icon on the associated Twitter inbox. You will see the following screen: You can make some fundamental changes here. Settings tab​ Enable channel greeting. Once you enable this, Chatwoot will send a greeting message to new conversations created through your Twitter inbox. Enable CSAT. Once you enable this, your Customer Satisfaction survey will be launched every time a ticket is resolved. The CSAT results can be viewed later in the Reports section. Collaborators tab​ Click on the Collaborators tab. Here, you can add Agents to the Inbox or delete Agents already added to the Inbox. You can also enable or disable the automatic assignment of new conversations to the agents added to this inbox. Click on Update to save the changes. Business Hours tab​ Click on the Business Hours tab. In this section, you can set the working hours of your team associated with the Twitter inbox. Click on the check box for Enable business availability for this inbox if you have well-defined business hours. Once the check box is ticked, the below section opens up. You can write your message to be displayed to the customer during OFF business hours. You can also select the available business hours for each day of the week and the proper time zone. Click on the Update Business Hour Setting Button.

Last updated on Apr 10, 2024

How to setup a WhatsApp channel?

You can manage your WhatsApp business account conversations from Chatwoot. To set it up, you have three options to choose your provider: 1. WhatsApp Cloud API 2. Twilio 3. 360Dialog We'll explain all the procedures in this guide. Prerequisites Before bringing your WhatsApp inbox to Chatwoot, you need to set some things up in the API provider you want to use. These prerequisites are explained below. Using WhatsApp Cloud API If you are planning to use the WhatsApp Cloud API, the following two prerequisites are needed. I. Configure your Facebook Developer App​ First, you need to create your Facebook Developer app with WhatsApp Product enabled. Go to the WhatsApp Cloud API Guide and navigate to the section called Set up Developer Assets and Platform Access and follow the steps. Once you finish this step, you can now configure your required phone numbers in the WhatsApp section of your Facebook developer app. If you complete the steps successfully, you should be able to obtain the Phone Number Id and Whatsapp Bussiness Account ID, as shown in the below screenshot. Chatwoot will require these values for creating the WhatsApp Inbox. II. Configure a system user for your Facebook Business Manager​ Create a system user in your Business Manager with access to the WhatsApp App. Generate an access token for the user, which will be required as the API key for setting up an inbox in Chatwoot. When generating the access token, make sure the whatsapp_business_management and whatsapp_business_messaging permissions are selected. Step 1. Create a system user in the System Users tab of Business Manager. Step 2. Add the system user. Under the WhatsApp Accounts tab, select “Add People” and select the system user to grant access to the WhatsApp Business account. Step 3. Generate the access token and request permissions. Refer to this video for detailed steps. Using Twilio If you are planning to use the Twilio API, the following prerequisites are needed. To connect to a WhatsApp inbox, you'll need to configure a callback URL in the Twilio inbox. Follow the steps below. 1. Login to your Twilio Console. 2. Go to Programmable SMS -> Whatsapp -> Senders. 3. You will be able to see your phone number. Click on it. It will display a field like the one shown below. 4. Provide https://app.chatwoot.com/twilio/callback as the value for WHEN A MESSAGE COMES IN input. Twilio Studio If you use Twilio Studio for a custom conversation flow, updating the webhook URL directly will break your existing integration. For such cases, you can follow the steps given below. 1. Identify the step in your flow where you want the agent handoff to happen. 2. Add a make http request widget as shown below with the given values. REQUEST METHOD : POST REQUEST URL: https://app.chatwoot.com/twilio/callback CONTENT TYPE: Application/JSON REQUEST BODY: {{trigger.message | to_json }} ( make changes as required based on your flow variables). HTTP request widget will forward the message body to Chatwoot. This will create a conversation in Chatwoot from where the agent can reply. 3. Make sure that your flow can handle the user responses to Agent Replies. Setting up WhatsApp Inbox in Chatwoot If your prerequisites are met, you can create your WhatsApp inbox in Chatwoot. Follow the steps outlines below. Step 1. Open your Chatwoot dashboard. Go to Settings → Inboxes → Add Inbox. Step 2. Click on the "WhatsApp" icon. Step 3. Choose an API provider. Based on your selection, you will see a different set of fields to be filled. Let us learn about each of them. Selecting WhatsApp Cloud API Choose "WhatsApp Cloud" as the API provider. The fields, as seen in this selection, are explained below. Finish the steps to obtain your Whatsapp Webhook Callback URL. Enable the webhook​ Configure the webhook in Facebook Developer App. Head back to the WhatsApp section in the Facebook Developer App. Navigate to the Configuration subsection and set up the Callback URL. - The value for the URL should be the same URL you obtained at the end of your Chatwoot inbox creation and will look like https://app.chatwoot.com/webhooks/whatsapp/+{phone_number}. - The value for the verify token should be the same value you configured for the Webhook Verify Token during inbox creation. You should also subscribe to message field events on your Facebook Developer app under Webhooks Fields. Once you finish all the steps, the section should look like the screenshot. Selecting Twilio Choose "Twilio" as the API provider. The fields, as seen in this selection, are explained below. Click "Create Twilio Channel" after filling in the information. Selecting 360Dialog Choose "360Dialog" as the API provider. Once you have completed the "Create Inbox" step, you can proceed with adding agents. Step 4. "Add agents" to your inbox. You have successfully created a whatsApp inbox. Additional Inbox settings​ Your freshly configured WhatsApp inbox should now appear in your list of inboxes. To see this and to make additional settings in your WhatsApp inbox, go to Settings → Inboxes → click the gear icon on the associated WhatsApp inbox. All the Additional Settings available are the same as those in your Twitter inbox. We recommend going through this link to understand the same. Supported media types Your WhatsApp inbox supports various media types, as summarized below. Audio Supported extensions: - aac - mp4 - mpeg - amr - ogg Supported for: Both end-user and the agent in Chatwoot Document Supported extensions: - text/plain - application/pdf - application/vnd.ms-powerpoint - application/msword - application/vnd.ms-excel - application/vnd.openxmlformats-officedocument.wordprocessingml.document - application/vnd.openxmlformats-officedocument.presentationml.presentation - application/vnd.openxmlformats-officedocument.spreadsheetml.sheet Supported for: Both end-user and the agent in Chatwoot Image Supported extensions: - jpeg - png Supported for: Both end-user and the agent in Chatwoot Video Supported extensions: - mp4 - 3gp Supported for: mp4 for both the end-user and the agent in Chatwoot, and 3gp for only the end-user. Sticker Supported extensions: image/webp Supported for: Only end-user FAQ​ How to configure multiple numbers under a single Facebook app?​ Facebook App allows configuring only a single Webhook endpoint. So create Inboxes in Chatwoot for all the numbers as required. You will need to configure the Webhook URL provided for only one of these inboxes in the Facebook app for all the other inboxes to work.

Last updated on Apr 10, 2024

How to setup an Email channel?

To manage your customer support/ticketing email from Chatwoot, you can create an Email inbox in Chatwoot. This is a complete guide to getting your Email channel up and running. This document is divided into three parts: 1. Creating an Email inbox 2. Settings for Gmail users 3. Creating a Microsoft Email inbox Feel free to jump to any section. Let's roll. How to create an Email inbox in Chatwoot? Step 1. Open your Chatwoot dashboard. Go to Settings → Inboxes → Add Inbox. Step 2. Click on the "Email" icon. Step 3. Enter the channel name (how you’d like to address this channel), and your support email, and click the "Create Email Channel" button. P.S. You will also see an option to select Microsoft as an Email provider. If you use an Outlook/Microsoft email, scroll to the "How to create a Microsoft Email channel?" section (last section) instead. Step 4. "Add agents" to your email inbox. You have successfully created an Email inbox. Step 5. Configure your email settings. Go to Settings → Inboxes → Email Inbox settings → Configuration tab. You will see three main settings here: 1. Forward to Email 2. Configure IMAP 3. Configure SMTP All three settings are explained in the following sections. How to forward emails to Chatwoot inbox? Step 1. Copy the "Forward to email address" from the Configuration tab under inbox Settings. Step 2. Configure the copied email address as the forwarding email address in the email inbox. P.S. Check the Gmail section below to learn how to add a forwarding address in Gmail. Step 3. Send a mail to the forwarding address added inbox and check the Chatwoot email inbox for the new email. How to configure IMAP for the Email channel? If you are using Gmail, scroll down to the IMAP section for Gmail below. Step 1. Go to Settings → Inboxes → Email Inbox settings → Configuration tab. Step 2. Select the checkbox Enable IMAP configuration for this inbox. You’ll be able to see the required fields as follows. 1. Address 2. Port 3. Email 4. Password P.S. If using a 2FA-enabled Gmail, scroll down to the "How to generate app password for Gmail?" section. If using a regular Gmail account, scroll down to the "How to allow less secure access to Gmail?" section. Step 3. Test if everything is working fine. Send an email to the IMAP-configured email in Chatwoot. Check Chatwoot inbox for the new email. Open the email conversation in Chatwoot and verify the email details. How to configure SMTP for the Email channel? Step 1. Go to Settings -> Inboxes -> Email Inbox settings page. Step 2. Select the "Configuration" tab. Step 3. To enable SMTP, select the checkbox "Enable SMTP configuration for this inbox". Fill in the fields below and click the "Update SMTP settings" button. 1. Address 2. Port 3. Email 4. Password P.S. If using a 2FA-enabled Gmail, scroll down to the "How to generate app password for Gmail?" section. If using a regular Gmail account, scroll down to the "How to allow less secure access to Gmail?" section. 5. Domain Step 4. Open an existing email Conversation in Chatwoot. Step 5. Type a reply message for the conversation and click the "Send" button. Verify that mail has been delivered. You can also check the recipient inbox for the delivered email. Settings for Gmail users How to enable IMAP for Gmail inbox? Step 1. Open your Gmail inbox and click the Settings icon in the top right corner. Click the "See all settings" button. Step 2. Select the "Forwarding and POP/IMAP" tab on the Settings page. Step 3. Choose the "Enable IMAP" option under the IMAP access section and click the "Save Changes" button. How to allow less secure access to Gmail? Note: This option is unavailable for Gmail accounts with enabled 2-step verification or those managed by an organization. Step 1. Go to Google Account Security. Step 2. Click on "Turn on access" under the "Less secure app access" section on the Security page. Step 3. Toggle "Allow less secure apps" to "ON". Now you can use your Gmail account password to configure IMAP/SMTP. How to generate app password for Gmail? Note: This option is for Gmail accounts with enabled 2-step verification or those managed by an organization. Step 1. Go to Google Account Security. Step 2. Click "App passwords" under the "Signing in to Google" section on the Security page. Step 3. Select the Mail app, select a device, and click "GENERATE". Use the generated password to configure IMAP/SMTP. How to add a forwarding address for Gmail? Step 1. Open your Gmail inbox and click the Settings icon in the top right corner. Click the "See all settings" button. Step 2. Select the "Forwarding and POP/IMAP" tab on the Settings page. Step 3. Click the "Add a forwarding address" button. It will ask for the forwarding email address. Enter the one from Chatwoot and click the "Next" button. Step 4. Confirm the forwarding address in the browser popup. The email inbox will send a verification code to the forwarding email address. Step 5. Copy the verification code from the Chatwoot email inbox. Step 6. Paste the verification code and click the "Verify" button. Step 7. Select the "Forward a copy of incoming mail" option. Choose the required action from the second dropdown and click the "Save Changes" button. How to create a Microsoft Email channel? Step 1. Open your Chatwoot dashboard. Go to Settings → Inboxes → Add Inbox. Step 2. Click on the "Email" icon. Step 3. Click on the "Microsoft" icon. Step 4. Add your Outlook/Microsoft email. Step 5. Enter your Microsoft/Outlook credentials. Step 6. Allow the "Chatwoot" app to read and reply to your email. Step 7. "Add agents" to your email inbox. You have successfully created a Microsoft email inbox. Step 5. Configure your email settings. Go to Settings → Inboxes → Email Inbox settings → Configuration tab. Note: Please do not change anything in Settings for now, as we have used the default values for IMAP and SMTP. We will be making these fields non-editable soon for Outlook accounts. We use default IMAP settings to fetch emails and SMTP to send; you don't need to set anything through configuration. Step 6. If your access token expires, you must re-authorize your Microsoft account by going to Settings -> Configuration.

Last updated on Apr 10, 2024

How to create an API channel inbox?

To create and configure an API channel inbox in Chatwoot installations, follow the step described below. Setup the API channel Step 1. Go to Settings → Inboxes → “Add Inbox”. Step 2. Click on the "API" icon. Step 3. Provide a name for the channel and a callback URL. Here is an example: Step 4. "Add agents" to your API inbox. The inbox setup is complete. Send messages to the API channel To send messages to the API channel, ensure you understand the following models and nomenclature used in Chatwoot. 1. Channel: Channel defines the type of source of conversations. E.g., Facebook, Twitter, API, etc. 2. Inbox: You can create multiple sources of conversations of the same channel type. E.g., You can have more than one Facebook page connected to a Chatwoot account. Each page is called the inbox in Chatwoot. 3. Conversation: A Conversation is a collection of messages. 4. Contact: Each conversation has a real-life person associated with it, called a contact. 5. Contact Inboxes: This is the session for each contact in an inbox. A contact can have multiple sessions and multiple conversations in the same inbox. How to send a message in an API Channel? To send a message in an API channel, create a contact, initiate a conversation, and finally send the message. APIs require api_access_token in the request header. You can get this token by visiting your Profile settings → Access Token. 1. Create a contact Ref: API documentation Pass the inbox ID of the API channel along with other params specified. This would create a session for you automatically. A sample response would look like the one below. { "email": "string", "name": "string", "phone_number": "string", "thumbnail": "string", "additional_attributes": {}, "contact_inboxes": [ { "source_id": "string", "inbox": { "id": 0, "name": "string", "website_url": "string", "channel_type": "string", "avatar_url": "string", "widget_color": "string", "website_token": "string", "enable_auto_assignment": true, "web_widget_script": "string", "welcome_title": "string", "welcome_tagline": "string", "greeting_enabled": true, "greeting_message": "string" } } ], "id": 0, "availability_status": "string" } As you can see in the payload, you will be able to see the contact_inboxes and each contact_inbox will have a source_id. Source ID can be seen as the session identifier. You will use this source_id to create a new conversation as defined below. 2. Create a conversation Ref: API documentation Use the source_id received in the previous API call. You will receive a conversation ID which can be used to create a message. { "id": 0 } 3. Create a new message Ref: API documentation There are 2 types of messages. 1. Incoming: Messages sent by the end user is classified as an incoming message. 2. Outgoing: Messages sent by the agent is classified as an outgoing message. If you call the API with the correct content, you will receive a payload similar to this one: { "id": 0, "content": "This is a incoming message from API Channel", "inbox_id": 0, "conversation_id": 0, "message_type": 0, "content_type": null, "content_attributes": {}, "created_at": 0, "private": false, "sender": { "id": 0, "name": "Pranav", "type": "contact" } } If everything is successful, you will see the conversation on the dashboard as follows. You will be notified when a new message is created on the URL specified while creating the API channel. You can read about the message payload here. Receive messages using callback URL When a new message is created in the API channel, you will get a POST request to the Callback URL specified while creating the API channel. The payload would look like this. Find the full list of events supported by the webhook here. Event type: message_created { "id": 0, "content": "This is a incoming message from API Channel", "created_at": "2020-08-30T15:43:04.000Z", "message_type": "incoming", "content_type": null, "content_attributes": {}, "source_id": null, "sender": { "id": 0, "name": "contact-name", "avatar": "", "type": "contact" }, "inbox": { "id": 0, "name": "API Channel" }, "conversation": { "additional_attributes": null, "channel": "Channel::Api", "id": 0, "inbox_id": 0, "status": "open", "agent_last_seen_at": 0, "contact_last_seen_at": 0, "timestamp": 0 }, "account": { "id": 1, "name": "API testing" }, "event": "message_created" } Create Interfaces using client APIs Client APIs available for the API channel will help you build customer-facing interfaces for Chatwoot. These APIs are useful for cases like the ones listed below. 1. Use a custom chat interface instead of the Chatwoot chat widget. 2. Build conversational interfaces into your mobile apps. 3. Add Chatwoot to other platforms for which Chatwoot doesn't have an official SDK. Creating customer objects You can create and retrieve customer data objects using the inbox_identifier and customer_identifier. Inbox Identifier You can obtain the inbox_identifier from your API channel -> Settings -> Configuration. Customer Identifier The customer_identifier or the source_id can be obtained when creating the customer using the create API. You will need to store this identifier on your client-side to make further requests on behalf of the customer. This can be done in cookies, local storage etc. Available APIs The Available Client APIs are documented here. Some of the things you can do with the APIs are: - Create, View and Update Contact - Create and List Conversations - Create, List and Update Messages HMAC Authentication The Client APIs also support HMAC Authentication. The HMAC token for the Channel can be obtained via running the following on your rails console. # replace api_inbox_id with your inbox id Inbox.find(api_inbox_id).channel.hmac_token Connecting to the Chatwoot WebSockets To get real-time updates from the agent dashboard, connect to Chatwoot WebSockets using the following URL. <your installation url>/cable Authenticating your WebSocket connection After subscribing using the customer's pubsub_token, you will receive events directed toward your customer object. The pubsub_token is provided during the customer creation API call. Example const connection = new WebSocket('ws://localhost:3000/cable'); connection.send(JSON.stringify({ command:"subscribe", identifier: "{\\"channel\\":\\"RoomChannel\\",\\"pubsub_token\\":\\""+ customer_pubsub_token+"\\"}" })); Find the full list of events supported by WebSockets here. Implementation Here is an example chat interface build over the Client APIs.

Last updated on Apr 10, 2024