CRM'deki anlaşmalar, müşteri bilgileri, anlaşma adı, açıklaması ve tutarı hakkında bilgiler içeren kartlar olarak görüntülenir.

Gerekirse başka alanlar da ekleyebilirsiniz (bkz. şek. 8-12).
"Anlaşma Oluştur" butonu

Anlaşma Oluştur penceresi, yeni bir anlaşmayı hızlıca ayarlamanızı ve kaydetmenizi sağlar.

Bir müşteri oluşturmak için formu doldurun. Müşteri zaten varsa, MaviBot sizi veritabanından seçmeniz için yönlendirecektir.

- Müşteri bulunamazsa, projeye bir WhatsApp veya e-posta botu bağlayın.
- Bağlı kanal aracılığıyla müşteriye mesaj gönderin; bu, profillerini otomatik olarak oluşturacaktır.
- Anlaşmanın yerleştirilmesi gereken huni aşamasını seçin.

Modal formda anlaşma değişkenleri de eklenebilir:

Ardından, anlaşmayı sisteme eklemek için "Oluştur" seçeneğine tıklayın.
"Hızlı Ekle" butonu
Bu buton ayrıca CRM'e manuel olarak yeni bir müşteri eklemeye de yardımcı olabilir.

Müşterinin bilgilerini girebileceğiniz bir pencere açmak için butona tıklayın.

Şek. 26 Hızlı anlaşma oluşturma penceresi (Not: Tüm veriler hayalidir; herhangi bir benzerlik tamamen tesadüfidir.)
Böylece anlaşma "İlgilendi" aşamasında oluşturulacaktır.
Tamamlandı!
Artık anlaşmaların nasıl oluşturulacağını biliyorsunuz.
Sohbet botundan anlaşma nasıl oluşturulur
Fonksiyon aracılığıyla anlaşma oluşturmak için sohbet botu akışı örneği
Süreç genel bakışı:
- Bir Başlangıç bloğu oluşturun

- İki buton bloğu oluşturun.

- Bağlantı ayarlarına gidin, "Kullanıcı veri girer" seçeneğini etkinleştirin ve kullanıcının gireceği hizmetin adını belirtin.

- Ardından, beyaz bir bloğa "Adınız nedir?" sorusunu ekleyin. Altında yeni bir blok oluşturun ve ok ayarlarında "Kullanıcı veri girer" seçeneğini etkinleştirin.

"Kullanıcı veri girer" ayarı, name değişkeni ile birlikte "Telefon numaranızı girin" bloğuna giden her bağlantıda etkinleştirilir.
- Şimdi, "Telefon numaranızı girin" bloğundan iki blok oluşturun — "Sohbet" ve "Yedek".

- Bağlantı ayarlarında "RegEx eşleşmesi" türünü seçin.
- "Kullanıcı veri girer" ayarını etkinleştirin.
- Değişken adını girin:
phone.

Şimdi, Yedek bloğuna şu mesajı yazın: "Bu yanlış! Tekrar deneyin."
Bu yapılandırma şu şekilde çalışacaktır: müşteriniz yanlış bir telefon numarası girerse, Yedek bloğundan mesaj alacaktır. Müşteri doğru bir telefon numarası girene kadar Yedek mesajı gönderilmeye devam edecektir.
- Ardından, müşteriye bütçelerini sorun ve hemen altında yeni bir blok oluşturun.

- Bağlantıda "Kullanıcı veri girer" ayarını etkinleştirin ve değişken adını girin:
budget.

Bağlantıda "Kullanıcı veri girer" onay kutusunu etkinleştirin ve phone değişkenini client_name olarak belirtin.
-
Son bloğun türünü "Potansiyel Müşteriler" olarak değiştirebilir veya
create_orderfonksiyonunu kullanabilirsiniz.İşte kırmızı "Potansiyel Müşteriler" bloğu ile seçenek.

Örnek.

