Değişkenler Nasıl Kullanılır
MaviBot'ta sohbet robotları oluştururken değişkenlerin ne olduğunu ve bunları nasıl etkili bir şekilde kullanacağınızı keşfedelim.
Tek bir proje içindeki değişkenler ve sabitler için aşağıdaki sistem sınırlamalarının farkında olun:
Şablon Değişkenleri:
- Maksimum miktar: 100 değişken
- Maksimum ad uzunluğu: 100 karakter
Proje sabitleri:
- Maksimum miktar: 50 sabit
- Maksimum ad uzunluğu: 100 karakter
- Maksimum değer uzunluğu: 5.000 karakter
Değişken, benzersiz bir metin etiketiyle tanımlanan, veriler için adlandırılmış bir depolama konumudur.

Şek. 1: Bir ödeme tutarını depolayan, total adında bir değişken.
MaviBot çeşitli değişken türleri sağlar:
- Yerleşik değişkenler
- Sistem değişkenleri
- Kullanıcı tanımlı değişkenler — bunlar proje içinde sizin oluşturduğunuz değişkenlerdir.
Bir değişkeni bildirmek, adlandırılmış bir kapsayıcıya bir değer atamak anlamına gelir. Başka bir deyişle, a=0 gibi bir ifade, a değişkeninin bildirimidir. Oluşturucuya, a değişkeninde bir sayı saklayacağımızı ve şimdilik bu değerin 0 olduğunu söylemiş olduk.
Bir değişkene değer atamak aynı anlama gelir.
"Bir değişkene bir fonksiyonun değerini atamak" veya "bir değişkeni bir fonksiyona eşitlemek" ifadeleri de yaygın olarak kullanılır. İlke aynıdır: belirli bir değer atamak yerine, bir fonksiyonun sonucunu atarsınız. Örneğin: s_id = tg_send_message(platform_id, "Merhaba!") Bu durumda, fonksiyonun sonucu değişkende saklanacaktır.
Bir değişkeni sıfırlamak, ona 0 değerini atamak anlamına gelir.
Fonksiyonlar ve metotlar, MaviBot tarafından önceden yapılandırılmış komut kümeleridir. Çoğu fonksiyon, fonksiyonun veya metodun anlayabileceği parametreler gerektirir. Bot gerekli parametreleri aldıktan sonra belirli bir komutu yürütür.
tg_send_message(platform_id, "Merhaba!") — bu fonksiyon, Telegram'da "Merhaba!" mesajını gönderir.

Şek. 2. Bir fonksiyona atanmış, text1 adında bir değişken örneği.
DEĞİŞKENLERLE ÇALIŞMA KURALLARI:
-
Bir değişken adı yalnızca bir harf ile başlayabilir; bir sayı ile başlayamaz.
Age1 - ✅ doğru
1Age - ❌ yanlış
age1 - ✅ doğru - önerilen seçenek
-
Bir değişken, alt çizgi (_) dışında boşluk veya özel karakterler içeremez.
Name_Surname - ✅ doğru
Name Surname - ❌ yanlış
nameSurname - ✅ doğru - önerilen seçenek
Programlama dillerindeki ayrılmış sözcükler değişken adı olarak kullanılamaz, örneğin: print, true, false, count, sum vb.
-
Kullanıcı tanımlı değişkenler için yerleşik ve sistem değişkenlerinin adlarını kullanmak kesinlikle yasaktır. Bu tür değişkenlerin listesini burada bulabilirsiniz. bağlantı
-
Öneririz:
- Değişkenler için Latin (İngilizce) adlar kullanın.
- Kısa ancak anlamlı değişken adları kullanın, örneğin: totalSum, pay_name, ns, name_client, vb.
Bir değişkenin değeri nasıl alınır
Değişken adını küme parantezleri #{} içine yerleştirin. Mesaj metni alanında değerine bu şekilde başvurabilirsiniz. Ancak, "Hesap Makinesi" alanında, değişkenin değerine herhangi bir ek sözdizimi olmadan yalnızca adıyla başvurmalısınız.
#{} yapısı, bir değişkenin değerini almanızı sağlar. Değişkenin değerini metne eklemek için "Mesaj metni" alanında kullanılır.
Örnek:

