Leads
in package
Класс для модуля Сборщик заявок
Class Leads
Tags
Table of Contents
- COLORREZULT = [1 => 'red', 2 => 'gray', 3 => 'blue', 4 => 'gray']
- Цвета статусов закрытия
- COLORS = [0 => 'red', 1 => 'green', 2 => 'blue', 3 => 'gray']
- цвета статусов
- REZULTES = [1 => 'Спам', 2 => 'Дубль', 3 => 'Другое', 4 => 'Не целевой']
- Статусы закрытия заявок
- STATUSES = [0 => 'Открыт', 1 => 'В работе', 2 => 'Обработан', 3 => 'Закрыт']
- статусы заявок
- $db : mixed
- Различные параметры, в основном из GLOBALS
- $error : array<string|int, mixed>
- Массив ошибок
- $fpath : mixed
- Различные параметры, в основном из GLOBALS
- $identity : mixed
- Различные параметры, в основном из GLOBALS
- $iduser1 : mixed
- Различные параметры, в основном из GLOBALS
- $ignored : array<string|int, mixed>
- Массив не обработанных сообщений, т.к. они загружены ранее
- $isCloud : mixed
- Различные параметры, в основном из GLOBALS
- $ivc : mixed
- Различные параметры, в основном из GLOBALS
- $lists : array<string|int, mixed>
- Массив списка заявок для метода list
- $messages : array<string|int, mixed>
- Массив обработанных сообщений
- $note : array<string|int, mixed>
- Массив обработанных писем в заявки
- $opts : mixed
- Различные параметры, в основном из GLOBALS
- $params : array<string|int, mixed>
- Передача различных параметров
- $skey : mixed
- Различные параметры, в основном из GLOBALS
- $sqlname : mixed
- Различные параметры, в основном из GLOBALS
- $tmzone : mixed
- Различные параметры, в основном из GLOBALS
- $rootpath : false|string
- __construct() : mixed
- autoLeadCreate() : stdClass
- Функция автоматического создания Заявки по номеру телефона
- boxList() : array<string|int, mixed>
- Список всех почтовых ящиков с настройками
- boxSettings() : array<string|int, mixed>
- Загрузка параметров конкретного ящика для сбора заявок
- delete() : array<string|int, mixed>
- Удаление заявки
- edit() : array<string|int, mixed>
- Добавление/изменение заявки
- editUID() : array<string|int, mixed>
- Манипуляции с внешними id
- getMessages() : array<string|int, mixed>
- Проверяет почту с заданного ящика и возвращает список писем
- getPath() : mixed
- Получает id источника по Имени или Метке
- getUser() : array<string|int, mixed>
- Получение ответственного за заявку по алгоритму
- import() : array<string|int, mixed>
- Импорт записей из файла
- info() : array<string|int, mixed>
- Информация о заявке
- listLeads() : void
- Список заявок
- listSources() : void
- Список каналов
- listUTM() : void
- Список UTM-ссылок
- parseText() : array<string|int, mixed>
- Вспомогательная функция Парсит текст на составляющие
- parseUID() : array<string|int, mixed>
- Возвращает массив id внешних сервисов
- sendNotifyClient() : string
- Отправка уведомления клиенту
- setuser() : array<string|int, mixed>
- Назначение заявки пользователю или дисквалификация
- workit() : array<string|int, mixed>
- Обработка заявки сотрудником, либо закрытие
- getClient() : array<string|int, mixed>
- Поиск клиента, контакта, пользователя по email, phone
- settings() : mixed
- Настройки модуля
Constants
COLORREZULT
Цвета статусов закрытия
public
array<string|int, mixed>
COLORREZULT
= [1 => 'red', 2 => 'gray', 3 => 'blue', 4 => 'gray']
COLORS
цвета статусов
public
array<string|int, mixed>
COLORS
= [0 => 'red', 1 => 'green', 2 => 'blue', 3 => 'gray']
REZULTES
Статусы закрытия заявок
public
array<string|int, mixed>
REZULTES
= [1 => 'Спам', 2 => 'Дубль', 3 => 'Другое', 4 => 'Не целевой']
STATUSES
статусы заявок
public
array<string|int, mixed>
STATUSES
= [0 => 'Открыт', 1 => 'В работе', 2 => 'Обработан', 3 => 'Закрыт']
Properties
$db
Различные параметры, в основном из GLOBALS
public
mixed
$db
$error
Массив ошибок
public
array<string|int, mixed>
$error
= []
$fpath
Различные параметры, в основном из GLOBALS
public
mixed
$fpath
$identity
Различные параметры, в основном из GLOBALS
public
mixed
$identity
$iduser1
Различные параметры, в основном из GLOBALS
public
mixed
$iduser1
$ignored
Массив не обработанных сообщений, т.к. они загружены ранее
public
array<string|int, mixed>
$ignored
= []
Tags
$isCloud
Различные параметры, в основном из GLOBALS
public
mixed
$isCloud
$ivc
Различные параметры, в основном из GLOBALS
public
mixed
$ivc
$lists
Массив списка заявок для метода list
public
array<string|int, mixed>
$lists
= []
$messages
Массив обработанных сообщений
public
array<string|int, mixed>
$messages
= []
Tags
$note
Массив обработанных писем в заявки
public
array<string|int, mixed>
$note
= []
-
результат
-
id - id заявки
-
result = "Сделано"
-
error
Tags
$opts
Различные параметры, в основном из GLOBALS
public
mixed
$opts
$params
Передача различных параметров
public
array<string|int, mixed>
$params
= []
$skey
Различные параметры, в основном из GLOBALS
public
mixed
$skey
$sqlname
Различные параметры, в основном из GLOBALS
public
mixed
$sqlname
$tmzone
Различные параметры, в основном из GLOBALS
public
mixed
$tmzone
$rootpath
private
false|string
$rootpath
Methods
__construct()
public
__construct() : mixed
Return values
mixed —autoLeadCreate()
Функция автоматического создания Заявки по номеру телефона
public
autoLeadCreate(string $phone[, array<string|int, mixed> $params = [] ]) : stdClass
Parameters
- $phone : string
- $params : array<string|int, mixed> = []
-
- опционально
- title - Название клиента
- description - Описание заявки
Tags
Return values
stdClass —- id - id заявки
- error - ошибки
boxList()
Список всех почтовых ящиков с настройками
public
boxList([array<string|int, mixed> $filters = [] ]) : array<string|int, mixed>
Parameters
- $filters : array<string|int, mixed> = []
-
- фильтры для cron-скрипта
- str active = yes - только активные
- int lastBOX - начальный id ящика ( вывод начнется со следующего )
- int limit - ограничение по количеству
Return values
array<string|int, mixed> —- массив настройек ящика
- int id - в качестве ключа
- int id - id записи
- int name - имя ящика
- str smtp_host - хост ( imap.yandex.ru )
- str smtp_port - порт (25, 465 или 587)
- str smtp_protocol - протокол (IMAP, POP3)
- str smtp_secure - авторизация ( SSL )
- str smtp_user - email
- str smtp_pass - пароль
- str deletemess - удалять сообщения с сервера ( true|false )
- str divider - разделитель для поиска пар "ключ : значение" ( : )
- str filter - фильтр по темам письма ( Заявка )
boxSettings()
Загрузка параметров конкретного ящика для сбора заявок
public
static boxSettings(int $id[, string|null $name = NULL ][, array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $id : int
- $name : string|null = NULL
- $params : array<string|int, mixed> = []
Return values
array<string|int, mixed> —- настройки конкретного почтового ящика
- int id - id записи
- int name - имя ящика
- str smtp_host - хост ( imap.yandex.ru )
- str smtp_port - порт (25, 465 или 587)
- str smtp_protocol - протокол (IMAP, POP3)
- str smtp_secure - авторизация ( SSL )
- str smtp_user - email
- str smtp_pass - пароль
- str deletemess - удалять сообщения с сервера ( true|false )
- str divider - разделитель для поиска пар "ключ : значение" ( : )
- str filter - фильтр по темам письма ( Заявка )
delete()
Удаление заявки
public
static delete( $id) : array<string|int, mixed>
Parameters
Return values
array<string|int, mixed> —edit()
Добавление/изменение заявки
public
edit([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
- параметры
- int iduser - id куратора заявки (не обязательный)
- str tel | phone - номер телефона
- str email - email
- int clid - id клиента (не обязательный)
- int pid - id контакта
- str title - ФИО
- str company - название компании
- str site - сайт
- str city - город
- str country - страна
- int partner - id партнера (не обязательный)
- str description - комментарий к заявке (содержимое сообщения)
- str muid - messageid для письма (чтобы исключать дубли)
- str|int clientpath - id канала или его название
- str utm_medium - Тип трафика (не обязательный)
- str utm_campaign - Рекламная Кампания (не обязательный)
- str utm_term - Ключевая фраза (не обязательный)
- str utm_content - Содержание (не обязательный)
- str utm_referrer - Аналогичен clientpath (не обязательный)
- array uids - массив внешних uids (не обязательный)
- uid => value
- int identity - идентификатор аккаунта (не обязательный)
Tags
Return values
array<string|int, mixed> —- массив результата
- id - id заявки ( lid )
- result - Сделано
- error - ошибка
editUID()
Манипуляции с внешними id
public
editUID([string $name = '' ][, string $value = '' ][, array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $name : string = ''
- $value : string = ''
- $params : array<string|int, mixed> = []
-
- доп.параметры
- lid - id заявки
- clid - id клиента
- did - id сделки
Return values
array<string|int, mixed> —good result - str result = ok - int id = id - str message = Комментарий
error result - result = error - message = Не указан Параметр и его Значение
getMessages()
Проверяет почту с заданного ящика и возвращает список писем
public
getMessages([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
-
параметры SMTP-сервера + доп.параметры - int id - id настроек из БД, если задано, то 6 параметров smtp-сервера не нужны, или - str name - Названеи почтового ящика, если задано то параметры smtp-сервера также не нужны
-
str smtp_host - хост ( imap.yandex.ru )
-
str smtp_port - порт (25, 465 или 587)
-
str smtp_protocol - протокол (IMAP, POP3)
-
str smtp_secure - авторизация ( SSL )
-
str smtp_user - email
-
str smtp_pass - пароль
-
str deletemess - удалять сообщения с сервера ( true|false )
-
str divider - разделитель для поиска пар "ключ : значение" ( : )
-
str filter - фильтр по темам письма ( Заявка )
-
int days - количество дней проверки ( 1 )
-
bool process = false - добавить заявки в базу
-
Tags
Return values
array<string|int, mixed> —getPath()
Получает id источника по Имени или Метке
public
static getPath([string $path = '' ][, string|null $source = NULL ]) : mixed
Parameters
- $path : string = ''
- $source : string|null = NULL
Return values
mixed —getUser()
Получение ответственного за заявку по алгоритму
public
getUser([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
- параметры
- str phone
- str email
- int iduser
Return values
array<string|int, mixed> —import()
Импорт записей из файла
public
import([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
- доп.параметры
- asarray = true - выводит только обработанный массив ( иначе добавляет заявки в базу )
Tags
Return values
array<string|int, mixed> —info()
Информация о заявке
public
static info( $id) : array<string|int, mixed>
Parameters
Return values
array<string|int, mixed> —(prixe, sklad)
listLeads()
Список заявок
public
listLeads([array<string|int, mixed> $params = [] ]) : void
Parameters
- $params : array<string|int, mixed> = []
-
- параметры вывода, в т.ч. фильтры - int page - страница ( по 100 записей ) - str ord - сортировка по полю - str tuda - направление вывода - date da1 - дата начала - date da2 - дата конец - str|array status - массив статусов - str|array user - массив пользователей - str word - поисковое слово - str email - поиск по email
Example
$params = [ "page" => $_REQUEST['page'], "user" => $_REQUEST['user'], "status" => $_REQUEST['statuss'], "da1" => $_REQUEST['da1'], "da2" => $_REQUEST['da2'], "email" => $_REQUEST['email'], "ord" => $_REQUEST['ord'], "tuda" => $_REQUEST['tuda'], "word" => $_REQUEST['word'], ]; $l = new Salesman\Leads(); $l -> listLeads($params); $lists = $l -> lists;
Return values
void —listSources()
Список каналов
public
listSources([array<string|int, mixed> $params = [] ]) : void
Parameters
- $params : array<string|int, mixed> = []
-
- параметры вывода, в т.ч. фильтры
- int page - страница ( по 100 записей )
- str ord - сортировка по полю
- str tuda - направление вывода
- str word - поисковое слово
Return values
void —listUTM()
Список UTM-ссылок
public
listUTM([array<string|int, mixed> $params = [] ]) : void
Parameters
- $params : array<string|int, mixed> = []
-
- параметры вывода, в т.ч. фильтры
- int page - страница ( по 100 записей )
- str ord - сортировка по полю
- str tuda - направление вывода
- str word - поисковое слово
Return values
void —parseText()
Вспомогательная функция Парсит текст на составляющие
public
static parseText([string|null $text = NULL ][, string $divider = ':' ]) : array<string|int, mixed>
Parameters
- $text : string|null = NULL
- $divider : string = ':'
Return values
array<string|int, mixed> —- массив значений
- field => value ( Например: email => m.3000@mail.io )
parseUID()
Возвращает массив id внешних сервисов
public
static parseUID( $text, $divider) : array<string|int, mixed>
Parameters
Return values
array<string|int, mixed> —- массив uid
- uid => value ( Например: roistat_id => 232SFSDF456RTG )
sendNotifyClient()
Отправка уведомления клиенту
public
sendNotifyClient([array<string|int, mixed> $params = [] ]) : string
Parameters
- $params : array<string|int, mixed> = []
-
- параметры
- int id - id заявки
- str type - null|wellcome
- int iduser - пользователь
- int clid
- int pid
- int did
Tags
Return values
string —setuser()
Назначение заявки пользователю или дисквалификация
public
setuser([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
- параметры
- int id - id заявки ( lid )
- int iduser - id куратора, которому названаем заявку
- str rezult - комментарий для кураторв ( если пусто, то считаем, что заявка дисквалифицирована )
- str rezz - комментарий при дисквалификации заявки
- int identity - идентификатор аккаунта (не обязательный)
Tags
Return values
array<string|int, mixed> —- массив результата
- id - id заявки ( lid )
- result - Сделано
- error - ошибка
workit()
Обработка заявки сотрудником, либо закрытие
public
workit([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
-
параметры - int id - id заявки ( lid ) - int iduser - id куратора, которому названаем заявку - int clid - id клиента ( если не задан, то будет добавлен новый ) - int pid - id контакта ( если не задан, то будет добавлен новый ) - str rezult - комментарий для кураторов ( если пусто, то считаем, что заявка обрабатывается, иначе - дисквалифицирована ) - str rezz - комментарий при дисквалификации заявки ( если rezult - пусто )
-
Для добавления Контакта:
- str personname - ФИО
- str ptitle - должность
- str mail - email
- array tel - массив номеров телефона
- int personpath - id источника клиента
- int loyalty - id лояльности
-
Для добавления Клиента:
- str type - тип клиента ( client, person, contractor, ... )
- str title - название
- str mail_url - email
- str site_url - сайт
- array phone - массив номеров телефонов
- str address - адрес
- int clientpath - id канала
- str tip_cmr - тип отношений
- int territory - id территории
- int idcategory - id категории
-
Для добавления Сделки:
- str dodog = yes - если будем добавлять договор
- str dogovor - название Сделки
- date datum_plan - плановая дата
- int tip - id типа сделки
- int direction - id направления
- int step - id этапа
- str description - описание сделки
-
Для добавления Активности:
- str content - если будем добавлять договор
- str tiphist - тип активности
-
int identity - идентификатор аккаунта (не обязательный)
-
Tags
Return values
array<string|int, mixed> —- массив результата
- int id - id заявки
- str result = Сделано
- str error - ошибки
- int did - id сделки
- int clid - id клиента
getClient()
Поиск клиента, контакта, пользователя по email, phone
private
getClient([array<string|int, mixed> $params = [] ]) : array<string|int, mixed>
Parameters
- $params : array<string|int, mixed> = []
-
- параметры
- phone
- identity
Return values
array<string|int, mixed> —- массив результатов
- clid
- pid
- iduser
settings()
Настройки модуля
private
settings([int $identity = 1 ]) : mixed
Parameters
- $identity : int = 1