Eşleme Türü
Tetikleyici, botu harekete geçiren, durumları değiştiren veya başka bir eylem gerçekleştiren şeydir. "Tetikleyici" alanındaki kelimeler, blok içindeki olayı veya eylemi yürütmek için oluşturucudaki iş akışı için bir tetikleyici görevi görür.
Tetikleyiciler, konuşmanın akışını kontrol eder. Koşullu bir blok içindeki "Tetikleyici" alanında veya bir bağlantı okunda yapılandırılırlar.
- Biçim: Bir tetikleyici bir sembol, sayı, düzenli ifade veya belirli bir anahtar kelime olabilir.
- Eylem: Bir kullanıcının girdisi tanımlanmış bir tetikleyiciyle eşleştiğinde, bot, yeni bir huni durumuna ilerlemek veya bir eylemi tetiklemek gibi ilişkili iş akışını yürütür.


Örneğin, tüm olası mesajlaşma başlangıç kelimeleri için bir blok oluşturmanız gerekiyorsa, aşağıdaki koşulu belirtebilirsiniz: start;start;get started;start
Tüm karşılaştırma türlerinde, koşulları ayırmak için noktalı virgül (;) kullanılır.
Sohbet robotu, belirtilen eylemi veya olayı gerçekleştirerek tetikleyiciye yanıt verecektir; örneğin, müşteriye bir karşılama mesajı gönderebilir:

Bir tetikleyiciyi tanımak için karşılaştırma türünü ("Eşleme Türü" alanı) tanımlamanız gerekir. Eşleme türü, sohbet robotunun koşulu müşterinin mesajıyla veya başka bir eylemle (örneğin bir düğme tıklaması) karşılaştırmasına ve ardından hangi olayı tetikleyeceğini belirlemesine yardımcı olur.
MaviBot'ta beş tür koşul eşlemesi vardır:
- Bulanık eşleme;
- Anahtar kelime eşleme;
- RegEx eşleme;
- Tam eşleme;
- Anlamsal arama.

Şimdi her birine daha yakından bakalım.
Bulanık eşleme
Bu, botun yazım hatalarını, yanlış yazımları, yanlışlıkları, eksik harfleri ve harf düzensizliklerini işlemesine olanak tanıyan birincil karşılaştırma türüdür. Dizeler arasındaki benzerlik %70'ten fazlaysa koşul tetiklenir.
Örnek:
"hello" koşulu için aşağıdaki varyasyonlar bir eşleşmeyi tetikler: "hlelo", "hellp", "helo" vb.


Bu karşılaştırma türü daha kullanıcı odaklıdır ve koşulları işlerken insan faktörünü hesaba katar, çünkü yazım hataları oldukça yaygındır.
"Bulanık" eşleme türü, müşterinin konuşmayı başlattığı bir sohbet robotu akışındaki karşılama (başlangıç) bloğu için idealdir.
Anahtar kelime eşleme
Anahtar kelime eşleme, insan benzeri bir danışman oluşturmaya yardımcı olan çok güçlü bir karşılaştırma türüdür. Bu eşleme türüyle bot, koşulun anahtar kelimelerinden en az birini içeren herhangi bir kullanıcı mesajına yanıt verecektir.
Başka bir deyişle, müşteri koşuldaki bir veya daha fazla anahtar kelimeyi içeren bir mesaj gönderirse, akış ayarlarına göre tetiklenecektir.
Örnek:
"hello;person" koşulu için aşağıdaki mesaj onu tetikler:
"I want to greet this wonderful person."


Koşula çok sayıda anahtar kelime ekleyebilirsiniz. Bu, sohbet robotunun müşterinin o anda neye ihtiyacı olduğunu tanımasına ve blok içinde yapılandırılan uygun olayı tetiklemesine olanak tanır.

Yukarıdaki örnekte görüldüğü gibi bot, koşuldaki anahtar kelimelerden en az birini içeren herhangi bir mesaja yanıt verecektir.
Bu eşleme türü ayrıca "Tetikleyicileri yoksay" (yanıtı tetiklememesi gereken mesajlar) alanını kullanır.