CRM'de sohbet botundan anlaşma oluşturmak için create_order(name, budget, description, client_name, phone, email, state_id) fonksiyonu kullanılır.
Hunideki mevcut aktif anlaşma, değişkenlerle birlikte yalnızca anlaşma yönetimi ve CRM fonksiyonlarında kullanılabilir olacaktır.
Bir müşteri oluşturmak için telefon veya e-posta değişkeni belirtilmelidir. Telefon belirtilmişse ve projede bu telefona sahip bir müşteri yoksa, yeni bir tane oluşturulur.
E-posta değişkeni telefon değişkeni olmadan belirtilmişse ve projede bu adrese sahip bir müşteri yoksa, yeni bir tane oluşturulur.
Akışta, aşamalarda aşağıdaki verileri topladık:
- Name - anlaşma adı (örnekte, bir web sitesine ihtiyacım var & bir açılış sayfasına ihtiyacım var);
- Budget — müşterinin web sitesi türünü seçmesinden sonraki bloklarda belirtilen anlaşma maliyeti;
- Phone — müşterinin telefon numarası
- Client_name — müşterinin adı
Belirli bir işlem durumunda bir anlaşma oluşturmanız gerekiyorsa, state_id parametresini iletin.
Önemli!
Herhangi bir parametre iletmezseniz, parametre yerine none iletin (Şek. 36'da e-posta parametresi yerine none belirtildiği gibi).
Durum kimliği (state_id parametresi) nerede bulunur

Aşama Kimliği:

Diğer ayarlar
Arama çubuğu, anlaşmayı müşterinin adına göre aramak içindir.

Filtre: anlaşmaları çeşitli parametrelerle filtrelemenizi sağlar. Sık kullanıyorsanız oluşturulan filtreyi kaydedebilirsiniz.

Bir anlaşma yeni bir huni aşamasına taşındığında bot nasıl tetiklenir
CRM hunisinde bir anlaşmanın aşama değişikliğinde bir botu tetiklemek için:
- Proje ayarlarına gidin.
- "Geri Aramalar" bölümünü açın.

"CRM aşama geçişi geri arama ayarları" seçeneğine tıklayın:

Bundan sonra, projedeki tüm hunileri içeren bir modal pencere göreceksiniz. Tüm huniyi veya belirli bir aşamayı seçebilirsiniz.

Ardından ayarları kaydedin.
Artık anlaşma durumu otomatik veya manuel olarak değiştiğinde, sitenin herhangi bir yerinden bir bildirim oluşturulur ve bu, bir bot yanıtını tetiklemek için kullanılabilir.
Bildirim şu şekilde görünür: crm_state_changed Huni adı:Aşama adı
callback_query_id değişkeni de müşterinin kartında görünecek ve bildirimin gönderildiği anlaşmanın tanımlayıcısını saklayacaktır.

Bu olaya yanıt olarak botunuzu tetiklemek için, geri arama metnini bir bağlantının veya tetikleyici tabanlı bir bloğun (Başlangıç veya Tetikleyici bloğu gibi) tetikleyici alanına girin.

Müşteriyi ana sohbet botu akışında tutmak istiyorsanız, "Sohbet" bloğunu kullanın. Bu bloğa geçiş yapılamaz, bu nedenle geri aramaya tepki verdikten sonra müşteri ana hunide kalırken yine de mesajı alır.
Durum değişikliğinden sonra huniye devam etmeniz gerekiyorsa, "Başlangıç" bloğunu kullanın. Müşteri, geri aramaya yanıt olarak "Başlangıç" bloğuna yönlendirilecek ve huninin oradan devam etmesine izin verecektir.
Anlaşma nasıl taşınır
Bir anlaşmayı herhangi bir huni aşamasına taşımak için, sol fare tuşuyla tıklayıp istediğiniz aşamaya sürüklemeniz yeterlidir.

Bir anlaşma "Başarısız" veya "Arşivlendi" durumuna taşındığında, nedeni belirtmenizi isteyen bir modal pencere açılır. Bu işlem, karşılık gelen bir anlaşma değişkeni oluşturur: failed_reason veya archived_reason.
Sağlanan neden ilgili değişkene kaydedilir. Anlaşma daha sonra geri yüklenirse, restored_from_failed veya restored_from_archived değişkeni "true" değeriyle eklenir.
Bir anlaşmanın belirtilen aşamaya taşınması nasıl engellenir
Anlaşmaların manuel olarak taşınabileceği aşamaları kısıtlamanız gerekiyorsa, durum ayarlarında kısıtlamayı yapılandırın.
Huniyi açın ve aşama ayarlarına gidin.

Anlaşma hareketini belirli aşamalarla kısıtlamak için aşama ayarlarını kullanın. Kontrol listesinde istediğiniz aşamaları seçin (birden çok seçime izin verilir) ve değişiklikleri kaydedin.

Kaydettikten sonra, kısıtlanan aşamalar MaviBot CRM'de görsel olarak vurgulanacaktır. Daha koyu görünecekler ve anlaşmaları taşıma devre dışı bırakılacaktır. Aşama taşıma kısıtlamaları uygulanırsa, bu aşamalar müşteri sohbet arayüzünde de gizlenecektir.
CRM'de anlaşma silmeye tepki
CRM'de bir anlaşma silindiğinde, bot müşteriyi bilgilendirmek için crm_lead_removed adlı bir geri arama alır.

Anlaşmalar nasıl değiştirilir
CRM sayfasında doğrudan anlaşmalar üzerinde işlemler yapıldığında, aşağıdaki geri aramalar tetiklenir:
-
change_responsible_order— anlaşmanın atanan yöneticisi değişti. -
crm_state_changed— anlaşma farklı bir huni aşamasına taşındı. -
crm_system_state_changed— anlaşma Kaybedildi, Kazanıldı veya Arşivlendi durumuna taşındı. -
crm_lead_removed— anlaşma silindi.
Ek olarak, müşteri değişkenleri, CRM eyleminden etkilenen belirli anlaşmanın kimliğini içeren callback_order_id içerecektir.
Bu geri aramalardan birini işlerken, ilgili anlaşma işleme bloğu içinde geçici olarak aktif hale gelir ve değişkenlerine doğrudan erişmenizi sağlar.
Akış bir sonraki bloğa geçtiğinde, MaviBot'un standart mantığı devam eder — anlaşma değişkenlerine sonraki erişimler, müşterinin en son aktif anlaşmasındaki değerleri döndürecektir.
Botta bir anlaşma aktif aşamaya nasıl geçirilir
switch_order(order_id) fonksiyonu, değişkenlerine erişmek için belirli bir anlaşmayı aktif hale getirmenizi sağlar.
-
order_id— belirli anlaşma kimliği için isteğe bağlı bir parametre. Atlanırsa, müşterinin en son anlaşması aktif hale gelir. - Belirli bir anlaşmayı etkinleştirmek için, kimliğini
switch_order(order_id)fonksiyonuna iletin. - Bu fonksiyonu bir hesaplayıcı bloğu içinde çağırır ve bir hedef anlaşma kimliği sağlarsanız, sonraki tüm bloklarda bu anlaşmanın değişkenlerine erişebileceksiniz.

switch_order fonksiyonu silinmiş veya var olmayan bir anlaşmanın kimliği ile çağrılırsa, hiçbir geçiş gerçekleşmez. Bu durumda, fonksiyon müşteri için o anda aktif olan anlaşmanın kimliğini (veya müşterinin aktif anlaşması yoksa None) döndürecektir.
Bu nedenle, fonksiyona iletilen order_id değerini döndürdüğü değerle karşılaştırarak geçişin başarılı olup olmadığını doğrulayabilirsiniz:
switch_result = switch_order(order_id)
result = if(switch_result == order_id, value_if_true, value_if_false)
switch_order() fonksiyonuna hiçbir argüman iletilmezse, müşterinin en son anlaşmasını aktif hale getirecektir. Bu, aktif anlaşmayı geri almanıza veya sıfırlamanıza olanak tanır — örneğin, başka bir anlaşmayla işlemler gerçekleştirdikten sonra veya bir CRM geri araması tarafından geçici olarak etkinleştirilen bir anlaşmayı tutmanız gerekmediğinde.


