Cara menggunakan pembolehubah

Mari kita terokai apa itu pembolehubah dan cara menggunakannya dengan berkesan semasa membina chatbot di MaviBot.

Sila ambil perhatian tentang had sistem berikut untuk pembolehubah dan pemalar dalam satu projek:

Pembolehubah Templat:

  • Kuantiti maksimum: 100 pembolehubah
  • Panjang nama maksimum: 100 aksara

Pemalar Projek:

  • Kuantiti maksimum: 50 pemalar
  • Panjang nama maksimum: 100 aksara
  • Panjang nilai maksimum: 5,000 aksara

Pembolehubah ialah lokasi storan bernama untuk data, dikenal pasti oleh label teks unik.

Rajah 1: Pembolehubah bernama total, menyimpan jumlah pembayaran.

MaviBot menyediakan beberapa jenis pembolehubah:

  1. Pembolehubah terbina dalam
  2. Pembolehubah sistem
  3. Pembolehubah yang ditentukan pengguna — ini adalah yang anda buat sendiri dalam projek.

Untuk mengisytiharkan pembolehubah bermaksud memberikan nilai kepada bekas bernama. Dengan kata lain, pernyataan seperti a=0 ialah pengisytiharan pembolehubah a. Kami baru sahaja memberitahu (mengisytiharkan kepada) pembina bahawa kami akan menyimpan nombor dalam pembolehubah a, dan buat masa ini, nilai itu ialah 0.

Untuk memberikan nilai kepada pembolehubah membawa maksud yang sama.

Ungkapan "berikan pembolehubah nilai fungsi" atau "tetapkan pembolehubah sama dengan fungsi" juga biasa digunakan. Prinsipnya sama: bukannya memberikan nilai tertentu, anda memberikan hasil fungsi. Contohnya: s_id = tg_send_message(platform_id, "Hello!") Dalam kes ini, hasil fungsi akan disimpan dalam pembolehubah.

Untuk menetapkan semula pembolehubah bermaksud memberikannya nilai 0.

Fungsi dan kaedah ialah set arahan yang telah ditetapkan yang dikonfigurasikan terlebih dahulu oleh MaviBot. Kebanyakan fungsi memerlukan parameter - nilai yang boleh difahami oleh fungsi atau kaedah. Sebaik sahaja bot menerima parameter yang diperlukan, ia melaksanakan arahan tertentu.

tg_send_message(platform_id, "Hello!") fungsi ini menghantar mesej "Hello!" dalam Telegram.

Rajah 2. Contoh pembolehubah bernama text1 yang diberikan kepada fungsi.

PERATURAN UNTUK BEKERJA DENGAN PEMBOLEHUBAH:

  1. Nama pembolehubah hanya boleh bermula dengan huruf; ia tidak boleh bermula dengan nombor.

    Age1 - ✅ betul

    1Age - ❌ salah

    age1 - ✅ betul - pilihan yang disyorkan

  2. Pembolehubah tidak boleh mengandungi ruang atau aksara khas, kecuali garis bawah (_).

    Name_Surname - ✅ betul

    Name Surname - ❌ salah

    nameSurname - ✅ betul - pilihan yang disyorkan

    Perkataan terpelihara daripada bahasa pengaturcaraan tidak boleh digunakan sebagai nama pembolehubah, contohnya: print, true, false, count, sum, dan sebagainya.

  3. Ia adalah dilarang sama sekali untuk menggunakan nama pembolehubah terbina dalam dan sistem untuk pembolehubah yang ditentukan pengguna. Anda boleh mencari senarai pembolehubah tersebut di sini. pautan

  4. Kami mengesyorkan:

    • Gunakan nama Latin (Inggeris) untuk pembolehubah.
    • Gunakan nama pembolehubah yang pendek tetapi bermakna, contohnya: totalSum, pay_name, ns, name_client, dsb.

Cara mendapatkan nilai pembolehubah

Letakkan nama pembolehubah di dalam kurungan kerinting #{}. Anda boleh merujuk nilainya dalam medan teks mesej dengan cara ini. Walau bagaimanapun, dalam medan "Kalkulator", anda harus merujuk kepada nilai pembolehubah hanya dengan namanya, tanpa sebarang sintaks tambahan.

