Клиенттермен жұмыс

АНЫҚТАМА:

was_in_state() | days_from_last_message() | free_client() | assign_to_user() | distribute_client()| get_operator() | get_operator_name() | delete_pended_messages() | set_note() | add_unread() | clear_unread() | unsubscribe()|block_client() | unblock_client() | set_client_name() | get_bind_clients() | get_current_pipline_id()

was_in_state(message_id)
клиенттің таңдалған күйде (блокта) болғанын тексереді. Блок нөмірін редактордан алуға болады.

days_from_last_message()
клиенттің соңғы хабарламасынан бері өткен күндер санын анықтайды. 24 сағаттық терезеге сәйкес келетінін тексеру үшін жасалған.

Мысалы:
d = days_from_last_message()

Егер клиенттің соңғы хабарламасынан бері 30 күннен астам уақыт өтсе, функция 9999 мәнін қайтарады.


free***_***client()
жауапты операторды босатады.

Мысалы: free_client()

assign_to_user(email, only_active)
диалогты операторға тағайындайды, мұнда:

  1. email - жол параметрі (міндетті емес). Тек email көрсетілсе, диалог ағымдағы күйіне қарамастан көрсетілген операторға тағайындалады.
  2. only_active - True немесе False (міндетті емес параметр). True мәніне орнатылса, диалог тек ағымдағы ауысымда болған жағдайда ғана көрсетілген операторға тағайындалады.

Мысалдар:

assign_to_user() - диалогты ағымдағы ауысымдағы кездейсоқ операторға тағайындайды

