Ana içeriğe geç

Eylemler ve Araçlar

Eylemler sekmesi, ajanınızın görüşme dışında yapabileceği her şeyi yönettiğiniz yerdir — ajanın canlı bir görüşme sırasında çağırdığı araçlar, çağrı başlamadan önce çalışan önceden getirme kancaları ve çağrı bittiğinde tetiklenen çağrı sonrası eylemler. Veri Alma Değişkenleri (ajanın her görüşmeden çıkardığı veri alanları) da aynı sekmede bulunur.

Tüm Planlar

Tüm araçlar, eylemler ve yeni önceden getirme kancası Free dahil her planda kullanılabilir.


Üç Aşama

Eylemler sekmesindeki her giriş, üç yaşam döngüsü aşamasından birine aittir. Araç Ekle açılır menüsü, her şeyin ne zaman tetiklendiğini netleştirmek için bunları gruplandırır:

AşamaNe zamanÖrnekler
Önceden getirmeAjan merhaba demeden önceArayanı telefonla CRM'inizde arayın, en son siparişi çekin, arka ucunuzdan kişiselleştirilmiş bir karşılama getirin
Canlı çağrıGörüşme sırasında, doğru an geldiğinde AI tarafından tetiklenirÇağrıyı bir insana yönlendirin, takvim müsaitliğini kontrol edin, başka bir ajana aktarın, veri için harici bir API'yi sorgulayın
Çağrı sonrasıÇağrı bittikten sonraÖzet e-postası gönderin, SMS onayı tetikleyin, çağrı yükünü CRM'inize gönderin

Açılır menü, en üstte Önceden getirme ile açılır çünkü diğer her aşamanın zaten bol seçeneği vardır — yeni önceden getirme girişi, büyük olasılıkla aradığınız şeydir.


Önceden getirme

Önceden getirme kancaları, ajanınızın kimin aradığını çağrının başında zaten bilerek başlamasını sağlar. Çağrı kurulumuyla paralel çalışır ve ilk kelime söylenmeden önce yanıtı ajanın sistem prompt'una enjekte eder.

Ne zaman kullanılır

  • Bir geri dönen müşteriyi telefon numarasından tanıyıp adıyla karşılayın
  • Arayanın açık siparişini, son randevusunu veya üyelik seviyesini çekin
  • Hangi hattın çevrildiğine bağlı olan işletme bağlamını önceden yükleyin
  • Ajanın potansiyel müşterinin aşamasını ve geçmişini bilmesi için CRM notlarını enjekte edin