Binaan #{} membolehkan anda mendapatkan nilai pembolehubah. Ia digunakan dalam medan "Teks mesej" untuk memasukkan nilai pembolehubah ke dalam teks.

Contoh:

Sistem menyokong pembolehubah bersarang, di mana nilai satu pembolehubah adalah sebahagian daripada nama pembolehubah lain. Contohnya: #{q#{test#{i}}}

Dalam medan "Kalkulator", rujuk pembolehubah dengan namanya tanpa menggunakan notasi #{}.
Contohnya, jika kita mempunyai dua pembolehubah: price (jumlah) dan quantity (bilangan).

num = 10

sum = 1500

Cara memaparkan jumlah keseluruhan

Masukkan yang berikut dalam kalkulator:

total_sum = sum1 * num2 ✅ betul

Cara jangan lakukan:

total_sum = #{sum1} * #{num2} - ❌ salah

Cara memadam pembolehubah daripada bot

Untuk memadam (mengosongkan) pembolehubah, masukkan salah satu daripada yang berikut dalam medan "Kalkulator":

NamaPembolehubahAnda =

atau

NamaPembolehubahAnda = ""

Selepas tanda sama, sama ada tinggalkan ruang atau gunakan tanda petikan berganda (atau tunggal).

Sila ambil perhatian! Adalah penting untuk menggunakan awalan yang betul untuk menunjukkan tempat pembolehubah itu berada.

Untuk pembolehubah peringkat projek (disimpan dalam tetapan projek), gunakan awalan project:

Contoh:
project.NamaPembolehubahAnda =
atau
project.NamaPembolehubahAnda = ""

Untuk pembolehubah peringkat pelanggan, gunakan awalan client:

Contoh:
client.NamaPembolehubahAnda = atau
client.NamaPembolehubahAnda = ""

Untuk pembolehubah peringkat urusan, tiada awalan diperlukan.

Pembolehubah terbina dalam

Berikut adalah senarai pembolehubah terbina dalam:

#{none} - abaikan mesej

#{api_key} - token API yang digunakan dalam panggilan API Mavibot

#{attachment_url} - mengandungi pautan ke lampiran

#{attachments} - tatasusunan JSON URL lampiran daripada mesej pengguna

#{avatar} - pautan ke avatar pengguna (ditunjukkan dalam bahagian "Pelanggan")

#{client_id} - ID pelanggan dalam pembina, juga digunakan dalam permintaan API

#{client_type} - jenis utusan yang datang daripada pelanggan (nilai diterangkan [di sini])

#{current_date} - tarikh semasa dalam format dd.mm.yyyy, berdasarkan zon waktu projek

#{current_time} - masa semasa dalam format hh:mm, berdasarkan zon waktu projek

#{custom_answer} - respons yang diterima daripada pelayan yang dinyatakan dalam medan "URL respons pelayan"

#{message_from_outside} - jenis mesej masuk. Nilai yang mungkin:
&#xNAN;mesej biasa = 0
mesej dihantar melalui API = 1
pemberitahuan panggilan balik (latar belakang kuning dalam dialog) = 3
pemberitahuan telefon (latar belakang biru muda dalam dialog) = 5
Pembolehubah ini dijana dengan setiap mesej masuk tetapi tidak muncul dalam kad pelanggan.

Anda boleh menggunakannya dalam medan "Pembolehubah untuk perbandingan" untuk menyediakan syarat untuk pencetus blok dan sambungan.

#{date_of_creation} - tarikh apabila pengguna ditambahkan pada bot atau menghantar mesej kepadanya buat kali pertama

#{full_name} - nama penuh pengguna (nama pertama dan nama keluarga)

#{group} - bot yang dikaitkan dengan pelanggan (ditunjukkan sebagai "Dikaitkan dengan bot" dalam kad pelanggan)

#{main_client_id} - ID pelanggan utama dalam kalangan kumpulan kad pelanggan yang dipautkan

#{message_id} - ID keadaan perbualan semasa dengan pelanggan (lalai kepada NONE)

#{messenger} - nama utusan yang datang daripada pelanggan

