integration-docs: Update Freshdesk for new doc format.

Revises doc to have three instructions sections. One for creating
the Zulip bot and webhook URL. One for adding notifications for
new Freshdesk tickets. And one for getting notifications for
existing Freshdesk tickets.

Part of #29592.
This commit is contained in:
Lauryn Menard 2024-07-01 17:36:27 +02:00 committed by Tim Abbott
parent 6f14e0b5f7
commit c8fdfc92a1
1 changed files with 67 additions and 28 deletions

View File

@ -1,33 +1,52 @@
# Zulip Freshdesk integration
See customer support interactions in Zulip with our Freshdesk See customer support interactions in Zulip with our Freshdesk
integration! integration!
### Create Zulip bot for Freshdesk notifications
{start_tabs}
1. {!create-channel.md!} 1. {!create-channel.md!}
1. {!create-an-incoming-webhook.md!} 1. {!create-an-incoming-webhook.md!}
1. {!generate-integration-url.md!} 1. {!generate-webhook-url-basic.md!}
{end_tabs}
### Add notifications for new Freshdesk tickets ### Add notifications for new Freshdesk tickets
1. Go to your Freshdesk **Admin** page. Under **Helpdesk Productivity**, {start_tabs}
click on **Dispatch'r**. Click on **New rule**.
1. Set **Rule Name** to a name of your choice, such as `Zulip`. There isn't a shortcut 1. Go to your Freshdesk **Admin** page.
for "always generate a notification on ticket creation", so we'll have to
fake it by picking two complementary conditions: when the source **is email**,
and when the source **is not email**. Set up the **Conditions** for the
new rule, like so:
![](/static/images/integrations/freshdesk/001.png) 1. Under **Helpdesk Productivity**, select **Dispatch'r**, and then
select **New rule**.
1. Under **Actions**, set the **Select Action** dropdown to **Trigger Webhook**. 1. Set **Rule Name** to a name of your choice, such as `Zulip`.
Set **Request Type** to **POST**, and set **Callback URL** to the URL
constructed above.
1. Check the **Requires Authentication** checkbox. Set **Username** to the email 1. There isn't a shortcut to "always generate a notification on ticket
of the bot created above, and set **Password** to the bot's API key. Set creation", so we'll have to fake it by picking two complementary
**Encoding** to **JSON** and select the **Advanced** option. Copy and paste conditions: when the source **is email**, and when the source **is
the following JSON into the **Content** box: not email**. Set up the **Conditions** for the new rule, like so:
![](/static/images/integrations/freshdesk/001.png)
1. Under **Actions**, set the **Select Action** dropdown to **Trigger
Webhook**.
1. Set **Request Type** to **POST**, and set **Callback URL** to the URL
[generated above][create-bot].
1. Toggle the **Requires Authentication** checkbox.
1. Set **Username** to the email of the bot [created above][create-bot],
and set **Password** to the bot's API key.
1. Set **Encoding** to **JSON**, and select the **Advanced** option.
Copy and paste the following JSON into the **Content** box:
``` ```
{% raw %} {% raw %}
@ -48,15 +67,22 @@ integration!
{% endraw %} {% endraw %}
``` ```
Click **Save**. 1. Click **Save**.
### Get notifications for changes to existing tickets {end_tabs}
1. Go to your Freshdesk **Admin** page. Under **Helpdesk Productivity**, ### Get notifications for changes to existing Freshdesk tickets
click on **Observer**, and click on **New rule**.
{start_tabs}
1. Go to your Freshdesk **Admin** page.
1. Under **Helpdesk Productivity**, select **Observer**, and then select
**New rule**.
1. Set **Rule Name** to a name of your choice, such as `Zulip`. 1. Set **Rule Name** to a name of your choice, such as `Zulip`.
Under **involves any of these events**, create new events as shown below:
1. Under **involves any of these events**, create new events as shown below:
![](/static/images/integrations/freshdesk/002.png) ![](/static/images/integrations/freshdesk/002.png)
@ -69,13 +95,18 @@ integration!
![](/static/images/integrations/freshdesk/003.png) ![](/static/images/integrations/freshdesk/003.png)
1. Under **perform these actions**, set the **Select Action** dropdown 1. Under **perform these actions**, set the **Select Action** dropdown
to **Trigger Webhook**. Set **Request Type** to **POST**, and set to **Trigger Webhook**.
**Callback URL** to the URL constructed above.
1. Check the **Requires Authentication** checkbox. Set **Username** to the email 1. Set **Request Type** to **POST**, and set **Callback URL** to the URL
of the bot created above, and set **Password** to the bot's API key. Set [generated above][create-bot].
**Encoding** to **JSON** and select the **Advanced** option. Copy and paste
the following JSON into the **Content** box: 1. Toggle the **Requires Authentication** checkbox.
1. Set **Username** to the email of the bot [created above][create-bot],
and set **Password** to the bot's API key.
1. Set **Encoding** to **JSON** and select the **Advanced** option.
Copy and paste the following JSON into the **Content** box:
``` ```
{% raw %} {% raw %}
@ -96,8 +127,16 @@ integration!
{% endraw %} {% endraw %}
``` ```
Click **Save**. 1. Select **Save**.
{end_tabs}
{!congrats.md!} {!congrats.md!}
![](/static/images/integrations/freshdesk/004.png) ![](/static/images/integrations/freshdesk/004.png)
### Related documentation
{!webhooks-url-specification.md!}
[create-bot]: #create-zulip-bot-for-freshdesk-notifications