Nasıl çalışır

  1. Platform, arayanın telefonunu çözer (gelen için SIP'ten, giden için çevrilen hedeften).
  2. Her etkin Önceden getirme eylemi, istek başına sabit 1,5 sn zaman aşımı ve 2 sn genel bütçeyle paralel olarak tetiklenir.
  3. Başarılı yanıtlar, adlandırılmış bloklar olarak ajanın sistem prompt'una birleştirilir — ajan bunları ilk turunda okur.
  4. Hatalar sessizdir — yavaş veya bozuk bir uç nokta asla karşılamayı engellemez. Ajan sadece o blok olmadan konuşmaya başlar.

Yapılandırma

AlanAçıklama
AdZorunlu. Dahili etiket ve prompt'taki blok adı — kısa ve açıklayıcı tutun (ör. crm_lookup, vip_check).
API URLZorunlu. Getirilecek uç nokta. {phone}, {direction}, {agent_id}, {user_id}, {call_id} yer tutucularını destekler.
HTTP MetoduGET varsayılan ve en uygun seçenektir. POST / PUT / PATCH / DELETE da çalışır.
Başlıklarİsteğe bağlı. Statik veya şablonlu (yer tutucular burada da çalışır).
Sorgu Parametreleriİsteğe bağlı. Yeni önceden getirme eylemleri için phone={phone} ile önceden doldurulur.

Kullanılabilir değişkenler

Bu belirteçler, istek anında URL, başlıklar ve sorgu/gövde parametrelerine yerleştirilir:

DeğişkenKaynakÖrnek değer
{phone}Arayanın telefonu (E.164) — giden için hedef numara+431234567890
{direction}inbound veya outboundinbound
{agent_id}Dahili ajan kimliği65f1a2b3c4...
{user_id}Çalışma alanı sahibi kimliği65e0b1c2d3...
{call_id}Çağrı kimliği (arka ucunuzun daha sonra çağrı sonrası yükü ilişkilendirmesini sağlar)65f1f2c4d5...

Bilinmeyen yer tutucular olduğu gibi bırakılır — hatalı şablonlama asla bir çağrıyı çökertmez.

Prompt'a ne düşer

https://crm.example.com/lookup?phone={phone} adresindeki uç noktanız şunu döndürürse:

{ "name": "Sarah Johnson", "tier": "Gold", "open_orders": 1 }

Ajanın sistem prompt'una, eylemin adını taşıyan XML ile sarılmış bir blok eklenir:

<call_context>
<block name="crm_lookup">
{ "name": "Sarah Johnson", "tier": "Gold", "open_orders": 1 }
</block>
</call_context>

Ajana bunu nasıl kullanacağını söylemeniz gerekmez — LLM bağlamı doğal olarak kavrar. İsteğe bağlı olarak, önceden getirmeden sistem prompt'unuzda söz edin: "If <call_context> contains a customer name, greet them by name."

Önemli kısıtlamalar

  • Yalnızca telefon çağrıları. Önceden getirme, widget (web) çağrıları için çalışmaz — şablonlanacak bir telefon numarası yoktur.
  • Yanıt gövdesinde 8 KB üst sınırı — bundan uzun her şey enjeksiyondan önce kesilir. Üst sınır, prompt token bütçenizi korur ve kötü niyetli bir uç noktanın etki alanını sınırlar.
  • condition değerlendirmesi yok — önceden getirme etkin olduğunda her zaman tetiklenir. Henüz değerlendirilecek bir yazıya dökme yoktur.
ipucu

Telefon anahtarlı bir arama uç noktasıyla GET kullanın. Yanıtları küçük ve yapılandırılmış tutun (3-5 alanlı JSON nesnesi). Ajanın tüm müşteri kaydınıza ihtiyacı yoktur — yalnızca görüşmeyi değiştiren kısımlara.


Canlı Çağrı Araçları

Bunlar görüşme sırasında çalışır. AI, açıklamasına ve mevcut diyaloğa dayanarak her aracı ne zaman çağıracağına karar verir.

Kullanılabilir Araçlar

AraçAmaçNe zaman kullanılır
Çağrı YönlendirmeBir insan operatöre aktarınMüşteri bir kişi ister, karmaşık sorunlar
Google CalendarMüsaitliği kontrol edin ve randevu alınMüşteri bir toplantı planlamak ister
Outlook CalendarAynısı, Microsoft Outlook üzerindenMüşteri bir toplantı planlamak ister
API Tool RAGHarici bir API'den canlı veri getirinGerçek zamanlı bilgi gerekiyor (siparişler, stok, hesap durumu)
Ajan AktarımıBaşka bir sesli ajana aktarınArayanın farklı bir departmana veya uzmana ihtiyacı var
HubSpot CRMHubSpot'ta kişileri ve anlaşmaları okuyun/yazınÇağrıyı HubSpot'a kaydetme, bir potansiyel müşteriyi arama
MCP sunucularıKayıtlı MCP sunucularınızdan herhangi birinin araçlarını sununMCP uyumlu bir araç sunucusu çalıştırıyorsunuz ve ajanın araçlarını görüşme ortasında kullanmasını istiyorsunuz

Çağrı Yönlendirme

Belirli koşullar sağlandığında çağrıları bir insana aktarın.

AyarAçıklamaÖrnek
AdZorunlu. Kişi veya departman adı"Sales Manager"
Yönlendirme NumarasıAktarılacak varsayılan telefon numarası"+49 123 456 789"
Tetikleyici KoşulAjanın ne zaman aktarması gerektiği"Customer asks for manager or issue cannot be resolved"
Koşullu Yönlendirme NumaralarıYönlendirme için koşul-numara eşlemesi{"billing": "+49 111 222", "technical": "+49 333 444"}

Nasıl çalışır:

  1. Görüşme sırasında AI, Tetikleyici Koşul'u değerlendirir.
  2. Koşullu yönlendirme numaraları ayarlanmışsa, eşleşen koşul hangi numaranın aranacağını belirler.
  3. Aksi takdirde, Yönlendirme Numarası kullanılır.
  4. Ajan, arayanı aktarım hakkında bilgilendirir.
  5. Çağrı yönlendirilir — yanıt yoksa ajana geri döner.
ipucu

Farklı departmanlar için birden fazla Çağrı Yönlendirme aracı ekleyebilirsiniz — biri "Satış" için, diğeri farklı koşullar ve numaralarla "Teknik Destek" için.

Google Calendar

Ajanın çağrılar sırasında müsaitliği kontrol edip randevu alması için Google Calendar'ınızı bağlayın.

Kurulum:

  1. EntegrasyonTakvimler bölümüne gidin ve önce Google hesabınızı bağlayın.
  2. Ajanın Eylemler sekmesinde Google Calendar aracını ekleyin.
  3. Kullanılacak takvimi seçin.
  4. Müsaitlik ayarlarınızı yapılandırın.
AyarAçıklamaVarsayılan
TakvimZorunlu. Hangi takvimin kullanılacağıBirincil takviminiz
Saat dilimiRandevular için saat dilimi (IANA biçimi)Otomatik algılanır
Çalışma Başlangıç SaatiÇalışma saatlerinin başlangıcı9:00
Çalışma Bitiş SaatiÇalışma saatlerinin bitişi18:00
Zaman dilimi süresiDakika cinsinden randevu uzunluğu30
Çalışma GünleriHaftanın uygun günleriPazartesi–Cuma
Randevular Arası TamponRandevular arasındaki tampon (0–60 dk)0

Desteklenen zaman dilimi süreleri: 15, 30, 45, 60, 75, 90, 105, 120 dakika.

ipucu

Çalışma saatlerinizi ve günlerinizi doğru ayarlayın — ajan yalnızca yapılandırdığınız müsaitlik içindeki zaman dilimlerini sunar.

Outlook Calendar

Çağrılar sırasında randevu planlamak için Outlook Takviminizi bağlayın. Google Calendar ile aynı şekilde çalışır.

Kurulum:

  1. EntegrasyonTakvimler bölümüne gidin ve önce Outlook hesabınızı bağlayın.
  2. Ajanın Eylemler sekmesinde Outlook Calendar aracını ekleyin.
  3. Kullanılacak takvimi seçin.
  4. Müsaitlik ayarlarınızı yapılandırın.

Ayarlar Google Calendar ile aynıdır (saat dilimi, çalışma saatleri, zaman dilimi süresi, çalışma günleri, tampon).

Ajan Aktarımı

Bir çağrıyı hesabınızdaki başka bir sesli ajana aktarın. Farklı departmanlar için uzmanlaşmış ajanlarınız olduğunda kullanışlıdır.

AyarAçıklama
Hedef AjanZorunlu. Aktarılacak ajanı seçin
Tetikleyici KoşulNe zaman aktarılacağı (ör. "Arayan teknik destek hakkında soruyor")

Örnek: Bir resepsiyonist ajan, fiyatlandırma sorulduğunda arayanları bir satış ajanına, teknik bir sorunları olduğunda ise bir destek ajanına aktarır.

HubSpot CRM

Görüşme sırasında HubSpot CRM'inize okuyun ve yazın. Ajanın API çağrılarını komut dosyasına yazmak zorunda kalmadan etkileşimleri kaydetmesine, telefonla bir kişiyi aramasına veya anlaşma güncellemelerini göndermesine olanak tanır.

Kurulum:

  1. Entegrasyonlar sayfasına gidin ve HubSpot hesabınızı bağlayın.
  2. Ajanın Eylemler sekmesinde HubSpot CRM aracını ekleyin.
  3. Ajanın hangi iş hattına ve özelliklere dokunmasına izin verileceğini seçin.

Araç eklendikten sonra, AI arayanı telefonla bir HubSpot kişisiyle eşleştirebilir, anlaşma aşamasını getirebilir ve alanları güncelleyebilir — tümü canlı görüşmeden.

MCP sunucuları

Hanc.AI'ye bağladığınız herhangi bir MCP uyumlu sunucunun araçlarını sunun. Bir ajan birden fazla MCP sunucusundan çekebilir; bir MCP sunucusu birden fazla ajana hizmet verebilir.

Kurulum:

  1. MCP sunucularınızı EntegrasyonMCP sunucuları altında bir kez bağlayın. Tam kayıt adımları için özel MCP Sunucuları sayfasına bakın.
  2. Bu ajanın Eylemler sekmesine MCP sunucuları girişini ekleyin — Eylem Ekle açılır menüsünde Canlı çağrı altında gruplandırılmıştır.
  3. Bu ajanın hangi kayıtlı bağlantılarınıza erişimi olması gerektiğini açın.
  4. Ajanın bu araçlara ne zaman başvuracağını bilmesi için kısa bir "Ne zaman kullanılır" talimatı ekleyin.

Ajan, araç kümesini her çağrının başında etkin her MCP sunucusundan yeniden keşfeder; böylece sunucu tarafında yaptığınız değişiklikler bir sonraki çağrıda otomatik olarak görünür. Araçlar, farklı sunuculardan gelen benzer adlı araçların çakışmaması için bağlantı etiketi bir önek olarak eklenerek yeniden adlandırılır.

API Tool RAG

Çağrılar sırasında gerçek zamanlı bilgi getirmek için harici API'lere bağlanın — siparişleri arayın, envanteri kontrol edin, hesapları doğrulayın veya API aracılığıyla mevcut herhangi bir veriye erişin.

AyarAçıklamaÖrnek
AdZorunlu. Araç adı"Order Lookup"
Açıklama / Ne Zaman KullanılırZorunlu. API'nin ne zaman sorgulanacağı"Customer asks about order status"
API URLZorunlu. API uç noktası. Gövde Parametreleri Şeması'ndan (aşağıya bakın) değerlerle değiştirilecek {placeholder} belirteçlerini içerebilir."https://api.yourshop.com/orders/{order_id}"
HTTP MetoduZorunlu. HTTP metoduGET, POST, PUT, DELETE, PATCH
Yükleme MesajıBeklerken ajanın söyledikleri"Let me check that for you..."
Zaman AşımıMaksimum bekleme süresi (ms)5000 (varsayılan)
BaşlıklarHer istekle gönderilen statik HTTP başlıkları{"Authorization": "Bearer KEY"}
Sorgu ParametreleriHer isteğe eklenen statik sorgu dizesi parametreleri{"apiVersion": "v2"}
Gövde Parametreleri ŞemasıZorunlu. AI'ın görüşmeden çıkarıp araca aktarması gereken argümanları açıklayan JSON Şeması. Bkz. Gövde Parametreleri Şemasını Yazma.JSON Şeması nesnesi
ipucu

Her zaman bir Yükleme Mesajı ayarlayın — API çağrıları sırasındaki sessizlik arayana bozuk gibi gelir.

not

API Tool RAG'daki eski "Çağrı başında çalıştır" onay kutusu, özel Önceden getirme girişiyle değiştirildi. Veriyi görüşme başlamadan önce istediğinizde Önceden getirmeyi kullanın; ajanın görüşme sırasında getirip getirmeyeceğine karar vermesini istediğinizde API Tool RAG'ı kullanın.

Gövde Parametreleri Şemasını Yazma

Adına rağmen, Gövde Parametreleri Şeması ham bir istek gövdesi değildir. AI'ın görüşmeden ne çıkarıp aracınıza aktarması gerektiğini açıklayan bir JSON Şeması'dır. HTTP metoduna ve URL şablonuna bağlı olarak, bu değerler URL'de, sorgu dizesinde veya JSON gövdesinde son bulur:

HTTP metoduÇıkarılan değerlerin nereye gittiği
URL {name} içerirEşleşen değer URL'ye yerleştirilir
GET, DELETEKalan değerler URL'ye ?key=value olarak eklenir
POST, PUT, PATCHKalan değerler JSON gövdesi olarak gönderilir
Minimal yapı
{
"type": "object",
"properties": {
"param_name": {
"type": "string",
"description": "What this value is and how the AI should pick it"
}
},
"required": ["param_name"]
}

Kök type her zaman "object"'tir. properties her argümanı listeler. required, AI'ın her zaman sağlaması gerekenleri işaretler — müşteri henüz söylemediyse, AI aracı çağırmadan önce sorar.

Alan referansı
AlanAmaç
typeDeğerin JSON türü: "string", "number", "integer", "boolean", "array", "object"
descriptionEn önemlisi. AI'a değerin ne anlama geldiğini, hangi biçimin kullanılacağını ve ne zaman sağlanacağını söyler. Mümkün olduğunda örnekler ekleyin.
enumDeğeri sabit bir listeden birine kısıtlar. AI, doğal konuşmayı en yakın seçeneğe eşler (ör. "the blue one""blue").
minimum, maximumSayısal sınırlar. AI, aralık dışı değerleri reddeder/kırpar.
defaultAI bu alanı geçirmediğinde kullanılan değer. Zorunlu değildir ama örtük değeri belgeler.
formatDoğrulama ipucu, ör. "email", "date" (YYYY-MM-DD), "uri".
Örnekler

Ürün araması (yalnızca anahtar sözcük):

{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Product search keyword — e.g. \"phone\", \"laptop\", \"Apple\", \"Samsung\""
}
},
"required": ["query"]
}