#{name} - nama pertama pengguna

#{next_day} - tarikh esok dalam format dd.mm.yyyy (berguna untuk menjadualkan mesej)

#{order_id} - pengecam pesanan (ID pelanggan dan ID pesanan dalaman dipisahkan oleh tanda sempang)

#{order} - kandungan pesanan yang dikemukakan oleh pengguna

#{platform_id} - ID pelanggan dalam platform pemesejan

#{question} - mesej yang dihantar oleh pengguna

#{timestamp} - cap masa semasa termasuk milisaat

#{time_of_creation} - masa apabila pengguna ditambahkan pada bot atau menghantar mesej kepadanya buat kali pertama

#{wa_bot} - nombor WhatsApp yang dihantar mesej oleh pengguna (berguna untuk dihantar ke medan CRM dan mengedarkan petunjuk di kalangan pengurus)

#{weekday} - hari dalam minggu sebagai nombor (Isnin = 1, Selasa = 2, dsb.)

nilai client_type

Nilai Utusan
1 untuk Telegram
2 untuk Viber
3 untuk Facebook
5 untuk sembang dalam talian
10 untuk Instagram
14 e-mel
16 Akaun Perniagaan Telegram
21 akaun Telegram
22 TikTok

Pembolehubah sistem

Sistem secara automatik menjana pelbagai pembolehubah masa jalan semasa operasi bot. Anda boleh menggunakan pembolehubah ini semasa membina bot anda. Berikut adalah senarai yang mungkin berguna kepada anda.

Anda boleh mencari pembolehubah sistem tambahan dalam dokumentasi. Ia terletak dalam bahagian yang berkaitan dengan penggunaannya.

phone - nombor telefon

notSubscribed - jika pembolehubah sama dengan 1, pelanggan telah berhenti melanggan mesej dan tidak akan menerima sebarang mesej

clientBlocked - pelanggan disekat, dan bot tidak beroperasi untuk mereka

story_url - pengecam cerita Instagram yang dijawab oleh pelanggan

viewed_page - halaman dari mana pengguna menulis dalam sembang dalam talian

wa_bot - nombor telefon bot WhatsApp

Untuk mengetahui pembolehubah yang boleh dibuat semasa pembayaran, rujuk panduan penyepaduan untuk perkhidmatan pembayaran dalam bahagian "Sistem pembayaran".

Pembolehubah tersuai

Pembolehubah tersuai dibahagikan kepada:

Setiap jenis pembolehubah akan dijelaskan di bawah.

Sila elakkan menggunakan nama yang sama untuk jenis pembolehubah yang berbeza untuk mengelakkan kekeliruan apabila Pembina memaparkan atau menggunakan nilai selain daripada yang anda jangkakan.

Apabila memberikan nilai kepada pembolehubah, adalah penting untuk menentukan jenisnya dengan menggunakan awalan yang sesuai:

client. (untuk pembolehubah pelanggan) dan project. (untuk pembolehubah projek). Tiada awalan digunakan untuk pembolehubah urusan.

Awalan ditinggalkan apabila mendapatkan semula nilai pembolehubah.

Contoh:
Bayangkan anda ingin mencipta pembolehubah projek bernama like untuk bertindak sebagai kaunter suka daripada pelanggan anda.

project.like = 0 - pengisytiharan, dilakukan sekali

Dalam blok di mana anda perlu mengira suka, tulis:
project.like = like + 1

Keutamaan pembolehubah:
pembolehubah urusan mempunyai keutamaan tertinggi, diikuti oleh pembolehubah pelanggan, kemudian pembolehubah projek.

ID Utusan (platform_id)

ID Utusan (platform_id) ialah pengecam pengguna/sembang/saluran dalam utusan. Untuk mencarinya, buka perbualan dengan pelanggan yang dikehendaki dalam bahagian "Pelanggan". Di sebelah kanan tetingkap sembang, navigasi ke tab "Mengenai pelanggan - Pembolehubah sistem" atau tab "Semua".

