# MaviBot etiketleriyle çalışma

## Etiket oluştur / kaldır

create\_label() | add\_label() | remove\_label() | remove\_label\_everywhere() | count\_of\_clients\_with\_label() | has\_label()

<details>

<summary>Açıklama</summary>

MaviBot etiketleri bir müşteri profilinde şu şekilde görüntülenir:

<div data-with-frame="true"><figure><img src="/files/61adb0b24d37d1b8d07d9e8bb3929ea5a7e5b8e0" alt="" width="355"><figcaption><p>Müşteri profilindeki etiketler</p></figcaption></figure></div>

ve **"Lists"** bölümünde bulmanız gerekir:

<div data-with-frame="true"><figure><img src="/files/4dea9e31ef1b83ae6120545ea2468a2d9ac75c68" alt=""><figcaption></figcaption></figure></div>

**create\_label(label\_name)**\
belirtilen adla MaviBot etiketi oluşturur

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name**- tek tırnak içinde belirtilen etiket adı ('').

**add\_label(label\_name, client\_id)**\
müşteriye MaviBot etiketi ekle&#x20;

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name -** tek tırnak içinde belirtilen etiket adı ('')\
**client\_id** müşteri ID’si. Belirtilmezse, geçerli müşteri ID’si kullanılır&#x20;

**remove\_label(label\_name, client\_id)**\
etiketi müşteriden kaldır&#x20;

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name** - tek tırnak içinde belirtilen etiket adı ('')\
**client\_id** - müşteri ID’si. Belirtilmezse, geçerli müşteri ID’si kullanılır

**has\_label(label\_name, client\_id**) - müşterinin etiketi olup olmadığını kontrol et&#x20;

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name** - tek tırnak içinde belirtilen etiket adı ('')\
**client\_id** - müşteri ID’si. Belirtilmezse, geçerli müşteri ID’si kullanılır

**remove\_label\_everywhere(label\_name)**\
etiketi tüm müşterilerden kaldır

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name**- tek tırnak içinde belirtilen etiket adı ('')

**count\_of\_clients\_with\_label(label\_name)**\
etikete sahip toplam müşteri sayısını al

Parametreler:\ <mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name**- tek tırnak içinde belirtilen etiket adı ('')

</details>

<details>

<summary>Örnek</summary>

Öyleyse, bakalım **MaviBot etiketi nasıl oluşturulur**.

Gri blokta (durumsuz bir blok) oluşturma fonksiyonunu bir kez çalıştırmanız yeterlidir, örneğin:

<div data-with-frame="true"><figure><img src="/files/8a3ad296d696c9b5b847a5c7ad9b06e03c14692b" alt=""><figcaption><p>   Hesaplayıcı fonksiyonu kullanarak etiket oluşturma</p></figcaption></figure></div>

Aynı zamanda, değişken ***a*** etiket oluşturma fonksiyonunun başarısını analiz etmek için kullanılabilir:

<div data-with-frame="true"><figure><img src="/files/606f994e2c1bb7ce7ebd287cc56050a3381e1e43" alt="" width="563"><figcaption></figcaption></figure></div>

Sonraki adımda, **herhangi bir müşteriye etiket atayabilirsiniz** şunu ekleyerek `add_label()` fonksiyonunu huninizin ilgili bloğuna:

<div data-with-frame="true"><figure><img src="/files/94d038e525d4f74fe1b2aecd8ec14cf0edb8af64" alt="" width="563"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/0a6f6ae76b3be755c1e92a72d55b702967815323" alt="" width="375"><figcaption></figcaption></figure></div>

<div data-with-frame="true"><figure><img src="/files/6b72a3ab453c8a98a2d6bdc145af45b144e4ae27" alt="" width="319"><figcaption></figcaption></figure></div>

Bir müşterinin etikete sahip olup olmadığını `has_label()` fonksiyonunu kullanarak kontrol edebilirsiniz:

<div data-with-frame="true"><figure><img src="/files/d4917ffec76520afc6e23fab562f5899ac27fb9f" alt=""><figcaption></figcaption></figure></div>

Fonksiyon mantıksal bir değer döndürür: True veya False.&#x20;

<div data-with-frame="true"><figure><img src="/files/431aa03bec2f9391f39b84664cb4230d1572b6aa" alt=""><figcaption></figcaption></figure></div>