https://dummyjson.com/products/search?q={query}&limit=5 URL'si ve GET ile kullanılır: query değeri URL yer tutucusuna gider. Gövdede hiçbir şey son bulmaz.

Kimliğe göre sipariş arama:

{
"type": "object",
"properties": {
"order_id": {
"type": "string",
"description": "Order ID the customer is asking about, usually 6 to 10 digits. Ask the customer if not provided."
}
},
"required": ["order_id"]
}

https://api.example.com/orders/{order_id} URL'si ve GET ile kullanılır.

Birden fazla zorunlu alanla rezervasyon:

{
"type": "object",
"properties": {
"product_id": {
"type": "string",
"description": "Product ID returned by a previous search_products call."
},
"quantity": {
"type": "integer",
"minimum": 1,
"maximum": 10,
"description": "How many items to reserve. Default 1."
},
"delivery_method": {
"type": "string",
"enum": ["pickup", "home_delivery", "locker"],
"description": "How the customer wants to receive the item."
},
"customer_email": {
"type": "string",
"format": "email",
"description": "Customer's email for order confirmation. Ask if not provided."
}
},
"required": ["product_id", "delivery_method", "customer_email"]
}

POST https://api.example.com/reservations ile kullanılır: dört değer JSON gövdesine gider. AI, aracı çağırmadan önce eksik required alanları için müşteriye sorar.