platform_id ialah pembolehubah kekal yang dijana sistem yang mewakili ID utusan unik pengguna.

  • Kekekalan: ID ini kekal malar untuk pengguna. Walaupun anda memadamkan rekod mereka daripada pembina, platform_id mereka akan sama semasa pendaftaran semula.
  • Asal: ID diberikan oleh platform utusan (cth., Telegram, WhatsApp) apabila pengguna mula-mula berinteraksi dengan bot.

Contoh berikut menunjukkan bagaimana platform_id muncul dalam kad pelanggan.

Pembolehubah platform_id wujud untuk pengguna biasa serta untuk komuniti, saluran dan sembang.

Untuk mendapatkan platform_id (ID utusan) saluran Telegram di mana bot adalah pentadbir, hanya hantar mesej ke saluran dari akaun peribadi anda. Ini secara automatik akan mewujudkan dialog antara bot dan saluran.

Anda boleh menyalin nilai platform_id saluran dalam bahagian "About client".

Dalam Telegram, ID utusan untuk saluran sentiasa bermula dengan tanda tolak (-). Apabila menggunakan fungsi, pastikan anda menyertakan keseluruhan nilai, termasuk tanda tolak.

Cara menggunakan pemboleh ubah

Pemboleh ubah boleh digunakan dalam pencetus, pesanan, respons pengguna, blok, dan banyak lagi. Mari lihat contoh konkrit semasa membuat corong untuk agensi hartanah.

Jadi, mari buat blok Mula:

Langkah 1: Cipta blok "Terima kasih"

Cipta blok baharu dengan mesej yang mengucapkan terima kasih kepada pengguna atas input mereka.

Langkah 2: Konfigurasikan peralihan

Pada sambungan yang menuju ke blok ini, konfigurasikan pencetus berikut:

  1. Dayakan togol "Pengguna memasukkan data".
  2. Dalam medan "Data input", masukkan nama pemboleh ubah: name.

Input pengguna disimpan dalam pemboleh ubah Name. Nilai ini boleh digunakan semula dalam mana-mana blok berikutnya dengan memanggil pemboleh ubah menggunakan sintaks #{Name}, seperti: Selamat datang, #{Name}!.

Bot akan berfungsi seperti berikut:

Sekarang mari kita jadikan tugasan ini sedikit lebih kompleks.

Dalam blok yang sama ini, kita akan bertanya kepada pengguna sama ada dia berminat dengan perumahan utama (baharu) atau perumahan sekunder (jualan semula):

Seterusnya, cipta sambungan daripada butang "Perumahan utama" dan "Perumahan sekunder" dalam blok "Sembang".

Sekarang mari lihat cara kedua untuk menggunakan pemboleh ubah dalam blok.

Pilih blok yang betul dan masukkan teks berikut dalam medan "Kalkulator":
client_interest = Perumahan utama. Dalam blok kiri, masukkan:
client_interest = Perumahan sekunder.

Pemboleh ubah diberikan kepada pengguna apabila mereka beralih ke mana-mana blok ini. Kita boleh menggunakannya kemudian semasa membuat pesanan.

Seterusnya, kita akan bertanya kepada pelanggan tentang belanjawan mereka untuk membeli hartanah dalam blok ini, dan cipta dua lagi blok dengan anak panah yang menuju ke blok tersebut berdasarkan pencetus respons pelanggan.

Dari blok "Berapakah belanjawan anda?", cipta sambungan dan tetapkan syarat pencetus untuk membahagikan pengguna berdasarkan input mereka.

  1. Dalam tetapan sambungan, dayakan kotak semak untuk "Pengguna memasukkan data".
  2. Berikan nama pemboleh ubah (contohnya, budget) untuk menyimpan respons pelanggan.
  3. Dalam medan "Pemboleh ubah", gunakan pemboleh ubah terbina dalam #{question} (yang mengandungi mesej terakhir pengguna) untuk mencipta syarat.
    • Contoh: #{question} <= 1000000

Untuk semua sambungan ke blok "Pendahulu", aktifkan "Pengguna memasukkan data" dan takrifkan pemboleh ubah.

Anda juga boleh mentakrifkan pemboleh ubah tambahan terus dalam blok "Pendahulu" untuk memberikan maklumat tawaran yang lebih komprehensif.

Sekarang tukar jenis dua blok terakhir kepada "Pendahulu" dan lihat hasilnya:

Mari uji aliran dalam tindakan:

Anda boleh menyemak tawaran yang dibuat dan data pelanggan yang disimpan dengan pergi ke bahagian "Pelanggan" dan membuka perbualan yang berkaitan. Pemboleh ubah tawaran akan kelihatan di sana.

Sekarang anda tahu cara menggunakan pemboleh ubah dalam sekurang-kurangnya tiga cara berbeza:

  1. Berikan nama pemboleh ubah kepada data input pengguna (cth., "Nama", "Belanjawan")
  2. Berikan nilai pemboleh ubah apabila beralih ke blok (cth., client_interest = Perumahan utama)

Cara melihat pemboleh ubah

Untuk melihat pemboleh ubah pelanggan, navigasi ke bahagian "Pelanggan" dan buka kad pelanggan mereka.

Pemboleh ubah dipaparkan dalam format senarai dalam kad pelanggan:

  • Setiap pemboleh ubah menduduki barisnya sendiri.
  • Nama pemboleh ubah ditunjukkan di sebelah kiri.
  • Nilai yang sepadan dipaparkan di sebelah kanan.

Untuk mengubah suai pemboleh ubah:

Tuding pada barisnya dalam senarai untuk mendedahkan butang tindakan. Mengklik butang ini membolehkan anda:

  • Mengedit nama pemboleh ubah.
  • Mengedit nilai pemboleh ubah.
  • Memadamkan pemboleh ubah sepenuhnya.

Pemboleh ubah sistem tidak boleh diedit!

Cara menetapkan pemboleh ubah pelanggan

Pemboleh ubah pelanggan tidak dipadam, ditetapkan semula, atau hilang apabila menggunakan blok "Tamat pengumpulan data" (blok merah).

Pemboleh ubah pelanggan boleh ditetapkan dalam dua cara: secara eksplisit dan implisit.

Cara eksplisit untuk mentakrifkan pemboleh ubah adalah dengan menetapkannya dalam medan "Kalkulator" salah satu blok corong.

Contoh: client.age = 28 atau client.age = 28:

Cara implisit adalah dengan menetapkan pemboleh ubah dalam medan input data anak panah.

Contoh:

Mari cipta blok di mana kita bertanya nama pelanggan, dan juga cipta blok di bawah:

Seterusnya, navigasi ke tetapan sambungan dan dayakan pilihan "Pengguna memasukkan data".

Gunakan awalan client. semasa menamakan pemboleh ubah anda (cth., client.name) untuk menyimpan input pengguna. Pemboleh ubah ini kemudiannya boleh dirujuk dalam mesej kemudian sebagai #{client.name}.

Pemboleh ubah pelanggan digunakan sama seperti pemboleh ubah biasa dalam pembina, tetapi tanpa awalan client.

Cara menetapkan pemboleh ubah projek

Pemboleh ubah global tidak dipadam, ditetapkan semula, atau hilang apabila menggunakan blok "Pendahulu" (blok merah).

Pemboleh ubah global boleh diakses oleh semua pengguna bot. Ia sesuai untuk mengawal tingkah laku bot atau memudahkan interaksi antara pengguna yang berbeza.

Contoh kes penggunaan:
Seorang pengguna boleh menyiarkan item dalam saluran pasaran dengan menetapkan pemboleh ubah (cth., project.latest_listing), dan semua pengguna lain boleh melihatnya dan bertindak balas.

Sintaks untuk tugasan

Untuk mencipta atau mengemas kini pemboleh ubah global, gunakan awalan project. dalam Kalkulator:

Contoh:

  • project.product_shop = 28
  • project.age = 28

Ia boleh digunakan tanpa sebarang awalan.

Mari lihat bagaimana data dipaparkan dalam jadual.

Sekarang, laksanakan blok "Mula" dalam mod ujian.

Kita boleh melihat data yang ditulis ke pemboleh ubah dari jadual dalam mesej yang dihantar oleh bot. Kerana kita merujuk pemboleh ubah dalam mesej menggunakan sintaks #{}, data yang disimpan di dalamnya dipaparkan dalam sembang bot.

