Ascultă
Talebi, konuşmanın ve işletme kurallarının bağlamı içinde anlar.
Agenți vocali AI Platformă
Çağrı alan ve çağrı başlatan, işletmenin bilgisini kullanan ve sistemlerinizle çalışan ajanlar kuruyoruz. İlk sorudan eksiksiz bir talebe, bir onaya ya da bir çalışana devre kadar.
Kallina
Talebi, konuşmanın ve işletme kurallarının bağlamı içinde anlar.
Yanıtlamadan önce bilgi tabanına ve yetkilendirilmiş entegrasyonlara bakar.
Verileri tamamlar, izin verilen eylemi yürütür ya da konuşmayı bir insana devreder.
Sık sorulan sorular, taleplerin alınması ve aranmak isteyenlere geri dönüş.
Bağlı sipariş sistemindeki bilgilerle onaylar ve koordinasyon.
Gerekli ayrıntıları toplar. Takvim erişimi ve rezervasyon her entegrasyon için ayrıca belirlenir.
Senaryolar, telefon numarası, diller ve eylemler her kurulum için ayrı yapılandırılır. Ekip, konuşmayı devralma imkânını her zaman korur.
Ayrıntısıyla Kallina
Kallina, telefonda ve web sayfasında konuşan ajanlar kurduğumuz platformdur. Bir ajanın yazılı bir rolü, onaylanmış bir bilgi tabanı, çağırabileceği bir araç kümesi ve ötesinde konuşmayı bir insana devrettiği bir sınırı vardır. Konuşma dökümde bitmez: çağrının süresi, sağlayıcı bazında maliyeti, kaydı ve analizi vardır — hepsi işletmenin hesabına bağlı.
Ses motoru tek değil. Ajan yapılandırmasında ElevenLabs Conversational AI, OpenAI Realtime, Gemini Live ya da «auto» arasından seçiyorsunuz; «auto» seçilirse Kallina sağlayıcıyı dile, yüke ve erişilebilirliğe göre kendisi belirliyor. Bunun üstünde metin beynini ayrıca seçiyorsunuz — koddaki katalogda OpenAI, Google, Anthropic, xAI ve ElevenLabs'ten 78 kayıt var; her birinin gecikmesi ve dakika maliyeti arayüzde görünüyor, ki seçim kulaktan dolma değil bilgiye dayalı olsun.
Telefon altyapısı bizim; ses sağlayıcısından kiralanmış değil. Çağrılar kendi Asterisk'imizden geçiyor: çalışma saatine ve saat dilimine göre yönlendirme, gece programı (örneğin 22:00 → 06:00) ve önceliğe göre eşleme — SIP Diversion başlığı, sonra Kallina numarası, sonra yedek kural. OpenAI Realtime için, kodeki iki yönde dönüştüren bir AudioSocket köprüsü var: g711_ulaw ↔ PCM16.
`AGENT_PROVIDERS` içinde dört seçenek var: `elevenlabs` (ConvAI), `openai-realtime`, `gemini-live` ve `auto`. İngilizce dışındaki dillerde metinden sese için varsayılan `eleven_flash_v2_5` — 32 dil, yaklaşık 75 ms gecikme; daha kaliteli seçenek `eleven_turbo_v2_5` ise yaklaşık 250 ms'ye mal oluyor. Seçim kodun içine gizlenmiş değil; ajan yapılandırmasında bir alan.
`LLM_MODELS` içinde 78 model, arayüzde sağlayıcıya göre gruplanmış hâlde, ölçülen gecikmesi ve dakika maliyetiyle birlikte — yaklaşık 806 ms ve dakikada yaklaşık 0,0004 $ ile `gpt-5-nano`'dan, yaklaşık 1,55 s ve dakikada yaklaşık 0,0225 $ ile `claude-sonnet-4-6`'ya kadar. «Neden yavaş cevap veriyor» diye soran bir müşteri, görüş değil sayı içeren bir yanıt alır.
Çağrı yönlendirmesi çalışma saatlerine ve saat dilimine göre yapılandırılır; gece programı desteklenir ve eşleme önceliğe göre yapılır (SIP Diversion başlığı → Kallina numarası → yedek kural). `openai-realtime-bridge` köprüsü, çift yönlü ses akışı için g711_ulaw ile PCM16 arasında AudioSocket dönüşümünü yapar.
`<script src="https://app.kallina.info/embed.js" data-widget="WIDGET_ID"></script>`. Sayfa hangi ajanın yanıtladığını hiçbir zaman öğrenmez ve hiçbir sağlayıcı anahtarı tutmaz: Kallina'dan bir oturum ister, Kallina da kısa ömürlü imzalı bir URL döndürür. Bir de `data-mode="inline"` kipi var; bu kipte gömme hiçbir şey çizmez ve sayfa kendi arayüzünü `start()` / `stop()` / `toggle()` / `on(event, fn)` API'sinin üzerine kendisi kurar.
Aynı anda 1–10 çağrıyla toplu arama, CSV'den kişi içe aktarma, yeniden deneme mantığı, duraklatma, sürdürme ve durdurmayla gerçek zamanlı takip, ayrıca SMS ile geri dönüş.
Ajan yapılandırması 32 dili kabul ediyor (`LANGUAGES`), platformun tam dil haritasında 41 kayıt var ve yönetim paneli 20 dile çevrilmiş durumda (`src/i18n/locales`). `DEFAULT_VALUES` içinde varsayılan dil Romence.
Veri ve işleyiş
Keşiften kuruluma
Girişi ve çıkışı belli tek bir senaryo — karşılamaya gelen bir çağrı, sipariş onayı, arama kampanyası. Ajanın neyi yapmaya yetkisi olmadığını ve konuşmayı hangi yolla bir insana devrettiğini açıkça yazıyoruz.
Numara, Asterisk'imizin SIP trunk'ına girer. Gelen ve giden çağrılar ayrı ayrı test edilir, çünkü ayrı ayrı bozulabilirler: operatörün giden çağrılara koyduğu bir kısıt, gelenlerin kusursuz çalışmasına engel olmaz.
`scripts/verify-voice-path.mjs` bir tarayıcının izlediği yolun tam olarak aynısını izler — yapılandırma satırı, `get-widget-config`, ardından `widget-voice-session` — ve websocket'i açmadan imzalı URL'de durur. Tek bir bileşen üzerinde ya da sesi etkin olan bütün bileşenlerde, paralelde 1–3 ile çalışır ve çıkış kodu döndürür; dolayısıyla doğrudan bir cron'a girebilir.
ElevenLabs Conversational AI, OpenAI Realtime ve Gemini Live arasından seçiyorsunuz; ya da «auto» bırakıyorsunuz ve Kallina dile ve erişilebilirliğe göre karar veriyor. İngilizce dışındaki dillerde ses sentezi için varsayılan model `eleven_flash_v2_5` — 32 dil, 75 ms civarı; daha yüksek kalite isteyip daha fazla gecikmeyi kabul ederseniz `eleven_turbo_v2_5` 250 ms civarındadır. OpenAI Realtime sesleri on tanedir ve motorları `gpt-realtime-2.1`'e kadar gider.
Tek satır: `<script src="https://app.kallina.info/embed.js" data-widget="WIDGET_ID"></script>`, modül olarak değil sıradan bir script olarak yüklenir. Dosya bugün sunuluyor ve 13.762 bayt. Kendi arayüzünüzü istiyorsanız `data-mode="inline"` hiçbir şey çizmez ve size `start()`, `stop()`, `toggle()` ile `state`, `message`, `error` olaylarını bırakır. Sunucu adına dikkat: dosya `app.kallina.info` üzerinde, `kallina.info` üzerinde değil — bunlar iki ayrı sunucudaki iki ayrı uygulamadır.
Hayır. `embed.js` içindeki sıra şudur: SDK'yı yükle, `getUserMedia({audio:true})` ile mikrofonu iste, ancak ondan sonra `widget-voice-session` çağrısını yap. Kişi mikrofonu reddederse oturum isteği hiç yapılmaz; dolayısıyla imzalı bir URL üretilmez ve hiçbir şey harcanmaz.
Evet — toplu arama, aynı anda 1–10, CSV'den kişiler, yeniden denemeler ve SMS ile geri dönüş. Ama giden çağrılar yalnızca bize değil, telefon operatörüne de bağlı: kendi sorun kaydımızda, yapılandırmamız hiç değişmemiş ve gelen çağrılar normal çalışırken operatörün santralinin bütün çıkışlara `403 Forbidden` döndürmeye başladığı bir vaka belgelenmiş durumda. Bir kampanya sözü vermeden önce çıkışları ayrıca test etmemizin sebebi budur.
Ajan yapılandırması 32 dili kabul ediyor, iç dil haritasında 41 kayıt var ve yönetim paneli 20 dile çevrilmiş. Yeni ajanların varsayılan dili Romence.
Hayır — ve bir lansmanı planlamadan önce bunu bilmekte fayda var. Depodaki GitHub akışı, silinmiş bir Supabase Cloud projesini hedefliyor; dolayısıyla kendi altyapımıza geçtiğimizden beri «main'e push = yayın» artık doğru değil. Gerçek yayına alma SSH ile, kopyalama ve yeniden başlatmayla yapılıyor. Pratik sonuç: acil bir değişiklik yalnızca bir commit'e değil, bir kişiye ihtiyaç duyar.
İnsana devir senaryonun parçasıdır, istisna değil. Her ajanın yazılı sınırları ve telefon altyapısında yapılandırılmış bir devir yolu vardır; konuşmanın içinde de korkuluklar ve başarı ölçütleri bulunur — tam da rolün dışına düşen bir durumun doğaçlanması değil durdurulması için.
Örnekleyici senaryo
Bir kullanım senaryosu; müşteri verisi ya da atfedilmiş ticari sonuç içermez.
Biri işletmenin numarasını 23:40'ta, karşılama mesai saatlerinin dışında arıyor.
Asterisk gece programı kuralını uyguluyor (örneğin 22:00 → 06:00) ve eşlemeyi önceliğe göre yapıyor: SIP Diversion başlığı, sonra Kallina numarası, sonra yedek kural. Gece ajanı yapılandırmada seçilen sağlayıcı üzerinden yanıtlıyor, talebi netleştiriyor ve kullanmasına izin verilen araçları çağırıyor.
Çağrı; dökümü, ses kaydı, süresi ve sağlayıcı bazında ayrıştırılmış maliyetiyle geçmişte kalıyor. Ajanın rolünü aşan her şey doğaçlanmıyor, durduruluyor ve daha ileriye devrediliyor.
Ce este necesar:Numărul conectat pe trunkul SIP al Asterisk-ului nostru, apelurile ieșite permise de operator dacă se dorește și sunat înapoi, plus un agent cu prompt, bază de cunoștințe aprobată și limite scrise.
İş birliği olanakları
Onaylanmış bilgi üzerinden sesli destek; bir operatöre geçiş ve konuşmaların kaydı ile saklanmasına dair açık kurallarla.
Gerçek bir sürecin etrafında bir pilot tanımlıyoruz: kullanıcılar, veriler, entegrasyonlar, maliyetler ve kabul kriterleri. Yaygınlaştırma, sonucun değerlendirilmesinden sonra gelir.
Erişilebilirlik, barındırma, veri koruma ve birlikte çalışabilirlik gerekliliklerini belirliyoruz. Moldova e-Yönetişim Ajansı (AGE) ya da ulusal bilgi teknolojileri servisi (STISC) hizmetleriyle kurulacak her bağlantı; uygunluğun, erişimin ve onayların doğrulanmasını gerektirir.
Bunlar uyarlama senaryolarıdır; mevcut sözleşmeler ya da ortaklıklar hakkında beyan değildir. Önerilen işlevler projenin çalışma kapsamında teyit edilir.
Discută un pilotUn asistent conectat la informațiile afacerii tale, în canalele în care îți scriu clienții.
PlatformăGrai este direcția noastră de cercetare pentru sinteză vocală și modele adaptate limbilor folosite aici.
Cercetare & dezvoltareMegaforms explorează colectarea de răspunsuri prin formulare conversaționale, inclusiv răspunsuri vocale și transcriere.
Dezvoltare & demonstrațiiBize sürecinizi anlatın. Neyin kurulmaya değer olduğuna, neyi bağlayabileceğimize ve sonucu nasıl doğrulayacağımıza birlikte karar verelim.