Sistem, bir değişkenin değerinin başka bir değişkenin adının bir parçası olduğu iç içe değişkenleri destekler. Örneğin: #{q#{test#{i}}}
"Hesap Makinesi" alanında, #{} gösterimini kullanmadan değişkenlere adlarıyla başvurun.
Örneğin, iki değişkenimiz varsa: price (toplam) ve quantity (miktar).
num = 10
sum = 1500

Toplam tutar nasıl görüntülenir
Hesap makinesine aşağıdakini girin:
total_sum = sum1 * num2 ✅ doğru

Nasıl yapılmamalı :
total_sum = #{sum1} * #{num2} - ❌ yanlış
Bot'tan bir değişken nasıl silinir
Bir değişkeni silmek (temizlemek) için "Hesap Makinesi" alanına aşağıdakilerden birini girin:
YourVariableName =
veya
YourVariableName = ""
Eşittir işaretinden sonra bir boşluk bırakın veya çift (ya da tek) tırnak işareti kullanın.
Lütfen dikkat! Değişkenin nereye ait olduğunu belirtmek için doğru ön eki kullanmak önemlidir.
Proje düzeyindeki değişkenler (proje ayarlarında saklanır) için project: ön ekini kullanın.
Örnek:
project.YourVariableName =
veya
project.YourVariableName = ""Müşteri düzeyindeki değişkenler için client ön ekini kullanın:
Örnek:
client.YourVariableName = veya
client.YourVariableName = ""Anlaşma düzeyindeki değişkenler için ön ek gerekmez.
Yerleşik değişkenler
İşte yerleşik değişkenlerin listesi:
#{none} - mesajı yok say
#{api_key} - Mavibot API çağrılarında kullanılan API belirteci
#{attachment_url} - ekin bağlantısını içerir
#{attachments} - kullanıcının mesajındaki ek URL'lerinin bir JSON dizisi
#{avatar} - kullanıcının avatarına bağlantı ("Müşteriler" bölümünde gösterilir)
#{client_id} - oluşturucudaki müşteri kimliği, API isteklerinde de kullanılır
#{client_type} - müşterinin geldiği mesajlaşma türü (değerler [burada] açıklanmıştır)
#{current_date} - projenin saat dilimine göre gg.aa.yyyy biçiminde geçerli tarih
#{current_time} - projenin saat dilimine göre ss:dd biçiminde geçerli saat
#{custom_answer} - "Sunucu yanıt URL'si" alanında belirtilen sunucudan alınan yanıt
#{message_from_outside} - gelen mesajın türü. Olası değerler:
&#xNAN;normal mesaj = 0
API aracılığıyla gönderilen mesaj = 1
geri arama bildirimi (diyalogda sarı arka plan) = 3
telefon bildirimi (diyalogda açık mavi arka plan) = 5
Bu değişken her gelen mesajla oluşturulur ancak müşteri kartında görünmez.
Blok tetikleyicileri ve bağlantıları için koşullar ayarlamak üzere "Karşılaştırma değişkeni" alanında kullanabilirsiniz.
#{date_of_creation} - kullanıcının bot'a eklendiği veya bot'a ilk kez mesaj gönderdiği tarih
#{full_name} - kullanıcının tam adı (adı ve soyadı)
#{group} - müşterinin bağlı olduğu bot (müşteri kartında "Bot'a bağlı" olarak gösterilir)
#{main_client_id} - bağlı müşteri kartları grubundaki ana müşterinin kimliği
#{message_id} - müşteriyle geçerli konuşma durumu kimliği (varsayılan olarak NONE)
#{messenger} - müşterinin geldiği mesajlaşma uygulamasının adı
#{name} - kullanıcının adı
#{next_day} - yarının tarihi gg.aa.yyyy biçiminde (mesajları zamanlamak için kullanışlıdır)
#{order_id} - sipariş tanımlayıcısı (müşteri kimliği ve dahili sipariş kimliği, kısa çizgi ile ayrılmış)
#{order} - kullanıcı tarafından gönderilen siparişin içeriği
#{platform_id} - mesajlaşma platformundaki müşteri kimliği
#{question} - kullanıcı tarafından gönderilen mesaj
#{timestamp} - milisaniyeleri içeren geçerli zaman damgası
#{time_of_creation} - kullanıcının bot'a eklendiği veya bot'a ilk kez mesaj gönderdiği saat
#{wa_bot} - kullanıcının mesaj attığı WhatsApp numarası (CRM alanlarına aktarmak ve potansiyel müşterileri yöneticiler arasında dağıtmak için kullanışlıdır)
#{weekday} - haftanın günü sayı olarak (Pazartesi = 1, Salı = 2, vb.)
client_type değerleri
| Değer | Mesajlaşma Uygulaması |
|---|---|
| 1 | Telegram için |
| 2 | Viber için |
| 3 | Facebook için |
| 5 | çevrimiçi sohbet için |
| 10 | Instagram için |
| 14 | e-posta |
| 16 | Telegram Business Hesabı |
| 21 | Telegram hesabı |
| 22 | TikTok |
Sistem değişkenleri
Sistem, bir bot'un çalışması sırasında otomatik olarak çeşitli çalışma zamanı değişkenleri oluşturur. Bot'unuzu oluştururken bu değişkenleri kullanabilirsiniz. İşte size yararlı olabileceklerin bir listesi.
Ek sistem değişkenlerini belgelerde bulabilirsiniz. Kullanımlarıyla ilgili bölümlerde bulunurlar.
phone - telefon numarası
notSubscribed - değişken 1'e eşitse, müşteri mesajlardan aboneliğini iptal etmiştir ve herhangi bir mesaj almayacaktır
clientBlocked - müşteri engellenmiştir ve bot onlar için çalışmaz
story_url - müşterinin yanıtladığı Instagram hikayesinin tanımlayıcısı
viewed_page - kullanıcının çevrimiçi sohbette yazdığı sayfa
wa_bot - WhatsApp bot'unun telefon numarası
Ödeme sırasında hangi değişkenlerin oluşturulabileceğini öğrenmek için "Ödeme sistemi" bölümündeki ödeme hizmetleri entegrasyon kılavuzlarına bakın.
Özel değişkenler
Özel değişkenler aşağıdakilere ayrılır:
- Proje değişkenleri (ortak değişkenler olarak da adlandırılır)
- Müşteri değişkenleri
- Anlaşma değişkenleri (normal değişkenler olarak da adlandırılır)
- Sabitler
Her değişken türü aşağıda açıklanacaktır.
Oluşturucunun beklediğinizden farklı bir değer görüntülemesini veya kullanmasını önlemek için farklı değişken türleri için aynı adları kullanmaktan kaçının.
Bir değişkene değer atarken, uygun ön eki kullanarak türünü belirtmek önemlidir:
client. (müşteri değişkenleri için) ve project. (proje değişkenleri için). Anlaşma değişkenleri için ön ek kullanılmaz.
Bir değişkenin değeri alınırken ön ek atlanır.
Örnek:
Müşterilerinizden gelen beğeniler için bir sayaç görevi görecek, like adında bir proje değişkeni oluşturmak istediğinizi hayal edin.project.like = 0 - bildirim, bir kez yapılır
Beğenileri saymanız gereken bloğa şunu yazın:
project.like = like + 1
Değişken öncelik sırası:
Anlaşma değişkenleri en yüksek önceliğe sahiptir, ardından müşteri değişkenleri ve ardından proje değişkenleri gelir.
Mesajlaşma Uygulaması Kimliği (platform_id)
Mesajlaşma Uygulaması Kimliği (platform_id), kullanıcının/sohbetin/kanalın mesajlaşma uygulaması içindeki tanımlayıcısıdır. Bulmak için "Müşteriler" bölümünde istediğiniz müşteriyle olan konuşmayı açın. Sohbet penceresinin sağ tarafında, "Müşteri hakkında - Sistem değişkenleri" sekmesine veya "Tümü" sekmesine gidin.
platform_id, kullanıcının benzersiz mesajlaşma uygulaması kimliğini temsil eden kalıcı, sistem tarafından oluşturulan bir değişkendir.
-
Kalıcılık: Bu kimlik bir kullanıcı için sabit kalır. Kayıtlarını oluşturucudan silseniz bile, yeniden kayıt olduklarında
platform_idaynı olacaktır. - Kaynak: Kimlik, kullanıcı bot ile ilk kez etkileşime girdiğinde mesajlaşma platformu (ör. Telegram, WhatsApp) tarafından atanır.
Aşağıdaki örnek, platform_id'nin bir müşteri kartında nasıl göründüğünü göstermektedir.