Butiran lanjut tentang cara bekerja dengan fungsi get_records_from_table() diterangkan dalam artikel "Pembantu AI dengan jadual MaviBot".

Awalan project. membenarkan fungsi menulis data jadual terus ke pemboleh ubah global projek, boleh diakses dalam bahagian "Pemboleh ubah".

Anda boleh mengedit pemboleh ubah projek dalam tetapan projek.

Contoh: menggunakan pemboleh ubah projek

Cipta sistem yang memberikan nombor berurutan kepada setiap pelanggan baharu yang memasuki bot.

Pelaksanaan:

  1. Navigasi ke Tetapan projek anda.
  2. Cipta pemboleh ubah projek baharu (cth., project.client_counter).

  1. Tetapkan nilai awalnya (cth., 0) yang bermaksud "Tiada pelanggan dalam bot":

Dalam blok mula bot, tambah logik yang:

  1. Menambah nilai pemboleh ubah projek sebanyak 1.
  2. Memberikan nilai baharu kepada pemboleh ubah khusus pelanggan untuk pengguna semasa.

Jangan lupa tetapkan sekatan supaya kaunter tidak boleh ditambah untuk pelanggan yang sama dua kali.

Cara menetapkan pemboleh ubah pemalar

Pemalar ialah nilai tetap yang kekal tidak berubah (atau jarang berubah) sepanjang kitaran hayat projek.

Perbezaan utama daripada pemboleh ubah global:

Tidak seperti pemboleh ubah global, pemalar adalah khusus pelanggan. Jika nilai pemalar diubah suai, perubahan itu hanya terpakai pada sesi pelanggan individu tersebut.

Kes penggunaan biasa:

Pemalar sesuai untuk menyimpan data statik seperti:

  • Harga produk dan diskaun pelanggan
  • Token integrasi dan kunci API
  • Maklumat hubungan penjual atau sokongan
  • Sebarang nilai konfigurasi tetap yang lain

Contoh: menggunakan pemboleh ubah pemalar

Sebagai contoh, diskaun pelanggan boleh menjadi 10% secara lalai, tetapi berubah kepada 25% apabila memasukkan kod promosi.

Dalam "Tetapan projek" → "Pemalar", masukkan: Diskaun : 10

Untuk memasukkan kod promosi, tambah blok "Pencetus", di mana kita memberikan pemboleh ubah diskaun nilai 25.

Paparkan pemboleh ubah yang menunjukkan jumlah diskaun dalam blok hijau:

Langkah 1: Konfigurasikan peralihan automatik
Cipta sambungan dengan pemasa sifar saat dari blok kelabu. Ini memastikan diskaun digunakan serta-merta dan pelanggan meneruskan ke mesej dalam blok mula.

Langkah 2: Uji aliran
Sekarang, tulis mesej kepada bot untuk mencetuskan dan menguji keseluruhan urutan.

Diskaun standard ialah 10% tanpa kod promosi. Walau bagaimanapun, memasukkan kod promosi yang sah mengubah keadaan.

Oleh itu, selepas memasukkan kod promosi, pemboleh ubah "diskaun" untuk pelanggan ini menjadi 25.

Ini berlaku kerana tugasan seperti diskaun = 25 menetapkan nilai untuk pemboleh ubah tawaran, bukannya menukar nilai pemalar dengan nama yang sama.

Pemboleh ubah tawaran utama

name - nama tawaran. Istilah Name digunakan untuk versi antarabangsa projek.

description - penerangan tawaran. Description digunakan dalam versi antarabangsa projek

budget - jumlah tawaran (nombor).

Untuk mengedit pemboleh ubah menggunakan permintaan API /set_order_vars, anda mesti menggunakan nama daripada panduan ini tepat seperti yang ditunjukkan, termasuk sensitiviti huruf besar dan versi projek.

Had

Panjang maksimum nama pemboleh ubah: 500 aksara

Panjang maksimum nilai pemboleh ubah: 100,000 aksara

Bilangan maksimum pemboleh ubah setiap pelanggan atau urusan: 1,000 aksara.

Cara bekerja dengan pemboleh ubah dengan betul

Bilakah anda harus meletakkan nilai pemboleh ubah dalam tanda petik?