Parametresiz araç:

{
"type": "object",
"properties": {}
}

Uç nokta tamamen statik olduğunda (ör. GET /store/hours) ve AI'ın hiçbir şey geçirmesine gerek olmadığında bunu kullanın.

Sesli ajanlar için en iyi uygulamalar
  • Şemayı düz tutun. İç içe nesneler ve diziler çalışır ama AI telefonda konuşurken kayabilir. En fazla 3–5 üst düzey alanı tercih edin.
  • Her alan için her zaman bir description yazın. Örnekler ekleyin (ör. "phone", "laptop") — örnekler, AI'a soyut tanımlardan daha güvenilir rehberlik eder.
  • Sabit bir değer listeniz olduğunda her zaman enum kullanın. AI'ın değer uydurma veya "electronics" yerine "Electronics" gönderme riskini ortadan kaldırır.
  • Bir alanı yalnızca araç onsuz çalışamıyorsa required işaretleyin. Diğer her şey isteğe bağlıdır ve müşteri söz etmediğinde AI onu atlar — garip ekstra sorular olmaz.
  • snake_case adları kullanın ve URL'deki {placeholder} belirteçleriyle tam olarak eşleştirin.
  • Eksik değerler için davranışı description içinde belgeleyin — ör. "Omit if no budget limit", "Default 5".