Bu alan, koşul alanına benzer şekilde ancak ters etkiyle çalışır: kullanıcının mesajı "Tetikleyicileri yoksay" alanındaki herhangi bir kelimeyi içeriyorsa, koşul tetiklenmez.
Buna göre, "Tetikleyicileri yoksay" alanındaki koşul karşılanırsa, genel koşul çalışmayacaktır.
Değişkenlik
Noktalı virgülle ayrılmış ek bir tetikleyici ekleyebilirsiniz, peki ya birkaç kelime seçeneğinden birini eşleştirmeniz gerekirse?
Örneğin, "İnternetim çalışmıyor", "Bilgisayarım çalışmıyor" veya "Bilgisayarım bozuldu" gibi ifadeleri tek bir tetikleyiciyle işlemek için.
Açıkçası, tüm anahtar kelime varyasyonlarını tek tek listelemek pratik değildir. Bu nedenle VEYA sözdizimi oluşturuldu. Birkaç eşdeğer anahtar kelimeden birini belirtmek için hepsini parantez içine alın ve dikey bir çubukla (|) ayırın.
Örneğin, (tar plan|tariff) (pereit|podklyuch|menit|pomen) tetikleyicisi aşağıdaki gibi sorularla eşleşir:
"Merhaba, yeni bir plana nasıl bağlanırım?"
"Fiyatlandırma planımı nasıl değiştiririm?"


Tetikleyiciyi inceleyelim:
(tar plan | tariff) dizesinin “tar” VE “plan” VEYA “tariff” içermesi gerektiği anlamına gelir
VE aynı anda şu kelimelerden biri: “switch” VEYA “connect” VEYA “change” VEYA “replace”.
İşte diğer sezgisel örnekler:
-
change password (cab|pa)
("cab" ve "pa", "cabinet" ve "personal account" kelimelerinin kısaltmalarıdır) (forgot|reset|restore|remember|accepts|fits|incorrect|not the right|don’t remember) password(can’t|unable to) (restore|change) passwordlogin in contract; (lost|loss|where is|don’t know|where|can’t find|no) contract(suspend|blocked|block|disconnect) (services|internet|inet|charged); (saved|save) day; put on pause; leavingauto payment; payment; pay; recurring payment; connect payment
Tam eşleme
Bu karşılaştırma türüyle bot, olayı yalnızca müşterinin mesajı koşulla tam olarak eşleştiğinde tetikleyecektir.
Karşılaştırma büyük/küçük harf duyarlı değildir; yani koşul "hello" ise ve kullanıcı "HELLO" yazarsa, koşul yine de tetiklenir. Bu dikkate alınmalıdır.
Bu karşılaştırma türü, bir müşterinin bir düğmeyi tıklaması veya belirtilen bir site etiketiyle mini açılış sayfasından sohbet robotuna geçiş yapması gibi bağlantı ayarlarında kullanım için uygundur.
-
Düğme tıklamaları için:
Örneğin, koşullarda, müşteri tarafından tıklandığında onları ilgili bloğa yönlendirmesi gereken düğmelerin adlarını belirtiriz.

Ardından, müşterinin ilk bloktan sonra düğmeyi tıklamasının ardından yönlendirilmesi gereken blokları oluşturacağız. Bunlardan dört tane olmalı:

Ardından, ok ayarlarında düğme adını gireriz ve eşleme türünü "Tam eşleme" olarak ayarlarız.

Artık botu test edebilirsiniz:

Gördüğünüz gibi bot, düğmeleri kullanırken koşulu ve tam eşleme seçimini doğru bir şekilde işler.
- Hunide bir site etiketi kullanma:
Bu durumda, prensip düğmeleri kullanmaya benzer; ancak koşul ve eşleme türü doğrudan koşullu bloğun içinde ayarlanır.
Burada etiket, web sitesi sayfası için etiketi yüklediğiniz Siteler sekmesinden alınır:

Blok koşulundaki etiket, "TAG" veya başka herhangi bir etiket kelimesi kullanılmadan doğrudan bloğun KOŞUL alanında belirtilir.