platform_id değişkeni normal kullanıcıların yanı sıra topluluklar, kanallar ve sohbetler için de mevcuttur.
Bot'un yönetici olduğu bir Telegram kanalının platform_id'sini (mesajlaşma uygulaması kimliği) almak için, kişisel hesabınızdan kanala bir mesaj göndermeniz yeterlidir. Bu, bot ile kanal arasında otomatik olarak bir diyalog oluşturacaktır.
Kanalın platform_id değerini "Müşteri Hakkında" bölümünden kopyalayabilirsiniz.
Telegram'da kanalların messenger kimliği her zaman eksi işaretiyle (-) başlar. Fonksiyonları kullanırken, eksi işareti de dahil olmak üzere tüm değeri eklediğinizden emin olun.
Değişkenler nasıl kullanılır
Değişkenler tetikleyicilerde, siparişlerde, kullanıcı yanıtlarında, bloklarda ve daha fazlasında kullanılabilir. Bir emlak acentesi için bir huni oluştururken somut bir örneğe bakalım.
Şimdi bir Başlangıç bloğu oluşturalım:

Adım 1: "Teşekkür ederiz" bloğunu oluşturun
Kullanıcıya girdisi için teşekkür eden bir mesaj içeren yeni bir blok oluşturun.
Adım 2: Geçişi yapılandırın
Bu bloğa giden bağlantıda aşağıdaki tetikleyiciyi yapılandırın:
- "Kullanıcı veri girer" geçişini etkinleştirin.
-
"Giriş verisi" alanına değişken adını girin:
name.

