ARCY AI
BETA
Referans

Yapılandırma

arcy.js API'sinin tamamı ve kodda mı panelde mi yapılandırıldığı.

arcy.js'in tek bir giriş noktası var: arcy.init(token). Bu giriş noktası her çerçevede ve her iki dağıtım kanalında (npm ve HTML kod parçacığı) aynıdır. Sağlayıcı bileşeni ve yapılandırma dosyası yoktur. Aracının ne yaptığı, ne üzerinde eğitildiği, ne söylediği ve hangi akışları çalıştırdığı kodda değil panelde yapılandırılır. Kodda yalnızca, panele ulaşılmadan önce bilinmesi gereken şu birkaç seçenek kalır: telemetri onayı, dil ve panelin yüklenirken açılıp açılmayacağı.

Sohbet ve Akış'lar ne yapar

Aracının iki yeteneği vardır, ikisi de aynı sohbet yüzeyinden sunulur:

YetenekNe yapar
SohbetEklediğiniz Kaynaklardan ve mevcut sayfadan yararlanarak soruları doğrudan yanıtlar.
AkışlarÜrününüzün içinde, bir operatörün yazdığı adım dizisini (tıklama, doldurma, yönlendirme) sohbet yüzeyi üzerinden adım adım çalıştırır.

Seçilecek ayrı bir mod yoktur ve sayfanızın üzerine bir katman bindirilmez: widget bir sohbet çubuğu ve bir sohbet yüzeyidir, başka bir şey değil. Bir operatörün Akış'ı nasıl yazdığı için Akışlar sayfasına bakın.

init(token, options?)

ts
init(token: string, options?: ArcyOptions): Promise<void>

ARCY'yi tek bir ortam için yükler. token, o ortamın Settings > Installation ekranından kopyalanan açık Token değeridir (arcy_pk_...). Aynı sayfada init() işlevini ikinci kez çağırmak bir konsol uyarısıyla yok sayılır; token'sız çağırmak da aynı sonucu verir.

options tam olarak dört anahtar kabul eder. Başka bir şey geçirmek bir konsol uyarısı yazar ve bilerek yok sayılır: davranışsal bir seçenek kodda değil panelde bulunmalıdır.

ts
interface ArcyOptions {
  telemetry?: boolean
  locale?: string
  defaultOpen?: boolean
  contentLocale?: string
}
  • telemetry: ürününüz davranışsal telemetriyi bir çerez bildirimi arkasına alıyorsa, kendi onay sinyaliniz. Bir bildirimin kabul/ret mantığı sizin sahip olduğunuz koddur; arcy.js böyle bir bildirim göstermez.
  • locale: aracının varsayılan olarak hangi dilde yanıt vereceğini belirleyen iki harfli kod ("en" veya "tr"). Aşağıdaki contentLocale değerinden ayrıdır: bu, hangi çevrilmiş panel içeriğinin sunulacağını değil, varsayılan yanıt dilini belirler.
  • defaultOpen: true sohbet panelini yüklenir yüklenmez açar, false kapalı kalmaya zorlar. Boş bırakılırsa yalnızca ilk ziyarette operatörün paneldeki ayarına uyar; geri dönen bir ziyarette kendiliğinden yeniden açılmaz.
  • contentLocale: ziyaretçinin bölgesini oturum açmadan önce zaten bildiğiniz durumlar için, hangi dilin çevrilmiş içeriğinin sunulacağını belirleyen bölge nitelikli kod ("en-US" veya "tr-TR"). Bunun locale_code özelliğiyle nasıl etkileştiği için Yerelleştirme sayfasına bakın.
ts
import arcy from "arcy.js"

arcy.init("arcy_pk_...", { locale: "tr", contentLocale: "tr-TR" })

init() asla hata fırlatmaz. Eksik veya geçersiz bir token, bozuk bir options nesnesi ya da başlatma sırasında bir ağ hatası, hepsi bir konsol uyarısına dönüşür; sayfanız her durumda çalışmaya devam eder.

identify(userId, attributes?, options?)

ts
identify(userId: string, attributes?: Attributes, options?: IdentifyOptions): Promise<void>

ARCY'ye mevcut kullanıcının kim olduğunu ve onun hakkında ne bildiğinizi söyler. attributes düz bir nesnedir; ARCY bir anahtarı saklamadan önce her anahtarın Agent > Attributes altında tanımlanmış olması gerekir ve her değer bir metin, sayı, mantıksal değer, null veya metin dizisi olmalıdır. Bunun dışındaki her şey, anahtarı adıyla söyleyen bir konsol uyarısıyla yok sayılır.

ts
arcy.identify("user_123", {
  name: "Jordan Lee",
  email: "jordan@example.com",
  plan_value: 249,
  plan_cycle: "monthly",
})

options.userHash, kendi sunucunuzda hesaplanan kimlik doğrulama imzasını taşır. Tarif için Kimlik doğrulamayı zorunlu kılma bölümüne bakın.

identifyAnonymous(attributes?)

ts
identifyAnonymous(attributes?: Attributes): Promise<void>

Oturum açmış kullanıcısı olmayan sayfalar içindir. localStorage içinde saklanan bir kimlik üretir (veya var olanı yeniden kullanır), böylece geri dönen anonim bir ziyaretçi oturumlar arasında tanınır. Anonim kullanım, tanımlı kullanımla aynı kredi sayacından düşer; anonim sınırlar için Settings > Limits ekranına bakın.

updateUser(attributes?)

ts
updateUser(attributes?: Attributes): Promise<void>

Kimliği değiştirmeden mevcut kimliğe yeni özellikleri birleştirir. Kendisinden önce gelen identify() çağrısının kimlik doğrulama durumunu devralır, bu yüzden kendi userHash değerini almaz. Herhangi bir identify() veya identifyAnonymous() çağrısından önce çağrılırsa hiçbir şey yapmaz: güncellenecek bir profil henüz yoktur, dolayısıyla hiçbir şey gönderilmez.

reset()

ts
reset(): void

Mevcut kimliği ve anonim kimliği temizler. Bunu çıkış işleminize bağlayın. Klavyenin başındaki kişinin değişiyor olabileceğine dair gerçek kanıt bulunan tek an budur, bu yüzden ARCY iki kişinin etkinliğini tek bir huniye karıştırma riskini almak yerine yeni bir anonim kimlik başlatır.

on(event, handler)

ts
on(event: "ready" | "open" | "close", handler: () => void): () => void

Bir widget yaşam döngüsü olayına abone olur ve aboneliği bırakan bir işlev döndürür. ready, init() oturumu tamamen yapılandırdığında bir kez tetiklenir; open ve close, sohbet panelinin görünürlüğü değiştiğinde tetiklenir. on(), init() çağrısından önce de çağrılabilir.

open() / close()

ts
open(): void
close(): void

Sohbet panelini kod içinden açar veya kapatır. İkisi de yerel ve eş zamanlı çalışır, hiçbir zaman hata fırlatmaz.

Geri kalan her şey panelde

Aracının kişiliği, hangi Kaynaklardan yararlandığı, hangi akışları çalıştırabildiği, kredi sınırları veya dil çevirileri için kod düzeyinde bir seçenek yoktur. Bunların tümü uygulamanın panel bölümlerindedir: Akışlar, Train, Persona, Origins, Attributes ve Localization için Agent; Installation, Environments, kimlik doğrulama ve Limits için Settings.

Ayrıca bakınız

Bu sayfada