Canlı Mesajlaşma Eylemleri

(v2.4) Canlı SMS gönder ve Canlı E-posta gönder, ajanın çağrının bitmesinden sonra değil, hâlâ arayanla konuşurken — çağrı sonrası karşılıkları gibi değil — çağrı ortasında bir metin veya e-posta göndermesine olanak tanır. Arayanın telefonu kapatmadan önce üzerinde işlem yapabileceği bir bağlantı, rezervasyon onayı, kod veya özet göndermek için bunları kullanın.

AI, bu eylemleri o anda, eylemin açıklamasına ve görüşmeye dayanarak kendisi tetikler — herhangi bir canlı aracı çağırmaya karar verdiği şekilde.

EylemTetiklenmeGönderilen
Canlı SMS gönderÇağrı sırasındaArayanın telefon numarası
Canlı E-posta gönderÇağrı sırasındaArayanın e-postası

Çağrı başına gönderim üst sınırı

Her kanal, çağrı başına kanal başına 3 gönderim ile sınırlıdır. Bir ajan, tek bir çağrıda en fazla üç canlı SMS ve en fazla üç canlı e-posta gönderebilir; bir kanaldaki dördüncü gönderim reddedilir. Bu, konuşkan veya döngüye giren bir görüşmenin arayana spam göndermesini önler.