Kullanıcının girdisi Name değişkeninde saklanır. Bu değer, #{Name} sözdizimi ile değişken çağrılarak sonraki herhangi bir blokta yeniden kullanılabilir, örneğin: Hoş geldiniz, #{Name}!.

Bot şu şekilde çalışacaktır:

Şimdi görevi biraz daha karmaşık hale getirelim.
Aynı blokta, kullanıcıya birinci (yeni) veya ikinci (ikinci el) konutla ilgilenip ilgilenmediğini soracağız:

Ardından, "Sohbet" bloğundaki "Birinci konut" ve "İkinci konut" butonlarından bağlantılar oluşturun.

Şimdi bloklar içinde değişkenleri kullanmanın ikinci yoluna bakalım.
Sağ bloğu seçin ve "Hesap Makinesi" alanına aşağıdaki metni girin:
client_interest = Birinci konut. Sol blokta şunu girin:
client_interest = İkinci konut.


Kullanıcı bu bloklardan herhangi birine geçtiğinde bir değişken atanır. Bunu daha sonra bir sipariş oluştururken kullanabiliriz.
Ardından, bu bloklarda müşteriye gayrimenkul satın alma bütçesini soracağız ve müşterinin yanıt tetikleyicilerine göre onlara giden oklarla iki blok daha oluşturacağız.




"Bütçeniz nedir?" bloğundan bir bağlantı oluşturun ve kullanıcıları girdilerine göre segmentlere ayırmak için bir tetikleyici koşulu belirleyin.
- Bağlantının ayarlarında "Kullanıcı veri girer" onay kutusunu etkinleştirin.
- Müşterinin yanıtını saklamak için bir değişken adı atayın (örneğin,
budget). -
"Değişken" alanında, bir koşul oluşturmak için yerleşik
#{question}değişkenini (kullanıcının son mesajını içerir) kullanın.-
Örnek:
#{question} <= 1000000
-
Örnek:

"Potansiyel Müşteri" bloklarına giden tüm bağlantılar için "Kullanıcı veri girer" seçeneğini etkinleştirin ve değişkeni tanımlayın.
Daha kapsamlı anlaşma bilgisi sağlamak için doğrudan "Potansiyel Müşteri" bloğunda ek bir değişken de tanımlayabilirsiniz.