Contohnya, client_id = 1202020202 atau client_id = '1202020202'?

Kedua-dua pilihan sintaks adalah betul dari segi fungsi. Menggunakan tanda petik di sekeliling nilai hanya mempengaruhi penonjolan visualnya dalam editor kalkulator.

Walau bagaimanapun, mengikut konvensyen pengekodan yang konsisten meningkatkan kebolehbacaan dan kebolehselenggaraan:

  • Jangan gunakan petik untuk nilai angka (cth., discount = 25).
  • Gunakan petik untuk nilai rentetan (cth., status = "active").

Apakah sintaks yang betul untuk menghantar pengecam seperti ID Pelanggan, ID Tapak, ID Blok, atau ID Sijil kepada fungsi—patutkah ia diletakkan dalam tanda petik?

ID tidak boleh diletakkan dalam tanda petik apabila dihantar kepada kaedah atau fungsi:

Yang manakah harus digunakan: petik dua atau petik tunggal?

Tiada perbezaan antara menggunakan petik tunggal atau petik dua, tetapi kami mengesyorkan menggunakan petik dua. Dengan cara ini, sebagai contoh, apabila memasukkan pemboleh ubah di dalam rentetan, pemboleh ubah akan diserlahkan dalam warna yang berbeza, menjadikannya lebih mudah untuk diperhatikan.

Bagaimanakah ruang harus diletakkan?

