メインコンテンツまでスキップ

Zendesk

Zendesk support platform を Squid に接続し、issue を query・作成します​

Zendesk API Token の作成​

Zendesk REST API への request には、Zendesk admin dashboard から生成した API token が必要です。API token を作成するには、API token の生成に関する Zendesk documentationの step に従います。

Squid Application に Zendesk Connector を追加する​

  1. Squid Console の Connectors tab に移動します。

  2. Available Connectors をクリックします。

  3. Zendesk connector を見つけ、Add Connector を選択します。

  4. 次の configuration detail を指定します。

Connector ID: code 内で connector を一意に識別する string。

Domain: Zendesk instance の domain。たとえば、Zendesk instance が https://mycompany.zendesk.com にある場合、mycompany.zendesk.com を入力します。

Email: Squid が Zendesk に login する account の email address。

API Token: Zendesk により生成された token key。

Sync Help Center to Knowledge Base: documentation と FAQ の semantic search 用に、Zendesk Help Center article を knowledge base へ index 化します。default では off です。

Zendesk Connector の Functionality​

Zendesk connector は現在、Squid AI agent が ticket を query・作成・delete することを可能にします。AI agent にこれらの capability を提供することで、user は AI agent に代わりに ticket と interaction するよう依頼できます。connector は Help Center article を searchable knowledge として index 化することもできます(以下を参照)。

この feature の使用方法について詳しくは、Zendesk REST API documentation を読むことをおすすめします。これにより、query 可能な field、issue 作成に必要な property などをより理解できます。

underlying API をより理解するとこの feature をより効果的に使用できますが、必須ではありません。AI agent は不足している detail を尋ねる message を返します。

Help Center Knowledge Base​

Sync Help Center to Knowledge Base を有効にすると、Squid は Help Center article を knowledge base に index 化し、10 分ごとに refresh します(initial sync ではおおよそ過去 1 年分の article が対象となります)。Zendesk connector に接続された agent は、documentation、guide、FAQ を semantic search でき、result は source article に link されます。

注意事項:

  • すべての brand と locale の article が index 化されます。draft article は skip されます。
  • access は read-only です。Squid が Help Center に write することはありません。

Application で Zendesk Connector を使用する​

No-code Studio​

no-code solution は Squid Agent Studio で作成できます。

  1. Squid Console の Studio tab に移動します。

  2. Create AI Agent をクリックします。

  3. "zendesk-agent" や "This agent helps the user interact with Zendesk tickets" などの agent ID と description を指定します。

  4. Add Abilities をクリックします。

  5. Existing tab に切り替え、先ほど作成した Zendesk connector を選択します。

  6. 「user が Zendesk ticket と interaction したい場合にこれを call する」など、agent がこの connection を使用する方法の description を指定します。

  7. Test をクリックし、agent に「What are my tickets?」と尋ねてみます。

Code の基本 Building Block​

Squid application で Zendesk connector を使用するには、@squidcloud/zendesk npm package を install します。

npm install @squidcloud/zendesk

Zendesk npm package は、Zendesk API の call に使用する AI function を提供します。connector を使用するには、Squid backend project を setupする必要があります。

Squid backend で Zendesk connector を export すると、Zendesk AI function が project に追加されます。application で使用するために、src/service/index.ts で package を export します。

export * from './your-service';
export * from '@squidcloud/zendesk';

Zendesk AI function を使用するには、AI agent がこれらの function に接続されている必要があります。そのために、Squid Console で AI agent profile を setup します。backend が deploy されている場合、AI agent は console の dropdown で AI function に access できます。backend が deploy されていない場合は、code 内で AI function を AI agent に提供する必要があります。たとえば、Squid Chat Widgetを使用する場合、widget の squid-ai-functions-json parameter に AI function を指定できます。

const aiFunctionContext = { integrationId: 'YOUR_ZENDESK_CONNECTOR_ID' };
const aiFunctionsJson = JSON.stringify([
{
name: 'createTicket',
context: aiFunctionContext,
},
{
name: 'getAllTickets',
context: aiFunctionContext,
},
{
name: 'getZendeskTicketsByRequester',
context: aiFunctionContext,
},
{
name: 'searchZendeskTickets',
context: aiFunctionContext,
},
{
name: 'deleteZendeskTicket',
context: aiFunctionContext,
},
{
name: 'getLoggedInUser',
context: aiFunctionContext,
},
{
name: 'getZendeskUserByEmail',
context: aiFunctionContext,
},
{
name: 'genericFallbackQueryFunction',
context: aiFunctionContext,
},
]);

const chatWidget = document.createElement('squid-chat-widget');
chatWidget.setAttribute('squid-ai-integration-id', 'ai_agents');
chatWidget.setAttribute('squid-app-id', 'YOUR_APP_ID');
chatWidget.setAttribute('squid-region', 'YOUR_REGION');
chatWidget.setAttribute('squid-environment-id', 'YOUR_ENVIRONMENT');
chatWidget.setAttribute('squid-developer-id', 'YOUR_DEVELOPER_ID');
chatWidget.setAttribute('squid-ai-agent-id', 'YOUR_AGENT_ID');
chatWidget.setAttribute('header-title', 'Zendesk AI');
chatWidget.setAttribute('squid-ai-functions-json', aiFunctionsJson);
chatWidget.setAttribute('intro-text', 'Hi, I am the Zendesk agent. How can I help?');
chatWidget.setAttribute('style', 'display: block; min-height: 350px; height: 75vh;');

const widgetContainer = document.getElementById('widget');
if (widgetContainer) {
widgetContainer.innerHTML = ''; // Clear any existing widget
widgetContainer.appendChild(chatWidget);
}

以上が、application で Zendesk connector を起動・実行するための core building block です。 sample codeを copy して、そこから構築するのが最も簡単な場合があります。

おめでとうございます!これで AI agent に Zendesk instance に関する question を尋ねられます!