Şimdi son iki bloğun türünü "Potansiyel Müşteri" olarak değiştirin ve sonuçları görün:
Akışı eylem halinde test edelim:

Oluşturulan anlaşmayı ve müşterinin saklanan verilerini "Müşteriler" bölümüne gidip ilgili konuşmayı açarak inceleyebilirsiniz. Anlaşma değişkenleri orada görünecektir.

Artık değişkenleri en az üç farklı şekilde nasıl kullanacağınızı biliyorsunuz:
- Kullanıcı giriş verilerine değişken adları atayın (örneğin, "Ad", "Bütçe")
- Bir bloğa geçerken bir değişken değeri atayın (örneğin, client_interest = Birinci konut)
Değişkenler nasıl görüntülenir
Bir müşterinin değişkenlerini görüntülemek için "Müşteriler" bölümüne gidin ve müşteri kartını açın.

Değişkenler, müşteri kartında bir liste biçiminde görüntülenir:
- Her değişken kendi satırında yer alır.
- Değişken adı solda gösterilir.
- Buna karşılık gelen değer sağda görüntülenir.
Bir değişkeni değiştirmek için:
Bir eylem düğmesini ortaya çıkarmak için listedeki satırının üzerine gelin. Bu düğmeye tıklamak şunları yapmanızı sağlar:
- Değişkenin adını düzenleyin.
- Değişkenin değerini düzenleyin.
- Değişkeni tamamen silin.


Sistem değişkenleri düzenlenemez!
Müşteri değişkenleri nasıl ayarlanır
"Veri toplamanın sonu" bloğu (kırmızı blok) kullanıldığında müşteri değişkenleri silinmez, sıfırlanmaz veya kaybolmaz.
Bir müşteri değişkeni iki şekilde ayarlanabilir: açık ve örtülü.
Açık bir değişken tanımlama yolu, huni bloklarından birinin "Hesap Makinesi" alanında ayarlamaktır.
Örnek: client.age = 28 veya client.age = 28:

Örtülü yol, okun veri giriş alanında bir değişken ayarlamaktır.
Örnek:
Müşterinin adını sorduğumuz bir blok oluşturalım ve ayrıca aşağıda bir blok oluşturalım:

Ardından, bağlantı ayarlarına gidin ve "Kullanıcı veri girer" seçeneğini etkinleştirin.

Değişkeninizi adlandırırken client. önekini kullanın (örneğin, client.name) kullanıcının girdisini saklamak için. Bu değişkene daha sonraki mesajlarda #{client.name} olarak başvurulabilir.

Müşteri değişkenleri, oluşturucuda normal değişkenlerle tamamen aynı şekilde kullanılır, ancak client öneki olmadan.
Proje değişkenleri nasıl ayarlanır
"Potansiyel Müşteri" bloğu (kırmızı blok) kullanıldığında genel değişkenler silinmez, sıfırlanmaz veya kaybolmaz.
Genel değişkenlere botun tüm kullanıcıları erişebilir. Bot davranışını kontrol etmek veya farklı kullanıcılar arasındaki etkileşimleri kolaylaştırmak için idealdirler.
Kullanım durumu örneği:
Bir kullanıcı, bir değişken ayarlayarak (örneğin, project.latest_listing) bir pazar yeri kanalına bir öğe gönderebilir ve diğer tüm kullanıcılar bunu görebilir ve yanıt verebilir.
Atama sözdizimi
Bir genel değişken oluşturmak veya güncellemek için Hesap Makinesi'nde project. önekini kullanın:
Örnekler:
project.product_shop = 28project.age = 28

Herhangi bir önek olmadan kullanılabilirler.
Verilerin tabloda nasıl görüntülendiğini görelim.

Şimdi, test modunda "Başlangıç" bloğunu çalıştırın.

Bot tarafından gönderilen mesajda tablodan değişkene yazılan verileri görebiliriz. Mesajda #{} sözdizimini kullanarak değişkene başvurduğumuz için, içinde depolanan veriler bot sohbetinde görüntülendi.
get_records_from_table() fonksiyonuyla nasıl çalışılacağına dair daha fazla ayrıntı "MaviBot tablosu ile AI asistanı" makalesinde açıklanmıştır.
project. öneki, fonksiyonun tablo verilerini doğrudan "Değişkenler" bölümünde erişilebilen projenin genel değişkenlerine yazmasına izin verdi.