**Etiketle ilgili diğer işlemler de benzer şekilde yapılır**— belirli bir müşteriden etiketi kaldırmak veya etiketi tüm müşterilerden tamamen kaldırmak.

Ayrıca şu fonksiyonu kullanarak belirli bir etikete sahip müşteri sayısını da sayabilirsiniz: `count_of_clients_with_label()` işlevini kullanın.

<div data-with-frame="true"><figure><img src="/files/7231bc5072d50cb7562e8a1bf93f0f75f351dcda" alt="" width="375"><figcaption><p>Belirli bir etikete göre müşteri sayısını sayma</p></figcaption></figure></div>

</details>

<details>

<summary>Kopyalama için kod örneği</summary>

`/Etiket oluştur/ a=create_label('tag1')`

`/Müşteriye etiket ata/ a=add_label('stage 1')`

`/Müşterinin etikete sahip olup olmadığını kontrol et/ a=has_label('этап 1','73704021')`

`/Belirli etikete sahip müşteri sayısını say/ etap1=count_of_clients_with_label('stage 1') tovar1=count_of_clients_with_label('1')`

</details>

## Etiket oluşturma

<details>

<summary>Açıklama</summary>

**create\_label(label\_name)** - belirtilen adla MaviBot etiketi oluşturur

Parametreler:

<mark style="color:kırmızı;">**!**</mark>**&#x20;label\_name**- tek tırnak içinde belirtilen etiket adı ('')

</details>

### Çift kayda izin vermeden etiket oluşturma

<details>

<summary>Açıklama</summary>

**create\_label\_if\_not\_exist(name, color) -** aynı ada sahip bir etiket henüz yoksa yeni bir etiket oluşturur ve kimliğini döndürür; aksi halde mevcut etiketin kimliğini döndürür

**name** — etiket adı

**color** — etiket rengi (varsayılan: 0)

İçin renk tablosu **color** parametresi:

0 — açık gri&#x20;

1 — sarı

2 — mavi&#x20;

3 — kırmızı

4 — pembe

5 — bej&#x20;

6 — mor

7 — açık mavi&#x20;

8 — gri

9 - yeşil

</details>

### Tüm müşteri etiketlerini al

<details>

<summary>Açıklama</summary>

**get\_all\_client\_labels(client\_id)**&#x20;

***Parametreler:***

**client\_id** - isteğe bağlı; belirtilmezse, mevcut müşterinin etiketleri alınır.

Fonksiyon JSON formatında bir yanıt döndürür: {"161":"tag1","228":"tag2"}, burada: anahtar etiket ID’sidir ve değer etiket adıdır

</details>

<details>

<summary>Örnek</summary>

<figure><img src="/files/977b2f71be01e1c91c78600554b790118519984b" alt="" width="375"><figcaption><p>Mevcut müşterinin tüm etiketlerini al</p></figcaption></figure>

</details>

### Müşteri etiketlerini dizi ile sil

<details>

<summary>Açıklama</summary>

**remove\_multiple\_client\_labels(labels\_array, names) -** dizide belirtilen etiketleri siler

**labels\_array** - etiket dizisi. <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**ID**</mark> dizi<mark style="color:turuncu;">**,**</mark> <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**names**</mark> dizi.&#x20;

<mark style="color:turuncu;">names dizisi geçirilirse</mark>, o zaman<mark style="color:turuncu;">❗ikinci parametre (names) 1 olarak geçirilmek zorunludur.</mark>

**names** - Dizi etiket ID’leri yerine etiket adları içeriyorsa 1 olarak ayarlanır. Bu, dizinin adlardan oluştuğunu gösterir.

{% hint style="danger" %}
Aynı fonksiyonda hem etiket ID’lerini hem de etiket adlarını birlikte kullanmaya izin verilmez!
{% endhint %}

</details>

<details>

<summary>Örnek</summary>

`/*Etiketleri ID ile sil*/`

`r = remove_multiple_client_labels('[138,169,166]')`&#x20;

`/*Etiketleri etiket adıyla sil*/`

`r2 = remove_multiple_client_labels('["newTestTag","tag2"]', 1)`