Adakah ia berfungsi sama jika terdapat ruang antara pemboleh ubah dan tanda sama (contohnya, ans="yes", ans = "yes", ans= "yes", ans ="yes"?

Jarak tidak menjejaskan operasi kaedah, pemboleh ubah, atau fungsi. Walau bagaimanapun, adalah disyorkan untuk menggunakan ruang dalam kod untuk meningkatkan kebolehbacaan.

Cara menulis ulasan dalam kalkulator dengan betul

Untuk butiran lanjut tentang cara menulis ulasan dalam Kalkulator, sila lihat artikel ini.

Cara membandingkan pemboleh ubah

Anda boleh mengawal aliran chatbot dengan membandingkan nilai pemboleh ubah. Ini membolehkan anda mencipta logik bersyarat, seperti mengesahkan umur pengguna untuk pematuhan undang-undang atau mengarahkan interaksi berdasarkan platform messenger pengguna.

Berikut ialah cara membahagikan corong mengikut messenger yang berbeza atau mengikut akaun berbeza messenger yang sama diterangkan di sini.

Operator yang disokong:

"+": penambahan
"-"': penolakan
"*" pendaraban
"/": pembahagian
"%'": baki pembahagian
"^" "**": eksponen
"and" "AND" "&&": logik DAN
"or" "OR" "||": logik ATAU

Operator perbandingan:
"==" — sama dengan
"!=" — tidak sama dengan
">" — lebih besar daripada
"<" — kurang daripada
">=" — lebih besar daripada atau sama dengan
"<=" — kurang daripada atau sama dengan

PENTING!
Untuk menyemak bahawa pemboleh ubah terbina dalam tag (tag pelancaran bot) tidak hadir dalam kad pelanggan, gunakan kaedah perbandingan berikut:

tag == "NONE"

Pemboleh ubah harus dibandingkan dalam keadaan dalam medan "Pemboleh Ubah" (kedua-duanya dalam tetapan sambungan dan dalam tetapan blok):

Contoh perbandingan pemboleh ubah dalam medan "Pemboleh Ubah" blok pencetus.

Contoh perbandingan pemboleh ubah dalam medan "Pemboleh Ubah" sambungan blok.

Cara pemboleh ubah dan pencetus berfungsi bersama

Untuk sambungan diaktifkan, kedua-dua pencetus mesti dipenuhi:

  1. Keadaan dalam medan "Pencetus".
  2. Logik perbandingan dalam medan "Pemboleh Ubah".

Memahami medan "Pemboleh Ubah"

Jika anda hanya memasukkan nama pemboleh ubah (cth., client_type) dalam medan "Pemboleh Ubah" tanpa ungkapan, sistem menyemak kewujudan atau kebenaran nilai pemboleh ubah. Ia tidak membandingkannya dengan input mentah pengguna.

Contoh:
Konfigurasi di bawah menyemak sama ada pelanggan adalah daripada WhatsApp dengan mengesahkan bahawa pemboleh ubah client_type sama dengan 6 (di mana 6 mewakili WhatsApp).

client_type == 6

Contoh di bawah berfungsi secara serupa:

Sila ambil perhatian!
Anda tidak boleh menentukan berbilang nilai untuk perbandingan pemboleh ubah dalam medan "Pencetus".

Ini tidak betul!

Jika anda perlu membandingkan berbilang pemboleh ubah, nyatakan nilainya dalam medan "Pemboleh Ubah".

Pilihan ini adalah betul.

client_type == 3 peralihan jika nilai pemboleh ubah sama dengan 3
attachments != None peralihan jika pemboleh ubah mengandungi sebarang nilai
attachments == None peralihan jika pemboleh ubah tidak ditetapkan
product_quantity >= 100 peralihan jika kuantiti produk lebih besar daripada atau sama dengan 100
product_quantity <= 100 peralihan jika kuantiti produk kurang daripada atau sama dengan 100
name == "John" peralihan jika nama pemboleh ubah sama dengan John

Untuk menyemak sama ada pemboleh ubah kosong atau tidak, gunakan ungkapan:
&#xNAN;""#{value}" == ""
""#{value}" != """

(di mana value ialah nama pemboleh ubah).

Hasil operasi perbandingan mengembalikan nilai boolean: True atau False.

Panjang maksimum ungkapan: 1000 aksara

Nilai lalai akan dikembalikan sebagai hasil apabila cuba membandingkan nilai jenis yang berbeza.

"==" - False "<" - False
"!=" - True ">=" - False
">" - False "<=" - False

PENTING!
Untuk menyemak bahawa pemboleh ubah terbina dalam tag (tag pelancaran bot) tidak hadir dalam kad pelanggan, gunakan kaedah perbandingan berikut:

tag == "NONE"

Contoh: bot yang menyemak umur pengguna (age).

  • Jika age < 18, ia menghantar mesej untuk bawah umur.
  • Jika age >= 18, ia menghantar mesej untuk dewasa.

Perhatikan bahawa aliran termasuk blok tanpa pencetus, dengan sambungan bermasa yang menuju daripadanya.

Blok ini sengaja direka untuk menunjukkan cara membina aliran di mana bot bertindak balas bukan kepada tindakan pengguna, tetapi kepada hasil pengiraan. Pada langkah pertama, jawapan disimpan ke pemboleh ubah, dan kemudian perbandingan berlaku. Kelewatan pada anak panah ditetapkan kepada 0 untuk respons segera.

Perbandingan "Age >= 18" juga boleh dinyatakan sebagai "lebih besar daripada atau sama dengan 18."

Sila ambil perhatian tentang ralat dalam pencetus:

Nombor tidak boleh serentak lebih besar daripada, kurang daripada, dan sama dengan 18!

Pencetus ini tidak bermakna. Setiap nombor sama ada kurang daripada 18, lebih besar daripada 18, atau sama dengan 18.

Penting!

Pencetus logik dengan pemboleh ubah mesti ditulis dalam medan "Pemboleh Ubah", bukan dalam medan "Pencetus"!

Sebagai contoh, dalam imej di bawah, blok akan dicetuskan jika pemboleh ubah phone diisi (iaitu, tidak sama dengan None):

Contoh seterusnya menunjukkan cara menggabungkan operator:

Jika pelanggan mempunyai pemboleh ubah umur dengan nilai antara 18 dan 99, blok akan dicetuskan. Jika pemboleh ubah tiada, atau umur kurang daripada 18 atau lebih besar daripada 99, blok tidak akan diaktifkan.

Nota!

Jika anda membandingkan pemboleh ubah dengan nilai dalam tanda petik, pastikan tiada ruang antara petik dan nilai; jika tidak, blok mungkin gagal dicetuskan atau berkelakuan tidak betul!

Betul (tiada ruang sebelum tanda petik atau selepas nilai my_new_bot):

Salah (dengan ruang sebelum tanda petik):