Proje değişkenlerini proje ayarlarında düzenleyebilirsiniz.
Örnek: proje değişkenlerini kullanma
Bota giren her yeni müşteriye sıralı bir numara atayan bir sistem oluşturun.
Uygulama:
- Proje ayarlarınıza gidin.
- Yeni bir proje değişkeni oluşturun (örneğin,
project.client_counter).


- Başlangıç değerini ayarlayın (örneğin,
0) bu "Botta müşteri yok" anlamına gelir:



Botun başlangıç bloğuna, aşağıdakileri yapan bir mantık ekleyin:
- Proje değişkeninin değerini 1 artırır.
- Yeni değeri, geçerli kullanıcı için müşteriye özgü bir değişkene atar.

Sayaç aynı müşteri için iki kez artırılamayacak şekilde bir kısıtlama ayarlamayı unutmayın.

Sabit değişkenler nasıl ayarlanır
Sabitler, bir projenin yaşam döngüsü boyunca değişmeyen (veya nadiren değişen) sabit değerlerdir.
Genel değişkenlerden temel farkı:
Genel değişkenlerin aksine, sabitler müşteriye özeldir. Bir sabitin değeri değiştirilirse, değişiklik yalnızca o bireysel müşterinin oturumu için geçerlidir.
Yaygın kullanım durumları:
Sabitler, aşağıdakiler gibi statik verileri depolamak için idealdir:
- Ürün fiyatları ve müşteri indirimleri
- Entegrasyon token'ları ve API anahtarları
- Satıcı veya destek iletişim bilgileri
- Diğer herhangi bir sabit yapılandırma değeri
Örnek: sabit değişkenleri kullanma
Örneğin, bir müşterinin indirimi varsayılan olarak %10 olabilir, ancak bir promosyon kodu girildiğinde %25'e değişebilir.
"Proje ayarları" → "Sabitler" bölümünde şunu girin: İndirim : 10

Bir promosyon kodu girmek için, indirim değişkenine 25 değerini atadığımız bir "Tetikleyici" bloğu ekleyin.

İndirim tutarını gösteren değişkeni yeşil blokta görüntüleyin:

Adım 1: Otomatik geçişi yapılandırın
Gri bloktan sıfır saniyelik bir zamanlayıcı ile bir bağlantı oluşturun. Bu, indirimin hemen uygulanmasını ve müşterinin başlangıç bloğundaki mesaja geçmesini sağlar.
Adım 2: Akışı test edin
Şimdi, tüm sırayı tetiklemek ve test etmek için bota bir mesaj yazın.

Promosyon kodu olmadan standart indirim %10'dur. Ancak, geçerli bir promosyon kodu girmek durumu değiştirir.

Böylece, promosyon kodunu girdikten sonra, bu müşteri için "indirim" değişkeni 25 oldu.
Bunun nedeni, discount = 25 gibi bir atamanın, aynı ada sahip sabitin değerini değiştirmek yerine anlaşma değişkeni için değeri ayarlamasıdır.
Temel anlaşma değişkenleri
name - anlaşma adı. Projenin uluslararası versiyonu için Name terimi kullanılır.
description - anlaşma açıklaması. Projenin uluslararası versiyonunda Description kullanılır.
budget - anlaşma tutarı (sayı).
Değişkenleri /set_order_vars API isteğini kullanarak düzenlemek için, büyük/küçük harf duyarlılığı ve proje versiyonu dahil olmak üzere bu kılavuzdaki adları tam olarak gösterildiği gibi kullanmalısınız.
Sınırlar
Maksimum değişken adı uzunluğu: 500 karakter
Maksimum değişken değeri uzunluğu: 100.000 karakter
Müşteri veya anlaşma başına maksimum değişken sayısı: 1.000 karakter.
Değişkenlerle doğru şekilde nasıl çalışılır
Bir değişkenin değeri ne zaman tırnak işareti içine alınmalıdır?
Örneğin, client_id = 1202020202 veya client_id = '1202020202'?
Her iki sözdizimi seçeneği de işlevsel olarak doğrudur. Bir değerin etrafında tırnak işareti kullanmak, yalnızca hesap makinesi düzenleyicisinde görsel olarak vurgulanmasını etkiler.
Ancak, tutarlı kodlama kurallarına uymak okunabilirliği ve bakımı kolaylaştırır:
-
Sayısal değerler için tırnak işareti kullanmayın (ör.
discount = 25). -
Metin değerleri için tırnak işareti kullanın (ör.
status = "active").