Reddetme matrisi

Bir canlı gönderim şu durumlarda reddedilir (ve ajana nedeni söylenir; böylece zarifçe kurtarabilir):

KoşulSonuç
Geçersiz veya eksik e-posta (Canlı E-posta gönder için)Reddedildi — ajan arayandan e-postasını onaylamasını ister
Geçersiz veya eksik telefon (Canlı SMS gönder için)Reddedildi — ajan arayandan numarasını onaylamasını ister
160 karakterden uzun gövdeReddedildi — mesaj olduğu gibi göndermek için çok uzun
Kanal üst sınırına ulaşıldı (bu çağrıda zaten 3 gönderim)Reddedildi — o kanalda başka gönderim yok

Ajan reddetme nedenini geri aldığı için, sorunu görüşmede düzeltebilir ("O e-postayı benim için heceleyebilir misiniz?") ve sessizce başarısız olmak yerine tekrar deneyebilir.

CRM zaman çizelgesi kaydı

Her canlı gönderim, kişinin CRM zaman çizelgesine kaydedilir; böylece ajanın çağrı ortasında gönderdiği mesaj, çağrı kaydının yanında görünür — tam olarak neyin, hangi kanala ve ne zaman gönderildiğini görebilirsiniz.

Akıllı form-kanal zincirleme

Bir web araması, widget formunu yalnızca bazı iletişim ayrıntılarıyla gönderdiğinde, ajan yalnızca gerçekten sahip olduğu kanalı kullanır:

  • Arayan yalnızca bir e-posta gönderir → ajan Canlı E-posta gönder'i tetikler (asla SMS değil).
  • Arayan yalnızca bir telefon gönderir → ajan Canlı SMS gönder'i tetikler (asla e-posta değil).
  • Arayan her ikisini gönderir → ajan, görüşmenin gerektirdiği şekilde her iki kanalı da kullanabilir.

Bu, ajanın yalnızca e-posta veren bir arayana asla mesaj atmaya veya yalnızca numara veren birine e-posta göndermeye çalışmaması anlamına gelir — mevcut form verileri, hangi canlı eylemin masada olduğunu belirler.


Çağrı Sonrası Eylemler

Çağrı sonrası eylemler, çağrı sona erdikten ve analiz zinciri özet, duygu durumu ve çıkarılan değişkenleri ürettikten sonra tetiklenir. Çağrı verilerini tüketirler — müşteriyle konuşmazlar.

Kullanılabilir Eylemler

EylemAmaç
E-posta GönderEkibinize veya müşteriye yapılandırılmış bir özet e-postalayın
SMS GönderArayana metin onayı
WhatsApp GönderWhatsApp mesajı veya şablonu (24 saatlik pencerenin içinde ve dışında çalışır)
API ÇağrısıTam çağrı yükünü harici bir API'ye gönderin (CRM, web kancası, veri ambarınız)

E-posta Gönder

AyarAçıklama
AdZorunlu. Eylem tanımlayıcısı
KonuZorunlu. E-posta konu satırı
Mesaj GövdesiZorunlu. E-posta gövdesi — veri alma değişkenleri içerebilir
Tetikleyici KoşulNe zaman gönderileceği (boş = her zaman)
AlıcılarZorunlu. E-postayı her zaman alan e-posta adresleri
Koşullu AlıcılarKoşul-alıcı eşlemesi

E-postada değişkenleri kullanma:

New lead from phone call:

Name: {{customer_name}}
Email: {{customer_email}}
Interested in: {{selected_plan}}
Notes: {{call_notes}}

SMS Gönder

AyarAçıklama
AdZorunlu. Eylem tanımlayıcısı
Gönderen AdıGörüntülenen gönderen adı
MesajZorunlu. SMS içeriği (değişken içerebilir)
Tetikleyici KoşulNe zaman gönderileceği
AlıcılarZorunlu. SMS'i her zaman alan telefon numaraları
Koşullu AlıcılarKoşul-numara eşlemesi

WhatsApp Gönder