Değişken, fonksiyon çalıştırma sonucunu saklar: ya bir hata mesajı ya da kaç etiketin silindiğini belirten bir sayı.

<div data-with-frame="true"><figure><img src="/files/13730c27f7be26d5ea66fbbcd55d69af1867264f" alt="" width="563"><figcaption></figcaption></figure></div>

</details>

### Müşterileri birden çok etikete göre bul

<details>

<summary>Açıklama</summary>

**find\_clients\_by\_multiple\_labels(labels\_array, names)** - müşterileri birden çok etikete göre bulur

{% hint style="warning" %}
ÖNEMLİ! Bu yalnızca belirtilen TÜM etiketlere sahip müşterileri bulur.
{% endhint %}

Parametreler:

**labels\_array** - etiket dizisi. <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**ID**</mark> dizi<mark style="color:turuncu;">**,**</mark> <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**names**</mark> dizi.&#x20;

<mark style="color:turuncu;">names dizisi geçirilirse</mark>, o zaman<mark style="color:turuncu;">❗ikinci parametre (names) 1 olarak geçirilmek zorunludur.</mark>

**names** - Dizi etiket ID’leri yerine etiket adları içeriyorsa 1 olarak ayarlanır. Bu, dizinin adlardan oluştuğunu gösterir.

{% hint style="danger" %}
Aynı fonksiyonda hem etiket ID’lerini hem de etiket adlarını birlikte kullanmaya izin verilmez!
{% endhint %}

Müşteri ID’lerinden (client\_id) oluşan bir dizi döndürür: \[41121, 41192, 41522]

</details>

<details>

<summary>Örnek</summary>

`/*Belirtilen tüm etiketlere ID ile sahip müşterileri bul*/`

`r = find_clients_by_multiple_labels('[138,169,166]')`&#x20;

`/*Belirtilen tüm etiketlere etiket adlarıyla sahip müşterileri bul*/`

`r2 = find_clients_by_multiple_labels('["newTestTag","tag2"]', 1)`

<div data-with-frame="true"><figure><img src="/files/3e66348c46dc89a6375caa802382cfc9fba9e9fe" alt="" width="563"><figcaption></figcaption></figure></div>

</details>

### Müşteri etiketleri dizisini kontrol et

<details>

<summary>Açıklama</summary>

**has\_client\_multiple\_labels(labels\_array, names)** - müşteri etiketleri dizisini kontrol eder

{% hint style="warning" %}
ÖNEMLİ! Döndürür **True** eğer bir müşteri belirtilen tüm etiketlere sahipse!
{% endhint %}

Parametreler:

**labels\_array** - etiket dizisi. <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**ID**</mark> dizi<mark style="color:turuncu;">**,**</mark> <mark style="color:$primary;">VEYA</mark> <mark style="color:turuncu;">**names**</mark> dizi.&#x20;

<mark style="color:turuncu;">names dizisi geçirilirse</mark>, o zaman<mark style="color:turuncu;">❗ikinci parametre (names) 1 olarak geçirilmek zorunludur.</mark>

**names** - Dizi etiket ID’leri yerine etiket adları içeriyorsa 1 olarak ayarlanır. Bu, dizinin adlardan oluştuğunu gösterir.

{% hint style="danger" %}
Aynı fonksiyonda hem etiket ID’lerini hem de etiket adlarını birlikte kullanmaya izin verilmez!
{% endhint %}

Şunlardan birini döndürür **bir hata**ya da **True** eğer müşterinin dizideki tüm etiketleri varsa veya **False** eğer müşterinin tüm etiketleri yoksa.

</details>

<details>

<summary>Örnek</summary>

`/*Müşterinin belirtilen tüm etiketlere ID ile sahip olup olmadığını kontrol et*/`

`r = has_client_multiple_labels('[138,169,166]')`

`/*Müşterinin belirtilen tüm etiketlere etiket adlarıyla sahip olup olmadığını kontrol et*/`

&#x20;`r2 = has_client_multiple_labels('["newTestTag","tag2"]', 1)`

<div data-with-frame="true"><figure><img src="/files/ff3e50764de5d63818e7511a44d959b553824637" alt="" width="563"><figcaption></figcaption></figure></div>

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.mavibot.ai/doc/tr/chatbot/functions/hesap-makinesi/tags.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