assign_to_user('operator's email') - диалогты оператордың күйіне қарамастан оған тағайындайды

assign_to_user('operator's email', True) - диалогты тек ағымдағы ауысымда болған жағдайда ғана көрсетілген операторға тағайындайды

distribute_client()
диалогты автоматты тарату параметрлері бойынша операторға тағайындайды.
Мысалы: distribute_client()

get_operator()
жауапты оператордың электрондық поштасын алады

Мысалы: get_operator()

Оны жауапты операторға тапсырмаларды тағайындау немесе оның бар-жоғын тексеру үшін пайдалануға болады. Егер жауапты оператор болмаса, None мәнін қайтарады.

get_operator_name()
жауапты оператордың атын алады

Мысалы: get_operator_name()

Оны клиентке ақпаратты көрсету үшін пайдалануға болады. Егер жауапты оператор болмаса, None мәнін қайтарады. Егер операторға аты тағайындалмаған болса, оның электрондық поштасын қайтарады.

delete_pended_messages()
ағымдағы клиент үшін барлық жоспарланған хабарламаларды жояды. Әдепкі бойынша, ол "Do not cancel" көрсеткілерімен жасалған хабарламаларды да жояды. "Do not cancel" көрсеткілеріндегі хабарламаларды сақтау үшін False параметрін беріңіз: delete_pended_messages(False).

set_note(comment)
диалогқа түсініктеме қосады.

Мысалы: set_note('Redo')

add_unread(count)
клиентпен диалогты оқылмаған деп белгілейді

count параметрін алып тастауға немесе 1 мәніне орнатуға болады; бұл жағдайда клиентпен диалогта +1 оқылмаған хабарлама индикаторы көрсетіледі.

Егер кез келген басқа сан берілсе, ол "Клиенттер" бөлімінде клиенттен келген оқылмаған хабарламалар саны ретінде көрсетіледі.

clear_unread()
диалогты оқылған деп белгілейді

unsubscribe()
Бот хабарламаларына жазылудан бас тарту функциясы. Мысал осы мақалада келтірілген.

Жазылудан бас тартқан клиент үшін белгі пайда болады — кресті бар қызыл хабарлама.

Маңызды!

Калькулятор бірінші орындалады, содан кейін ғана хабарлама жіберіледі.

Сондықтан, егер "Сіз боттан жазылудан бас тарттыңыз" немесе "Сіз бұғатталдыңыз" сияқты соңғы хабарламаны жіберу қажет болса, екі қадамдық процесті пайдалану керек:

  1. Алдымен, соңғы хабарламасы бар блокты жіберіңіз.
  2. Содан кейін, жазылудан бас тарту/бұғаттау функциясы бар бос блокты жіберіңіз.

Егер екеуін де бір блокта жасауға тырыссаңыз, хабарлама жіберілмейді.

Егер unsubscribe() функциясын хабарламаңызбен бір блоктың калькуляторына орналастырсаңыз, хабарлама жіберілмейді және жүйе қатені көрсетеді.

block_client()
клиентті ботқа хабарлама жіберуден бұғаттайды. Боттан бұрын жоспарланған хабарламалар да жойылады. Дегенмен, "Клиенттер" бөліміндегі диалогтан клиентке тікелей хабарлама жіберу мүмкіндігі сақталады.

Бұғатталған клиентте белгі болады — қызыл құлып белгішесі.

unblock_client()
клиенттің бұғатын ашады. Клиент ботпен қайта әрекеттесіп, хабарлама тізбектері бойынша жүре алады.

set_client_name(name)
клиенттің атын өзгертеді. Клиенттің атын қос тырнақшадағы жол ретінде беріңіз. Сондай-ақ клиенттің аты бар айнымалыны пайдалануға болады, мысалы: set_client_name("John Smith")

get_bind_clients()
параметрсіз функция, ағымдағы клиентке байланыстырылған клиенттер идентификаторларының массивін қайтарады.

get_current_pipline_id()
параметрсіз функция, клиент қазіргі уақытта орналасқан воронка идентификаторын қайтарады.

Егер клиенттің мәмілесі "өңделмеген" кезеңде болса, None мәнін қайтарады.

Тапсырмалармен жұмыс

Тапсырмалармен жұмыс істейтін функциялар операция күйін Сәтті болған жағдайда True немесе тапсырма идентификаторын қайтарады. Сәтсіздік жағдайында олар False немесе None мәнін қайтарады.

MaviBot күн форматын "dd.mm.yyyy" және уақыт форматын "HH:MM" пайдаланады.

create_task() | update_task() | done_task() | delete_task()

create_task(email, name, date_srok, description, time_srok) – тапсырманы жасайды

Параметрлер:\ ! email - жауапты тұлғаның электрондық поштасы\ ! name - тапсырма атауы\ ! date_srok - орындалу мерзімі, күн\ ! description - тапсырма сипаттамасы
time_srok - орындалу уақыты, уақыт

update_task(task_id,email, name, date_srok, description, time_srok) - тапсырманы жаңартады

Параметрлер:\ ! task_id- тапсырма идентификаторы\ ! email - жауапты тұлғаның электрондық поштасы\ ! name - тапсырма атауы\ ! date_srok - орындалу мерзімі, күн\ ! description - тапсырма сипаттамасы
time_srok - орындалу уақыты, уақыт

done_task(task_id)- тапсырманы орындалды деп белгілейді

Параметрлер:\ ! task_id- тапсырма идентификаторы

delete_task(task_id) – тапсырманы жояды

Параметрлер:\ ! task_id- тапсырма идентификаторы

Жауапты пайдаланушыны тағайындау

assign_order_to_user(email, order_id) — мәмілеге жауапты пайдаланушыны тағайындайды

  • email — жауапты етіп тағайындалатын қызметкердің электрондық поштасы. Міндетті.
  • order_id — қызметкерді тағайындау үшін мәміленің идентификаторы. Егер көрсетілмесе, ағымдағы мәміле пайдаланылады. Міндетті емес.

Жауапты пайдаланушының электрондық поштасын алу

get_order_operator(order_id) — мәміле бойынша жауапты пайдаланушының электрондық поштасын алады

  • order_id — жауапты пайдаланушыны алу үшін мәміленің идентификаторы. Егер көрсетілмесе, ағымдағы мәміле пайдаланылады. Міндетті емес.

Операторға тапсырма жасайық:

Орындалу мерзімі мен сипаттамасын жаңарту.

Тапсырманы орындалды деп белгілеу.

Тапсырманы жою

task_id=create_task('[email protected]', 'Test', '22.01.2023', 'test task', '08:00') status=delete_task(task_id)

Мәмілелермен жұмыс

get_order_id() | create_order() | set_order_name() | set_order_budget() | get_active_orders_ids() | get_success_orders_ids() | get_fail_orders_ids() | get_order_var() | get_order_vars() | set_order_var() | set_order_vars() | move_order_to_next_state() | set_order_status_success() | set_order_status_fail(order_id)| get_state_id() | change_state() | get_order_id_by_var_value() | latest_order_datetime() | count_client_orders(), get_count_orders() | delete_order(order_id) |

Ағымдағы мәміле идентификаторын алу

get_order_id() - мәміле күйін қайтарады.

Жаңа мәміле жасау

create_order(name, budget, description, client_name, phone, email, state_id)
Воронкадағы ағымдағы белсенді мәміле және оның айнымалылары тек мәмілеге қатысты функцияларда және CRM-де қолжетімді болады.

Функция параметрлері: \ ! name - (міндетті емес), мәміле атауы. Егер берілмесе, функция клиенттің ағымдағы белсенді мәмілесіне қолданылады.

! budget - (міндетті емес) мәміле сомасы. Егер берілмесе, ағымдағы белсенді мәмілеге қолданылады.
Егер budget сан болмаса, функция келесі мәнді қайтарады: budget must be a number

description - (міндетті емес), мәміле сипаттамасы.

Клиентті жасау үшін қосымша параметрлер:

client_name - (міндетті емес) жол, жаңа клиенттің аты

phone - (міндетті емес) жол, жаңа клиенттің телефон нөмірі.

email - (міндетті емес) жол, жаңа клиенттің электрондық пошта мекенжайы.

Клиентті жасау үшін кемінде телефон немесе электрондық пошта берілуі керек. Егер телефон берілсе және жобада осы телефонмен клиент жоқ болса, жаңасы жасалады.

Егер телефонсыз электрондық пошта берілсе және осы электрондық поштамен клиент жоқ болса, жаңасы жасалады.

Қосымша параметр:

state_id - сан, жасау кезінде мәміленің бастапқы күйін орнатуға мүмкіндік береді

Мәміле атауын орнату немесе жаңарту

set_order_name(name, order_id)

name - ❗міндетті, жол; мәміле атауы

order_id - (міндетті емес) мәміле идентификаторы. Егер берілмесе, өзгеріс клиенттің ағымдағы белсенді мәмілесіне қолданылады.

Мәміле бюджетін орнату немесе жаңарту

set_order_budget(budget, order_id)

budget -❗міндетті, сан; мәміле сомасы

order_id - (міндетті емес) мәміле идентификаторы. Егер берілмесе, клиенттің ағымдағы белсенді мәмілесіне қолданылады.

order_id дұрыс пайдалану үшін:

  1. Оны қолмен көрсетуге болады — мәміле идентификаторын алып, егер белгілі бір мәмілені нысанаға алғыңыз келсе, оны функция параметрі ретінде беріңіз.

  1. Оны get_order_id() функциясы арқылы алыңыз, себебі кірістірілген order_id айнымалысы {client_id}-{order_id} форматындағы мәнді қайтарады, бұл дұрыс емес әрекетке әкелуі мүмкін.

Мәміле тізімдерін алу
((архивтелген, сәтті немесе сәтсіз мәмілелерді қоспағанда))

get_active_orders_ids()

Сәтті мәміле идентификаторларының тізімін алу

get_success_orders_ids()

Сәтсіз мәміле идентификаторларының тізімін алу

get_fail_orders_ids()

Мәміле айнымалысының мәнін алу

get_order_var(order_id, variable)

Параметрлер:

! order_id - мәміле идентификаторы

! variable - мәнін алғыңыз келетін айнымалы атауы

Мәміле деректерін алу

get_order_vars(order_id, names)

Параметрлер:

! order_id - мәміле идентификаторы

names - алу үшін айнымалы атауларының массиві. Егер алынып тасталса, функция көрсетілген мәміле үшін барлық айнымалыларды қайтарады.

Функция order_id арқылы анықталған мәміле үшін names массивінде көрсетілген айнымалыларды қамтитын сөздікті қайтарады. Егер names берілмесе, ол көрсетілген мәміленің барлық айнымалылары бар сөздікті қайтарады.

Мәміле айнымалысын қосу

set_order_var(order_id, variable, value)

Параметрлер:

! order_id - мәміле идентификаторы

! variable - мәмілеге қосу немесе жаңарту үшін айнымалы атауы

Егер мәміленің "name" немесе "description" параметрлерін өзгерткіңіз келсе, сәйкесінше "name" немесе "description" айнымалы атауларын пайдаланыңыз.

! value - айнымалы мәні

Бірнеше мәміле айнымалыларын қосу

set_order_vars(order_id, variables_dict)

Параметрлер:

! order_id - мәміле идентификаторы.

! variables_dict - айнымалылар сөздігі

Келесі воронка күйіне өту

move_order_to_next_state(order_id)

Параметрлер:
order_id - мәміле идентификаторы. Егер көрсетілмесе, ағымдағы белсенді мәміле жылжытылады.
Мәміле күйлерінің реті MavibotCRM-де орнатылған тізбекке сәйкес анықталады.

MavibotCRM-дегі воронка кезеңін алу

get_state_id(client_id, order_id)
Сондай-ақ воронка күйінің идентификаторын "Күй параметрлері" бөлімінен тікелей көшіруге болады.

Параметрлер:

order_id - клиенттің мәміле идентификаторы

Функцияны order_id параметрімен немесе онсыз шақыруға болады. Егер order_id алынып тасталса, функция ағымдағы белсенді мәміле үшін воронка күйінің идентификаторын қайтарады.

order_id дұрыс пайдалану үшін:

  1. Оны қолмен көрсетуге болады, мәміле идентификаторын алып, егер белгілі бір мәмілені нысанаға алғыңыз келсе, оны функция параметрі ретінде беріңіз.
  2. Оны get_order_id() функциясы арқылы алыңыз, себебі кірістірілген order_id айнымалысы {client_id}-{order_id} форматындағы мәнді қайтарады, бұл дұрыс емес әрекетке әкелуі мүмкін.

Лидті MavibotCRM воронкасы бойынша күй идентификаторы бойынша жылжыту

change_state(state_id, order_id)

Параметрлер:\ ! state_id - воронка күйінің идентификаторы
order_id ( міндетті емес) - воронка бойынша жылжыту үшін мәміле идентификаторы. Егер алынып тасталса, ағымдағы белсенді мәміле жылжытылады.

Айнымалы атауы мен мәні бойынша мәміле идентификаторын алу

get_order_id_by_var_value(var_name, var_value, client_id)

Параметрлер:\ ! var_name - айнымалы атауы\ ! var_value - айнымалы мәні;
client_id - (міндетті емес) клиенттің мәміле идентификаторы; әдепкі бойынша боттағы клиент идентификаторы

Соңғы мәміленің күні мен уақытын алу

latest_order_datetime(client_id, dt_fmt)

Параметрлер:
client_id - (міндетті емес) клиенттің мәміле идентификаторы; әдепкі бойынша боттағы клиент идентификаторы;
df_fmt - (міндетті емес) қайтарылатын күн мен уақыт форматы; әдепкі "%d.%m.%y %H:%M"

Клиент мәмілелерінің санын алу

count_client_orders(client_id, state_id, get_all, active)

Параметрлер:
client_id - (міндетті емес) мәміле клиентінің идентификаторы; әдепкі бойынша боттағы клиент идентификаторы;
state_id - (міндетті емес) воронкадағы мәміле күйінің идентификаторы;
get_all - (міндетті емес) active параметрі үшін сүзгі жалауы; әдепкі 1 (белсенді бойынша сүзгілеу өшірілген);
active - тек get_all 0 болғанда пайдаланылады; белсенді мәмілелерді сүзгілейді; әдепкі 1 (тек белсенді мәмілелерді қайтарады);

Белгілі бір мәміле күйіндегі мәмілелер санын алу

get_count_orders(id) - күй идентификаторы бойынша қазіргі уақытта белгілі бір воронка күйіндегі мәмілелер санын қайтарады.

Функция бір параметрді қабылдайды:

! id - мәміле күйінің идентификаторы.

Функцияны пайдалану мысалы:

Кезең идентификаторын параметрлерден табуға болады.

Әрі қарай, функцияны калькуляторға келесідей енгізу керек:

Ботты тестілеу кезінде боттың жауабы функцияға берілген мәнмен көрсетілген күйдегі мәмілелер санынан тұрады.

Мәмілені жою

delete_order(order_id) — MaviBotCRM-дегі мәмілені жояды.

order_id - (міндетті емес) жойылатын мәміле идентификаторы. Егер алынып тасталса, ең соңғы мәміле жойылады.

Барлық функцияларды пайдалану оңай.


Мысалы, жаңа мәміле жасап, оның нөмірін клиентке жіберейік:

Клиенттің ағымдағы белсенді мәміле идентификаторын get_order_id() функциясы арқылы алуға немесе get_active_orders_ids() көмегімен клиенттің барлық мәмілелерінің толық тізімін алуға болады.

Сәтті мәміле тегін орнату

set_order_status_success()

Сипаттама

set_order_status_success(order_id)

Параметрлер:

order_id - мәміле идентификаторы. Егер параметр көрсетілмесе, тег ағымдағы белсенді мәмілеге орнатылады.

Сәтсіз мәміле тегін орнату

set_order_status_fail()

Сипаттама

set_order_status_fail(order_id)

Параметрлер:

order_id - мәміле идентификаторы. Егер параметр көрсетілмесе, тег ағымдағы белсенді мәмілеге орнатылады.

Архивтелген мәміле тегін орнату

set_order_status_archive()

Сипаттама

set_order_status_archive(order_id)

Параметрлер:

order_id - мәміле идентификаторы. Егер параметр көрсетілмесе, тег ағымдағы белсенді мәмілеге орнатылады.

Мысалдар

/*Ағымдағы белсенді мәмілені архивтеу*/

res_arh = set_order_status_archive()