HANC'de WhatsApp mesajlaşması, merkezi bir Twilio Content hesabından önceden onaylanmış şablonlar kullanır — bir Template SID'yi elle yapıştırmazsınız. Eylem düzenleyici, şu anda etkin ve onaylı her şablonun bir açılır listesini gösterir ve birini seçersiniz. Şablon içindeki yer tutucular ({{1}}, {{2}}, …) daha sonra çağrı değişkenlerinden veya düzenleyicide eşlediğiniz statik metinden satır içi doldurulur.

AyarAçıklama
AdZorunlu. Eylem tanımlayıcısı
Tetikleyici KoşulNe zaman gönderileceği
AlıcılarZorunlu. Mesajı her zaman alan telefon numaraları
Koşullu AlıcılarKoşul-numara eşlemesi
ŞablonZorunlu. Merkezi Twilio Content hesabından senkronize edilen önceden onaylanmış WhatsApp şablonlarının açılır seçicisi. Her giriş, hangisini seçeceğinizi bilmeniz için şablon adını, dilini ve gövdenin bir önizlemesini gösterir.
Şablon DeğişkenleriSeçtiğiniz şablon için düzenleyici her yer tutucuyu ({{1}}, {{2}}, …) listeler ve onu bir çağrı değişkenine (aşağıya bakın) veya statik bir dizeye eşlemenize izin verir.

Şablon yer tutucularına eşleyebileceğiniz kullanılabilir çağrı değişkenleri:

DeğişkenAçıklama
{{call_from}}Arayanın telefon numarası
{{call_to}}Aranan numara
{{call_summary}}AI tarafından oluşturulan çağrı özeti
{{call_sentiment}}Duygu durumu (olumlu/nötr/olumsuz)
{{call_task_achieved}}Çağrı görevinin başarılıp başarılmadığı
{{call_transcription}}Tam çağrı yazıya dökümü
Neden serbest metin değil de seçici

WhatsApp, 24 saatlik müşteri hizmetleri penceresinin dışında işletme tarafından başlatılan her mesajın önceden onaylanmış bir şablon kullanmasını gerektirir. HANC, onaylı şablonların listesini paylaşılan Twilio Content hesabından senkronize eder; böylece açılır menü her zaman şu anda gönderilmeye uygun olanı tam olarak gösterir — yanlışlıkla bir taslak, reddedilmiş bir şablon veya var olmayan bir SID seçemezsiniz. Yeni bir şablon eklemek için destekle iletişime geçin; WhatsApp tarafından onaylandıktan sonra açılır menüde otomatik olarak görünür.

API Çağrısı

Çağrı sonrası API Çağrısı eylemi, yığınınızın geri kalanına yönelik genel web kancanızdır. Metodu seçin, URL'yi ayarlayın ve tüm çağrı yükünü gönderelim — uç noktanız, ne olduğunu açıklayan yapılandırılmış bir JSON nesnesi alır.

AyarAçıklama
AdZorunlu. Eylem tanımlayıcısı
Tetikleyici KoşulNe zaman tetikleneceği (boş = her çağrı). Yazıya dökmeye karşı bir LLM tarafından değerlendirilir.
API URLZorunlu. API uç nokta URL'si
HTTP MetoduZorunlu. GET, POST, PUT, DELETE, PATCH
Başlıklarİsteğe bağlı istek başlıkları
Sorgu Parametreleriİsteğe bağlı sorgu dizesi parametreleri

Uç noktanızın aldıkları

POST / PUT / PATCH için, uç noktanız istek gövdesinde bir JSON nesnesi alır. Yapılandırdığınız gövde parametreleri, tam çağrı yüküyle birleştirilir:

{
"call_from": "+431234567890",
"call_to": "+439876543210",
"direction": "inbound",
"call_type": "phone",
"call_status": "ended",
"start_timestamp": 1730000000000,
"end_timestamp": 1730000187000,
"duration": 187000,
"transcription": [
{ "speaker": "agent", "content": "Hello…", "timestamp": 1730000001000 },
{ "speaker": "user", "content": "Hi…", "timestamp": 1730000003000 }
],
"call_summary": "Customer asked about pricing…",
"task_achieved": true,
"sentiment": { "sentiment": "positive", "explanation": "…" },
"custom_analysis_data": {
"name": "John",
"email": "john@example.com"
},
"collected_data": { /* in-call form submissions */ },
"transfer_history": [ /* if any agent transfer happened */ ],
"recording_url": "https://…",
"disconnection_reason": "user_hangup",
"is_anonymous": false,
"is_simulation": false,
"created_at": 1730000000000,
"updated_at": 1730000187000
}