Web sitesine yüklenen bir etiketi kullanarak bot tetikleyicisinin nasıl ayarlanacağına ilişkin daha fazla ayrıntı için "Bir Web Sitesi Oluşturma ve Temel Ayarlar" makalesinin "Etiket" bölümüne bakın.](/docs/websites-sites-builder#tag)
Sohbet robotu ayrıca blok ayarları içinde yapılandırılan olaya yanıt verecek ve onu yürütecektir.
RegEx eşleme
RegEx eşleme, botun girilen verilerin biçimini kontrol etmesine olanak tanıyan bir koşul türüdür (örneğin, kullanıcının bir telefon numarası girip girmediğini ve başka bir şey girmediğini doğrulamak için).
Veri toplama sırasında, kullanıcılar genellikle istenenden farklı bilgiler girerler. İşte bir telefon numarası doğrulama akışının tipik bir örneği. Kullanıcı geçerli bir telefon numarası dışında bir şey girerse, bot onlardan tekrar denemelerini isteyecektir.

Telefon numarasını isteyen bloktan iki bağlantı çıkar:
- Tetikleyicisi olmayan bir bağlantı
- Bir telefon numarasını doğrulamak için regex tetikleyicili başka bir bağlantı
^(\+)?((\d{2,3}) ?\d|\d)(([ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$
Tetikleyicili bağlantı, telefon numarasını isteğe ekler ve yalnızca geçerli bir telefon numarası algılandığında tetiklenir. İkinci bağlantı, daha düşük önceliğe sahip olduğu için diğer tüm durumlarda tetiklenecektir.
Yararlı düzenli ifadelerin tam listesi aynı adlı makalede bulunabilir.
Anlamsal arama
"Anlamsal arama" seçeneği, yapay zekaya dayanır — sohbet robotunuz için gerçek bir atılım.
Nasıl çalışır:
- Tetikleyici, yapay zekanın müşterinin mesajında tanımlayacağı ANLAMI temsil eden kelimeleri veya ifadeleri içerir.
- Sistem (sohbet robotu), müşterinin girdisinde koşula gömülü anlamı arayarak müşterinin mesajını işler.
- Bot daha sonra blokta ilgili olayı tetikler.
Başka bir deyişle, koşulda belirli ifadeler veya değerler belirterek, yapay zeka her koşulu müşterinin mesajına karşı kontrol eder ve blokta ilgili olayı tetikler (örneğin, bir mesaj gönderme vb.).
Örnek:
Yapay zekanın müşterinin mesajında algılaması ve blok içindeki ilgili olayı tetiklemesi için belirli ifadeler ve anahtar kelimeler belirledik.
Bizim durumumuzda tetikleyici, "hesapları veya sözleşmeleri kapatma" ile ilgili ifadeleri içerir.

"Anlamsal arama" seçeneğini kullanırken bot, müşterinin mesajında koşulda belirtilenlere anlamca benzer kelimeler veya ifadeler bulmalıdır:

Bot, müşterinin mesajını her işlediğinde, blokta tanımlanan gerekli olayı doğru bir şekilde tetikler.
Tetikleyici nasıl yazılır
Tetikleyici, diğer koşullar gibi ilgili alana herhangi bir eşleme türü için girilir: noktalı virgülle (;) ayrılmış.

Tetikleyici alanına ifadeleri veya kelimeleri mümkün olduğunca doğru ve kısa bir şekilde belirtmek en iyisidir.
Blok için kısa, net ve kesin bir koşul, sohbet robotunun blok içindeki olayı doğru bir şekilde tetiklemesine yardımcı olur.
Koşul ne kadar karmaşık, belirsiz ve uzun ifadeler içerirse, yapay zekanın müşteri mesajlarını işlemesi o kadar uzun sürer ve bu da akışınızın yanlış davranışına yol açabilir.
Lütfen dikkat!
Bir tetikleyici yalnızca bir kelimeden oluşmamalıdır: koşulların kısa olması gerekse de, botun aradığı anlamı yansıtmalıdır.
Model iki farklı tek kelimeyi karşılaştırırsa, eşleşmezler. Örneğin, "invoice" kelimesini kullanmak yerine, "payment for the monthly invoice" koşulunu kullanın. Bu koşul, amaçlanan gereksinimleri daha iyi karşılayacak ve yapay zeka modeline anlamsal eşleme için gerekli kriterleri sağlayacaktır.
Bu nedenle, "Anlamsal arama" seçeneğini kullanarak yapay zeka, müşterinin mesajının anlamını anlamak için çeşitli olasılıkları analiz edecek ve eşleşmeye dayalı olarak sohbet robotu uygun olayı tetikleyecektir.
Tetikleyici oluşturucu
Tetikleyici, çeşitli kanallardan, ödeme sistemlerinden ve diğer entegrasyonlardan gelen geri aramaları yanıtlamak için ilgili bloklarda hızlı bir şekilde tetikleyici oluşturmak üzere tasarlanmış benzersiz, özel bir özelliktir.
Buna göre, tetikleyici oluşturucu yalnızca tetikleyicileri destekleyen bloklar için kullanılabilir:

Tetikleyici oluşturucuyu kullanmak için, koşul alanının hemen üzerinde bulunan ilgili düğmeyi göreceğiniz blok ayarlarını açın:

İlgili düğmeye tıkladıktan sonra, koşullarla çalışmak için bir pencere açılacaktır:

MaviBot tetikleyicileri

Tetikleyici oluşturucudaki "MaviBot Tetikleyicileri" sekmesi, MaviBot'ta çeşitli bölümlerde saklanan ve kullanıma sunulan tüm sistem koşullarını içerir.
Varsayılan tetikleyiciler
Bu işlevsellik, bir blok içindeki iç içe koşullara benzer şekilde çalışır: burada sisteme önceden yerleştirilmemiş koşulları belirtirsiniz. Bu bir huni etiketi, bir site etiketi veya yalnızca projenizde bulunan başka bir koşul olabilir.
Değişkenler

Değişkenli tetikleyicilerin kurulumu oldukça kolaydır.
Adım 1. Değişken adını uygun alana girin.
Adım 2. Karşılaştırma parametresini seçin.

Başka bir deyişle, değişkeninizi neyle karşılaştırmak istediğinizi belirtin: belirli bir değerle veya başka bir değişkenle.


Adım 3. Karşılaştırma türünü seçin.

Her karşılaştırmanın bir anlamı vardır: eşittir (==); eşit değildir (!=); kesinlikle büyüktür (>); büyük veya eşittir (>=); kesinlikle küçüktür (<); küçük veya eşittir (<=).
Örnek:

Örnekte, değişkenin değeri 21'den büyük veya eşit olarak ayarlanmıştır. Bu ne anlama geliyor?
Bu, blok içindeki olayın yalnızca "yetişkin" yaş grubuna ait olan müşteriler için tetikleneceği anlamına gelir — yani 21 yaşında veya daha büyük olanlar.
"age >= 18" ifadesi "age > 17" ifadesine eşdeğerdir.
"age > 17" koşulu da yalnızca 17'den kesinlikle büyük olanlar için, yani 18 ve üzeri için tetiklenecektir.
MaviBot bölümleri

MaviBot bölüm koşullarında, projedeki çeşitli olaylar hakkında tipik geri aramalar — sistem bildirimleri — bulunur.
Sistem bildirimlerine dayalı olarak bir blok içinde bir olayı tetiklemek için, koşul alanına gerekli geri aramayı ayarlayın, ardından eşleme türünü seçin ve "Koşul ekle" düğmesine tıklayın:
Bundan sonra, koşul blok içindeki ilgili alanlarda görünecektir.
Blok zaten bir koşul içeriyorsa, "Koşul ekle" düğmesine tıklamak, yeni koşulu mevcut koşulun sonrasına ekleyecektir. Eski koşulu yenisiyle değiştirmeniz gerekiyorsa, "Koşulu değiştir" seçeneğine tıklayın.
Mesajlaşma uygulamaları

Kanallardaki koşul oluşturucu, yalnızca gönderilere veya yayınlara verilen tepkileri izlemeye değil, aynı zamanda sohbet robotunun yanıtı için bloklar içindeki olayları tetiklemeye de yardımcı olur.
Ödeme

Adım 1. Ödeme sistemleri için koşullar ayarlamak için ilgili entegrasyonu bağladığınızdan emin olun; aksi takdirde gerekli sistemle koşul oluşturucuyu kullanamazsınız.
Adım 2. Ardından, ihtiyacınız olan ödeme sistemine tıklayın.
Adım 3. Uygun geri aramayı seçin.
Adım 4. Ardından ilgili alana ödeme tutarını girin ve "Koşul ekle" seçeneğine tıklayın. Son adım, blok ayarlarına uygun mesajı yazmaktır:
Koşul oluşturucunun diğer bölümleri, burada ele alınan bölümlere benzer şekilde yapılandırılır.
Başarılar dileriz!