Müşteri Kimliği, Site Kimliği, Blok Kimliği veya Sertifika Kimliği gibi tanımlayıcıları fonksiyonlara iletmek için doğru sözdizimi nedir—tırnak işareti içine alınmalı mıdırlar?

Bir kimlik, bir metoda veya fonksiyona iletildiğinde tırnak işareti içine alınmamalıdır:

Hangisi kullanılmalıdır: çift tırnak mı yoksa tek tırnak mı?
Tek veya çift tırnak işareti kullanmak arasında bir fark yoktur, ancak çift tırnak kullanmanızı öneririz. Bu şekilde, örneğin bir dize içine bir değişken eklerken, değişken farklı bir renkte vurgulanacak ve fark edilmesi kolaylaşacaktır.

Boşluklar nasıl yerleştirilmelidir?
Değişken ile eşittir işareti arasında boşluk olması aynı şekilde çalışır mı (örneğin, ans="yes", ans = "yes", ans= "yes", ans ="yes"?

Boşluk, yöntemlerin, değişkenlerin veya fonksiyonların çalışmasını etkilemez. Ancak, okunabilirliği artırmak için kodda boşluk kullanılması önerilir.
Hesap makinesine yorumlar nasıl doğru yazılır
Hesap Makinesine yorum yazma hakkında daha fazla ayrıntı için lütfen bu makaleye bakın.
Değişkenler nasıl karşılaştırılır
Değişken değerlerini karşılaştırarak chatbot'un akışını kontrol edebilirsiniz. Bu, yasal uyumluluk için bir kullanıcının yaşını doğrulama veya etkileşimleri kullanıcının mesajlaşma platformuna göre yönlendirme gibi koşullu mantık oluşturmanıza olanak tanır.
Farklı mesajlaşma uygulamalarına veya aynı mesajlaşma uygulamasının farklı hesaplarına göre huniyi nasıl böleceğiniz burada açıklanmıştır.
Desteklenen operatörler:
"+": toplama
"-"': çıkarma
"*" çarpma
"/": bölme
"%'": bölümden kalan
"^" "**": üs alma
"and" "AND" "&&": mantıksal VE
"or" "OR" "||": mantıksal VEYA
Karşılaştırma operatörleri:
"==" — eşittir
"!=" — eşit değildir
">" — büyüktür
"<" — küçüktür
">=" — büyük veya eşittir
"<=" — küçük veya eşittir
ÖNEMLİ!
Yerleşik değişken etiketinin (bot başlatma etiketi) müşterinin kartında bulunmadığını kontrol etmek için aşağıdaki karşılaştırma yöntemini kullanın:
tag == "NONE"
Değişkenler, "Değişken" alanındaki koşul içinde karşılaştırılmalıdır (hem bağlantı ayarlarında hem de blok ayarlarında):
Bir tetikleyici bloğunun "Değişken" alanında değişken karşılaştırma örneği.

Bir blok bağlantısının "Değişken" alanında değişken karşılaştırma örneği.

Değişkenler ve tetikleyiciler birlikte nasıl çalışır
Bir bağlantının etkinleştirilmesi için her iki tetikleyicinin de karşılanması gerekir:
- "Tetikleyici" alanındaki koşul.
- "Değişken" alanındaki karşılaştırma mantığı.
"Değişken" alanını anlama
"Değişken" alanına bir ifade olmadan yalnızca bir değişken adı (ör. client_type) girerseniz, sistem değişkenin değerinin varlığını veya doğruluğunu kontrol eder. Bunu kullanıcının ham girdisiyle karşılaştırmaz.
Örnek:
Aşağıdaki yapılandırma, client_type değişkeninin 6'ya eşit olup olmadığını kontrol ederek müşterinin WhatsApp'tan olup olmadığını kontrol eder (burada 6, WhatsApp'ı temsil eder).
client_type == 6

Aşağıdaki örnek aynı şekilde çalışır:

Lütfen dikkat!
"Tetikleyici" alanında değişken karşılaştırması için birden fazla değer belirtemezsiniz.![]()
Bu yanlış!
Birden fazla değişkeni karşılaştırmanız gerekiyorsa, değerlerini "Değişken" alanında belirtin.
Bu seçenekler doğrudur.
![]()
client_type == 3 değişken değeri 3'e eşitse geçiş
attachments != None değişken herhangi bir değer içeriyorsa geçiş
attachments == None değişken ayarlanmamışsa geçiş
product_quantity >= 100 ürün miktarı 100'den büyük veya eşitse geçiş
product_quantity <= 100 ürün miktarı 100'den küçük veya eşitse geçiş
name == "John" değişken adı John'a eşitse geçişBir değişkenin boş olup olmadığını kontrol etmek için şu ifadeleri kullanın:
&#xNAN;"#{value}" == ""
"#{value}" != ""(burada value değişken adıdır).
Karşılaştırma işleminin sonucu bir boolean değer döndürür: True veya False.
Maksimum ifade uzunluğu: 1000 karakter
Farklı türlerdeki değerler karşılaştırılmaya çalışıldığında varsayılan değer sonuç olarak döndürülecektir.
"==" - False "<" - False
"!=" - True ">=" - False
">" - False "<=" - False
ÖNEMLİ!
Yerleşik değişken etiketinin (bot başlatma etiketi) müşterinin kartında bulunmadığını kontrol etmek için aşağıdaki karşılaştırma yöntemini kullanın:
tag == "NONE"
Örnek: bir kullanıcının yaşını (age) kontrol eden bir bot.
- Eğer
age < 18ise, reşit olmayanlar için bir mesaj gönderir. - Eğer
age >= 18ise, yetişkinler için bir mesaj gönderir.


Akışın, tetikleyicisi olmayan ve kendisinden zamanlı bağlantıların çıktığı bir blok içerdiğine dikkat edin.
Bu blok, botun kullanıcı eylemlerine değil, hesaplama sonuçlarına tepki verdiği akışların nasıl oluşturulacağını göstermek için kasıtlı olarak tasarlanmıştır. İlk adımda, cevap bir değişkene kaydedilir ve ardından karşılaştırma gerçekleşir. Anında yanıt için oklardaki gecikme 0 olarak ayarlanmıştır.
"Age >= 18" karşılaştırması ayrıca "18'den büyük veya eşit" olarak da ifade edilebilir.

Lütfen tetikleyicilerdeki hatalara dikkat edin:
![]()
![]()
![]()
Bir sayı aynı anda 18'den büyük, küçük ve 18'e eşit olamaz!
Bu tetikleyiciler anlamsızdır. Her sayı ya 18'den küçüktür, ya 18'den büyüktür ya da 18'e eşittir.
Önemli!
Değişkenlerle mantıksal tetikleyiciler "Değişken" alanına yazılmalıdır, "Tetikleyici" alanına değil!
Örneğin, aşağıdaki resimde, blok **telefon değişkeni doldurulmuşsa (yani None'a eşit değilse) tetiklenecektir:

Bir sonraki örnek, operatörlerin nasıl birleştirileceğini gösterir:

Müşterinin değeri 18 ile 99 arasında olan bir yaş değişkeni varsa, blok tetiklenecektir. Değişken eksikse veya yaş 18'den küçük veya 99'dan büyükse, blok etkinleşmeyecektir.
Not!
Bir değişkeni tırnak işareti içindeki bir değerle karşılaştırıyorsanız, tırnak işaretleri ile değer arasında boşluk olmadığından emin olun; aksi takdirde blok tetiklenmeyebilir veya hatalı davranabilir!
Doğru (**tırnak işaretinden önce veya değerden sonra my_new_bot arasında boşluk yok):
![]()
Yanlış (tırnak işaretinden önce bir boşluk var):
![]()