GET / DELETE için aynı alanlar sorgu dizesine düzleştirilir — ancak transcription, sentiment ve custom_analysis_data gibi iç içe değerler düşürülür (URL'ler yapılandırılmış veriyi düzgün taşıyamaz). Yazıya dökmeye ihtiyacınız varsa POST/PUT/PATCH kullanın.

Her istek ayrıca izleme için bir X-Correlation-Id başlığı alır ve 30 saniye sonra zaman aşımına uğrar.

Önceden getirme ile Çağrı sonrası API Çağrısı
  • Önceden getirme, {phone} vb. değerleri URL/başlıklar/sorgu/gövdeye şablonlar. Çağrıdan önce, prompt'a döner.
  • Çağrı sonrası API Çağrısı, tüm çağrı dökümünü gövdede veya sorguda gönderir. URL şablonlama yok — uç noktanız statik URL + dinamik gövde alır.

Veri Alma Değişkenleri

Veri Alma Değişkenleri, AI'ın görüşmelerden otomatik olarak çıkardığı özel veri alanlarıdır. Örneğin, ajan arayanın adını, e-postasını, telefon numarasını veya tanımladığınız başka herhangi bir bilgiyi yakalayabilir.

Varsayılan Değişkenler

Her yeni ajan, iki varsayılan veri alma değişkeniyle oluşturulur:

DeğişkenTürAçıklama
E-postaE-postaArayanın e-posta adresi
TelefonTelefonArayanın telefon numarası

Bunlar varsayılan olarak etkindir ve çağrı widget formunda gösterilir. Bunları düzenleyebilir veya kaldırabilir ve kendi özel değişkenlerinizi ekleyebilirsiniz.

Değişken Türleri

TürKullanım DurumuÖrnek
MetinAdlar, adresler, notlar, serbest biçimli girişMüşteri adı, teslimat adresi
SayıMiktarlar, bütçeler, kimliklerSipariş miktarı, bütçe tutarı
E-postaDoğrulamalı e-posta adresleriMüşteri e-postası
TelefonDoğrulamalı telefon numaralarıMüşteri telefon numarası
SeçiciÖnceden tanımlanmış seçeneklerden seçimTercih edilen plan (Basic/Pro/Enterprise)
Onay kutusuEvet/hayır onayı veya doğrulaması"Pazarlama e-postaları almayı kabul ediyorum"

Bir Değişken Yapılandırma

AlanAçıklamaÖrnek
Değişken AdıZorunlu. Değişken tanımlayıcısıcustomer_email
AI için TalimatlarZorunlu. AI'ın bu değeri ne zaman ve nasıl çıkaracağına dair talimatlar"The customer's email address. Ask if not provided."
Örnek Biçim(İsteğe bağlı) Beklenen biçim örneği"john@example.com"
Seçenekler (Seçici için)(Yalnızca Seçici) İzin verilen seçeneklerin listesi["Basic", "Pro", "Enterprise"]
Formda GösterBu alanın çağrı widget formunda görüntülenip görüntülenmeyeceğiVarsayılan olarak etkin

Formda Göster

Formda Göster etkinleştirildiğinde, değişken çağrıdan önce ve çağrı sırasında web widget'ında görünür bir giriş alanı olarak görünür. Bu, AI'ın onu görüşmeden çıkarmasına ek olarak, arayanların bilgilerini doğrudan doldurmasına olanak tanır.

ipucu

AI, görüşme sırasında eksik bilgileri doğal olarak sorar. "Müşterinin e-posta adresi, verilmezse kibarca sor" gibi net bir açıklama ayarlayın; ajan bunu halleder.


Araç ve Eylem Ekleme

  1. Ajanınızın Eylemler sekmesine gidin.
  2. Araç Ekle düğmesine tıklayın.
  3. Açılır menüden doğru aşamayı seçin — Önceden getirme, Canlı çağrı veya Çağrı sonrası.
  4. Ayarları yapılandırın.
  5. Kaydedin — değişiklikler bir sonraki çağrıda geçerli olur.

Tüm girişler, Eylemler tablosunda birlikte listelenir. Düzenlemek için herhangi bir satıra tıklayın veya silmek için çöp kutusu simgesini kullanın.


İlgili