Справочник всех функций
Получение данных бота
| Метод | Описание |
|
Возвращает все данные текущего бота |
|
| bot.setData(string $key, $value): self |
Устанавливает значение данных текущего бота по ключу |
| bot.getData(string $key): mixed|null |
Возвращает данные текущего бота по ключу |
Работа с лидами
Методы bot
| Метод | Описание |
| bot.findLeads(array|object $columns = [], array|object $where = [], array|object $orderBy = [], int|null $limit = null, int|null $offset = null): array | Находит лиды по указанным атрибутам |
| bot.getGeoLocation(): array|null | Возвращает геолокацию лида |
Методы lead
| Метод | Описание |
|
Возвращает все данные лида
|
|
| lead.setData(string $key, $value): self |
Устанавливает значение данных лида по ключу Возможные ключи:
|
| lead.getData(string $key): mixed|null |
Возвращает значение данных лида по ключу Возможные ключи:
|
|
Проверяет наличие данных лида по ключу Возможные ключи:
|
|
| lead.getSerialNumber(): int|null | Возвращает порядковый номер лида в текущем боте |
| lead.getChannelCode(): string | Возвращает код канала лида |
| lead.isInlineButtonsAvailable(): bool|null | Проверяет включены ли инлайн кнопки |
| lead.isInlineButtonsAvailableGeneralChannelSetting(): bool|null | Возвращает настройки кнопок канала |
Работа со скриптами
Работа с атрибутами
Методы bot
| Метод | Описание |
| bot.setAttr(string $key, string $value): self | Устанавливает значение переменной бота |
| bot.getAttr(string $key): mixed|null | Возвращает значение переменной бота |
| bot.getAllAttr(): array | Возвращает массив всех переменных бота |
| bot.getIntAttr(string $key, int|null $default = 0): int|null | Возвращает значение int переменной бота |
| bot.getFloatAttr(string $key, float|null $default = 0.0): float|null | Возвращает значение float переменной бота |
| bot.getBoolAttr(string $key, bool|null $default = false): bool|null | Возвращает значение bool переменной бота |
| bot.issetAttr(string $key): bool | Проверяет наличие переменной бота |
| bot.isAttrExist(string $key): bool | |
| bot.getAllJsonAttrs(): array | Возвращает значение всех JSON переменных бота |
| bot.setJsonAttr(string $key, $value): self | Устанавливает значение JSON переменной бота |
| bot.getJsonAttr(string $key): mixed|null | Возвращает значение JSON переменной бота |
| Проверяет наличие JSON переменной бота |
|
Методы lead
Методы memory
Работа с триггерами
Работа со статусами
Работа с рассылками
| Метод | Описание |
| bot.scheduleBroadcast(int|null $broadcastId, int|null $ticketId = null, $jobParams = []): bool | Планирует запуск рассылки |
| bot.scheduleBroadcastByCode(string|null $broadcastCode, int|null $ticketId = null, $jobParams = []): bool | Планирует запуск рассылки по коду |
| bot.getBroadcastIdByCode(string|null $broadcastCode): int|null | Возвращает ID рассылки по коду |
Работа с тэгами
Работа с контекстами
| Метод | Описание |
| lead.setContext(string $key, $value): self | Устанавливает значение контекста лида |
| lead.isContextExist('some_tag'): bool | Проверяет наличие контекста лида |
| lead.issetContext('some_tag'): bool | |
| lead.getContext(string $key): string|null | Возвращает значение контекста лида |
| lead.getAllContexts(): array | Возвращает массив всех контекстов лида |
Работа с переключением на оператора
Методы bot
| Метод | Описание |
| bot.getForwardEventType(): bool |
Проверяет кто переключил на оператора |
| bot.isForwardedToOperator(): bool |
Проверяет переключения на оператора |
Методы lead
| Метод | Описание |
| lead.setForwarded(bool|int $state): self |
Переключает бот на оператора |
Работа с заявками
Методы bot
| Метод | Описание |
| bot.createTicket($data): int|null | Создает заявку |
| bot.updateTicketById(int $ticketId, $data): bool | Обновляет заявку |
| bot.getMaxRejectsTicketCount(): int|null | Возвращает максимальное количество отказов |
| bot.findTickets($where = [], bool $findInAllBusinessBots = false, $orderBy = [], int|null $limit = null, int|null $offset = null): array | Находит заявку по заданным атрибутам |
| bot.findTicketIdByCustomField(string $fieldName, $value): int|null |
Возвращает id заявки по значению поля |
| bot.getTicketTypeIdByName(string $typeName): int|null | Возвращает id заявки по наименованию вида заявки |
| bot.getTicketTypeNameById(int|null $ticketTypeId): string|null | Возвращает наименование заявки по id вида заявки |
| bot.getTicketStatusIdByName(string $statusName): int|null | Возвращает id заявки по наименованию статуса заявки |
| bot.setCurrentTicketById(int|null $ticketId): bool | Устанавливает указанную заявку как текущую |
| bot.clearTicketAssignedPersonsLog(): bool | Очищает лог назначения тикета персонам |
Методы ticket
| Метод | Описание |
| Обновляет заявку, через объект заявки | |
|
Возвращает значение всех данных заявки |
|
|
Устанавливает значение данных заявки по ключу В качестве ключа можно указать:
|
|
|
Возвращает значение данных заявки по ключу В качестве ключа можно указать:
|
|
|
Считывает произвольные поля заявки по ключу В качестве ключа можно указать:
|
|
|
Проверяет наличие данных по заявке по ключу В качестве ключа можно указать:
|
|
| Перезагружает кастомные данные | |
|
ticket.loadCustomDataIfNotLoaded(bool $isReloadModel = false): bool |
Загружает кастомные данные, если они не загружены |
| Переопределяет список кастомных полей | |
| Возвращает список кастомных полей | |
|
Устанавливает значение кастомного поля В качестве ключа можно указать:
|
|
|
Проверяет имеет ли значение кастомное поле В качестве ключа можно указать:
|
|
|
Проверяет существует ли кастомное поле В качестве ключа можно указать:
|
|
| Возвращает название типа заявки | |
|
Возвращает ID статуса заявки |
|
|
Возвращает название статуса заявки |
|
|
Возвращает тип статуса заявки |
|
|
Проверяет статус заявки |
|
|
Устанавливает статус заявки по id |
|
|
Устанавливает статус заявки по имени |
|
|
Загружает заявку повторно |
|
|
Возвращает ID автора заявки |
|
|
Возвращает ID исполнителя заявки |
|
|
Возвращает ID клиента заявки |
|
|
Возвращает ФИО автора заявки |
|
|
Возвращает ФИО исполнителя заявки |
|
|
Возвращает ФИО клиента заявки |
|
|
Возвращает ID роли автора заявки |
|
|
Возвращает ID роли исполнителя заявки |
|
| Возвращает ID роли клиента заявки | |
| Возвращает имя роли автора заявки | |
| Возвращает имя роли исполнителя заявки | |
| Возвращает имя роли клиента заявки | |
| Возвращает заголовок роли автора заявки | |
| Возвращает заголовок роли исполнителя заявки | |
| Возвращает заголовок роли клиента заявки | |
| Возвращает форматированное название роли автора заявки | |
| Возвращает форматированное название роли исполнителя заявки | |
| Возвращает форматированное название роли клиента заявки | |
| Возвращает id первой дополнительной персоны | |
| Возвращает id второй дополнительной персоны | |
| Возвращает id третьей дополнительной персоны | |
| Устанавливает id первой дополнительной персоны | |
| Устанавливает id второй дополнительной персоны | |
| Устанавливает id третьей дополнительной персоны | |
| Возвращает форматированную итоговую стоимость заказа | |
| Возвращает форматированную промежуточную стоимость заказа | |
| Возвращает форматированную стоимость заказа | |
|
Возвращает форматированную стоимость доставки |
|
|
Возвращает массив объектов ScriptTicketLine |
Методы ScriptTicketLine
| Метод | Описание |
| ScriptTicketLine.reload(): bool | Обновляет данные по строке заявки из бд |
| ScriptTicketLine.getId(): int|null | Возвращает id ScriptTicketLine |
| ScriptTicketLine.getTicketId(): int|null | Возвращает id заявки |
| ScriptTicketLine.getProductId(): int|null | Возвращает id продукта заявки |
| ScriptTicketLine.getProduct(): ScriptProduct|null | Возвращает все данные продукта заявки |
| ScriptTicketLine.getQuantity(): int|null | Возвращает количество продукта в заявке |
| ScriptTicketLine.getPrice(): float | Возвращает цену продукта в заявке |
| ScriptTicketLine.getPriceFormatted(): string | Возвращает форматированную цену продукта в заявке |
| Возвращает цену продукта в заявке в указанном форматировании | |
| ScriptTicketLine.getFee(): float | Возвращает стоимость заявки |
| ScriptTicketLine.getFeeFormatted(): string | Возвращает форматированную стоимость заявки |
| ScriptTicketLine.getSubtotal(): float | Возвращает итоговую стоимость заявки |
| ScriptTicketLine.getSubtotalFormatted(): string | Возвращает форматированную итоговую стоимость заявки |
| Возвращает форматированную дату создания заказа |
|
| Возвращает форматированную дату обновления заказа | |
| Возвращает форматированную дату удаления заказа | |
Методы ScriptProduct
| Метод | Описание |
| ScriptProduct.reload(): bool | Обновить данные по продукту из бд |
| ScriptProduct.getId(): int|null | Возвращает id продукта |
| ScriptProduct.getTitle(): string|null | Возвращает наименование продукта |
| ScriptProduct.getCode(): string|null | Возвращает код продукта |
| ScriptProduct.getPrice(): float|null | Возвращает цену продукта |
| ScriptProduct.getMainCategoryId(): int|null | Возвращает id категории продукта |
| ScriptProduct.getIsEnabled(): bool|null | Проверяет активен ли продукт |
| ScriptProduct.getIsAvailableInStock(): bool|null | Проверяет есть ли продукт в наличии |
| ScriptProduct.getUrl(): string|null | Возвращает url продукта |
| ScriptProduct.getThumbUrl(): string|null | Возвращает thumb url продукта |
| ScriptProduct.getPriceFormatted(): string|null | Возвращает форматированную цену продукта |
| Возвращает форматированную дату создания продукта |
|
| Возвращает форматированную дату обновления продукта | |
| Возвращает форматированную дату удаления продукта | |
Работа со статусами заявок
Методы ticketStatus
| Метод | Описание |
| ticketStatus.reload(): bool | Перезагружает статус в БД |
| ticketStatus.getId(): int | Возвращает id статуса |
| ticketStatus.getName(): string | Возвращает наименование статуса |
| ticketStatus.getType(): string|null | Возвращает тип статуса |
| ticketStatus.getOrderPos(): int | Возвращает значение статуса |
| ticketStatus.isSameStatusName($statusName): bool | Проверяет наименование статуса на сходство |
| Возвращает форматированную дату создания статуса | |
| Возвращает форматированную дату обновления статуса | |
| Возвращает форматированную дату удаления статуса | |
Методы ticketStatuses
| Метод | Описание |
| ticketStatuses.reload(): bool | Перезагружает все статусы из БД |
| ticketStatuses.getCollection(): Collection|null | Возвращает Laravel Collection |
| ticketStatuses.find(array|object|null $where, bool $isReturnCollection = false): ScriptTicketStatus|null | Возвращает статусы заявок |
| ticketStatuses.findById(string|int|null $id): ScriptTicketStatus|null | Возвращает статус по ID |
| ticketStatuses.findByName(string $name): ScriptTicketStatus|null | Возвращает статус по имени |
| ticketStatuses.findAllByNames(string|array|object|null $names, string $operator = '=', bool $isReturnCollection = false): Collection|null | Возвращает статусы по имени |
| ticketStatuses.findAllByTypes(string|array|object|null $types, string $operator = '=', bool $isReturnCollection = false): Collection|null | Возвращает статусы по типу статуса |
Работа с персонами
Методы bot
| Метод | Описание |
| bot.createPerson($data): int|null | Создает персону |
| bot.findPersons($where = [], $orderBy = [], int|null $limit = null, int|null $offset = null, bool $isLogErrorIfManyPersonsFound = false): array | Возвращает данные персон соответствующих атрибутам |
| bot.updatePersonById(int $personId, $data): bool |
Обновляет персону по id |
| bot.deletePersonById(int $personId): bool |
Удаляет персону по id |
| bot.getDefaultPersonRoleId(): int|null |
Возвращает id роли персоны по умолчанию |
Методы lead
| Метод | Описание |
| lead.getPersonId(): int|null | Возвращает id персоны |
| lead.setPersonId(int|null $personId): bool | Привязывает персону к лиду |
| lead.createPersonForCurrentLead($data): int|null |
Создает персону для лида |
Методы person
| Метод | Описание |
| person.update($data): bool |
Обновляет данные персоны |
| person.delete(): bool |
Удаляет персону |
| person.getAllData(): array |
Возвращает все поля персоны |
| person.setData(string $key, $value): self |
Устанавливает поле персоны по ключу В качестве ключа можно указать:
|
| person.getData(string $key) |
Возвращает значение данных персоны В качестве ключа можно указать:
|
| person.issetData(string $key): bool |
Проверяет наличие данных по персоне В качестве ключа можно указать:
|
| person.isDataExist(string $key): bool | |
| person.getLeads(bool $isFindInAllBusinessBots = false): array |
Возвращает лиды персоны |
| person.getId(): int|null |
Возвращает ID персоны |
|
Возвращает полное имя персоны |
|
| person.getRoleId(): int|null |
Возвращает ID роли персоны |
| person.getRoleName(): string |
Возвращает название роли персоны |
| person.getRoleTitle(): string |
Возвращает заголовок роли персоны |
| person.getRoleFormattedTitle(): string |
Возвращает форматированное название роли персоны. |
| person.getPhone(): string|null |
Возвращает номер телефона персоны |
| person.setPhone(string|null $phone): bool |
Устанавливает номер телефона персоны |
| person.getEmail(): string|null |
Возвращает почту персоны |
Работа с очередями исполнителей
Методы ticket
| Метод | Описание |
| ticket.assignToNextQueuePerson(int $queueMode = 1, int|null $personQueueId = null, string|null $personQueueTable = null, int|null $currentAssignAttempt = null, bool $isIncRejectsCount = true, bool $isMoveToEndIfRejectsExceed = true): bool | Назначает заявку следующему исполнителю |
| ticket.moveAssignedPersonToEndOfQueue(int $queueMode = 1, int|null $personQueueId = null, string|null $personQueueTable = null, bool $isResetRejectsCount = true): bool | Переносит исполнителя в конец очереди |
|
Назначает исполнителя заявки |
|
|
Назначает заявку следующему исполнителю и переносит его в конец очереди |
|
|
Возвращает количество отказов от заявок |
|
|
Устанавливает количество отказов от заявок |
|
|
Увеличивает количество отказов от заявок |
Методы person
| Метод | Описание |
| person.addToQueue(int|null $personQueueId = null, string|null $personQueueTable = null, int|null $ticketTypeId = null, bool $isActive = true, int $rejectsCount = 0): int|null | Добавляет персону в очередь |
| person.removeFromQueue(int|null $personQueueId = null, string|null $personQueueTable = null, int|null $ticketTypeId = null): bool | Удаляет персону из очереди |
| person.moveToEndOfQueue(int $queueMode = 1, int|null $personQueueId = null, string|null $personQueueTable = null, int|null $ticketTypeId = null, bool $isResetRejectsCount = true): bool | Перемещает персону в конец очереди |
| person.setIsActiveInQueue(bool $isActive = true): bool | Активирует/деактивирует персону в очереди |
Методы personQueue
| Метод | Описание |
| personQueue.getId(): int | Возвращает id очереди персон |
| personQueue.getCode(): string | Возвращает код очереди персон |
| personQueue.getIsEnabled(): bool | Проверяет активна ли очередь персон |
| personQueue.getName(): string | Возвращает наименование очереди персон |
| personQueue.isSameName($name): bool | Проверяет наименование очереди персон на сходство |
| personQueue.getCreatedAtFormatted(string $format = 'Y-m-d H:i:s', string|null $timeZone = null): string|null |
Возвращает форматированную дату создания очереди персон |
| personQueue.createdAtFormatted(string $format = 'Y-m-d H:i:s', string|null $timeZone = null): string|null |
|
| personQueue.getUpdatedAtFormatted(string $format = 'Y-m-d H:i:s', string|null $timeZone = null): string|null |
Возвращает форматированную дату обновления очереди персон |
| personQueue.updatedAtFormatted(string $format = 'Y-m-d H:i:s', string|null $timeZone = null): string|null |
Методы personQueues
Работа с интеграциями NLP
Методы bot
| Метод | Описание |
| bot.getIntegrationIdByCode(string|null $integrationCode): int|null |
Возвращает id интеграции бота по коду |
| bot.getEnabledIntegrationIdByCode(string|null $integrationCode): int|null | Возвращает id включенной интеграции бота по коду |
| bot.isEnabledIntegrationById(int|null $integrationId): bool |
Проверяет активность интеграции по id |
| bot.isEnabledIntegrationByCode(string|null $integrationCode): bool |
Проверяет активность интеграции по коду |
Методы lead
| Метод | Описание |
| lead.setActiveNlpIntegrationByCode(string|null $integrationCode): bool | Присваивает интеграцию лиду по коду |
| lead.setActiveNlpIntegrationById(int|null $nlpIntegrationId): bool | Присваивает интеграцию лиду по id |
| lead.hasActiveNlpIntegration(): bool | Проверяет активна ли интеграция |
| lead.getActiveNlpIntegrationId(int|null $nlpIntegrationId): int|null | Возвращает интеграцию по id |
| lead.getActiveNlpIntegrationCode(string|null $integrationCode): string|null | Возвращает интеграцию по коду |
| lead.getActiveOrFirstNlpIntegrationId(int|null $nlpIntegrationId): int|null | Возвращает активную или первую интеграцию по id |
| lead.getActiveOrFirstNlpIntegrationCode(string|null $integrationCode): string|null | Возвращает активную или первую интеграцию по коду |
Работа с интеграциями
Методы lead
| Метод | Описание |
| lead.getForwardEventTypeForFB(): string|null |
Возвращает тип события для ФБ |
Работа с кастомными таблицами
Методы table
| Метод | Описание |
| table.createItem(string $tableName, array|object $data): ScriptCustomTableItem | Создает запись в таблице |
| Ищет запись в таблице | |
|
table.count(string $tableName, array|object $where = []): int |
Подсчитывает количество записей |
| table.sum(string $tableName, string $column, array|object $where = []): int |
Подсчитывает сумму значений по полю |
| table.max(string $tableName, string $column, array|object $where = []): mixed|null |
Ищет максимальное значение по полю |
Методы item
За объект item принимаем запись кастомной таблицы полученную с помощью table.createItem или table.find.
| Метод | Описание |
| item.update(array|object $data): bool |
Обновляет записи в таблице |
| item.delete(): bool |
Удаляет записи из таблицы |
| item.getDateFormatted(string $fieldName, string $format = 'Y-m-d H:i:s', string|null $timeZone = null): string|null |
Возвращает форматированную дату по названию поля |
| item.getDateFormattedString(string|DateTimeInterface $date, string $toFormat = 'Y-m-d H:i:s', string|null $fromFormat = 'Y-m-d H:i:s', string|null $toTimeZone = null, string|null $fromTimeZone = null): string|null |
Возвращает форматированную дату из произвольной строки |
|
Перезагружает данные записи из БД |
Работа с блокировками
Работа с контакт-центром
Методы bot
| Метод | Описание |
| bot.canAutoForward(): bool |
Узнает доступно ли авто-назначение оператора в данном скрипте |
Методы lead
| Метод | Описание |
| lead.canAutoForward(): bool |
Узнает доступно ли авто-назначение оператора в данном скрипте |
| lead.getNextOperators(string $departmentCode = null, bool $isOnline = true, int|null $limit = 1, bool $useLocks = true): int|null |
Возвращает список следующих операторов |
| lead.assignDialogToNextOperator(string|null $departmentCode = null, bool $isOnline = true, bool $isForwardIfOperatorNotFound = true, bool $useLocks = true): int|null |
Назначает диалог на следующего оператора полученного с помощью getNextOperators |
| lead.assignDialogToOperator(int|null $operatorId, bool $isForwardIfOperatorNotFound = true, bool $useLocks = true): int|null |
Назначает диалог на указанного в методе оператора |
Работа с API
Методы bot
| Метод | Описание |
| bot.scheduleJob($jobParams = []): bool |
Планирует любую задачу |
| bot.randomStr(int $length = 16): string |
Генерирует случайную буквенно-цифровую строку |
| bot.newGuid(): string |
Генерирует случайный уникальный guid |
| bot.newOrderedGuid(): string |
Генерирует случайный уникальный guid упорядоченный по времени |
Методы lead
| Метод | Описание |
| lead.getLastRequest(): ScriptRequest|null |
Возвращает объект с параметрами последнего реквеста |
| lead.getLang(): string|null |
Возвращает язык установленный в бизнесе |
| lead.setLang(string|null $langCode): string|null |
Устанавливает язык в бизнесе |
| lead.isLangExist(string $langCode, bool|null $isEnabled = true): bool |
Проверяет существует ли язык |
Методы request
За объект request принимаем объект с параметрами последнего реквеста полученный с помощью lead.getLastRequest.
| Метод | Описание |
| request.json |
Доступ к json параметрам в виде javascript json-обьекта |
| request.asJson(): ScriptRequest|null | |
| request.array | Доступ к json параметрам в виде javascript json-обьекта |
| request.asArray(): array | |
| request.string | Входящие параметры в виде json обьекта |
| request.asString(): string |
Методы last_request
За объект last_request принимаем объект с параметрами последнего реквеста полученный с помощью lead.getLastRequest.
| Метод | Описание |
| last_request.json |
Доступ к последнему реквесту в виде javascript json-обьекта |
| last_request.asJson(): ScriptRequest|null | |
| last_request.array | Доступ к последнему реквесту в виде массива |
| last_request.asArray(): array | |
| last_request.string | Доступ к последнему реквесту в виде json обьекта |
| last_request.asString(): string |
Методы api
| Метод | Описание |
| api.callEndpoint( string $externalApiEndpointCode, string|null $uri = null, string|null $method = null, string|null $format = null, array|object|string|null $body = null, array|object|string|null $headers = [], array|object|string|null $requestOptions = [], array|object|string|null $httpClientConfig = [], string|null $proxyUrl = null ): array|string|null |
Вызывает внешнее API из чат-бота |
| api.request(string $method, string $uri, $requestOptions = [], $httpClientConfig = [], $body = null, $jsonBody = null, $headers = [], bool $isForceAddJsonHeaders = false): ResponseInterface|null|mixed |
Выполняет HTTP запрос, с помощью Guzzle |
| api.post(string $uri, $body = [], $requestOptions = [], $headers = [], $httpClientConfig = []): string|null |
Выполняет HTTP POST запрос, с помощью Guzzle |
| api.get(string $uri, $requestOptions = [], $headers = [], $httpClientConfig = []): string|null |
Выполняет HTTP GET запрос, с помощью Guzzle |
| api.getJson(string $uri, $jsonBody = [], $headers = [], $requestOptions = [], $httpClientConfig = []): array|null |
Выполняет HTTP POST запрос с jsonBody, с помощью Guzzle |
| api.postJson(string $uri, $jsonBody = [], $headers = [], $requestOptions = [], $httpClientConfig = []): array|null |
Выполняет HTTP GET запрос с jsonBody, с помощью Guzzle |
| api.getHttpConfig(): array |
Возвращает HTTP Config |
| api.setHttpConfig($config): self |
Устанавливает HTTP Config |
| api.getRequestOptions(): array |
Возвращает параметры HTTP запроса |
| api.setRequestOptions($options): self |
Устанавливает параметры HTTP запроса |
| api.getHeaders(): array |
Возвращает заголовки HTTP запроса |
| api.setHeaders($headers): self |
Устанавливает заголовки HTTP запроса |
| api.getProxyUrl(): string|null |
Возвращает Proxy Url HTTP запроса |
| api.setProxyUrl($proxyUrl): self |
Устанавливает Proxy Url HTTP запроса |
| api.getLastResponse(): mixed|ResponseInterface|null |
Возвращает последний ответ HTTP запроса |
| api.getLastResponseCode(): int |
Возвращает код последнего ответа HTTP запроса |
| api.getLastResponseContent(): string|null |
Возвращает содержимое последнего ответа HTTP запроса |
| api.getLastJsonResponse(): array|null |
Возвращает последний ответ HTTP запроса в формате JSON |
| api.enableExceptions(): self |
Включает исключения для HTTP запросов |
|
api.disableExceptions(): self |
Выключает исключения для HTTP запросов |
|
api.setTimeout(float $timeout): self |
Устанавливает время задержки для HTTP запросов |
|
api.getTimeout(): float |
Возвращает время задержки для HTTP запросов |
|
api.isExceptionThrown(): bool |
Проверяет существует ли исключение |
|
api.isConnectExceptionThrown(): bool |
Проверяет существует ли исключение подключения |
|
api.getLastResponseTime(): float |
Возвращает время последнего ответа HTTP запроса |
|
api.getLastErrorBody(bool $isAutoConvertToJson = true): string|array|null |
Возвращает содержимое ошибки последнего ответа HTTP запроса |
|
api.enableContinueCallEndpointOnJsError(): self |
Включает вызов эндпоинта при ошибке JS |
|
api.disableContinueCallEndpointOnJsError(): self |
Выключает вызов эндпоинта при ошибке JS |
|
api.getIsContinueCallEndpointOnJsError(): bool |
Возвращает режим вызова эндпоинта при ошибке JS |
Работа с файлами
Методы bot
| Метод | Описание |
|
bot.getIncomingMessage(bool $useOutputFilter = false): string |
Возвращает текст входящего сообщения или текст подписи к вложению |
| Возвращает id вебхука зарегистрированного в очереди Метабот | |
| Возвращает запись вебхука зарегистрированного в очереди Метабот | |
| Возвращает информацию о вебхуке | |
|
Возвращает payload входящего вебхука в виде массива |
|
| Возвращает payload c данными о последнем ответе мессенджера в ввиде массива | |
|
bot.getChannelData(string|null $key = null): array|null|mixed |
Возвращает настройки канала лида |
|
Принудительное отключение буффера исходящих сообщений |
|
|
Принудительное включение буффера исходящих сообщений |
|
|
Принудительное освобождение буффера исходящих сообщений |
|
|
bot.getAllAttachments(string|null $filesMimeExcludeFilter = 'image|video'): array |
Возвращает вложения всех видов |
| Возвращает все вложения, которые распознаны как файл | |
|
bot.getImages(string|null $mimeIncludeFilter = 'image'): array |
Возвращает все изображения, а также файлы, которые распознаны как изображение |
|
bot.getVideos(string|null $mimeIncludeFilter = 'video'): array |
Возвращает все видео, а также файлы, которые распознаны как видео |
|
bot.sendPayload(string|null $endpoint, array|object $payload): array|string|mixed |
Отправляет payload в мессенджер |
|
Отправляет текст в мессенджер |
|
|
Отправляет сообщение в мессенджер, сообщение может содержать текст, кнопки меню и вложения |
|
|
Отправляет кнопки с сообщением в мессенджер |
|
|
bot.getTelegramFileInfoById(string|null $fileId, bool $isShowOriginalInfo = false): array|null |
Возвращает информацию о файле в Telegram по его id |
|
Отправляет файл в телеграм и возвращает его id |
|
|
Редактирует кнопки меню уже отправленного в Telegram сообщения |
|
|
Возвращает ID последнего сообщения, отправленного в Telegram |
|
|
Устанавливает конфиг для доступа к CDN |
|
|
Возвращает текущий конфиг CDN |
|
|
Возвращает информацию о файле по URL |
|
|
Скачивает файл с URL и загружает в хранилище файлов Метабот для вашего бизнеса |
|
|
Скачивает файл с URL и загружает во временное хранилище файлов Метабот для вашего бизнеса |
|
|
Удаляет файл по URL из хранилища файлов Метабот для вашего бизнеса |
|
|
Удаляет файл по URL из временного хранилища файлов Метабот для вашего бизнеса |
|
|
bot.uploadFileToCdnAndGetNewUrl(string $fileUrl, array|object|null $cdnConfig = null): array |
Заливает файл на CDN и возвращает новую ссылку |
|
Удаляет файл из CDN |
Методы lead
| Метод | Описание |
| Возвращает обозначение текущего мессенджера канала | |
| Возвращает буквенное обозначение текущего мессенджера канала | |
| Возвращает идентификатор лида во внешней системе | |
| Возвращает дополнительный идентификатор лида во внешней системе |
Работа с GPT
Методы bot
| Метод | Описание |
| bot.run(array|object|null $jobParams = []): bool | Запускает скрипт в рамках текущего потока бота |
| bot.stop(): bool | Прерывает текущий скрипт |
| bot.throw(string $message = '', int $code = 0): bool | Создает искусственное падение скрипта |
| bot.disableRepeatMessageText(): bool | Отключает вывод сообщения для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.enableRepeatMessageText(): bool | Включает вывод сообщения для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.isEnabledRepeatMessageText(): bool | Проверяет включен или нет вывод сообщения для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.hideRepeatMessageButtons(): bool | Отключает вывод меню для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.showRepeatMessageButtons(): bool | Включает вывод меню для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.isShowRepeatMessageButtons(): bool | Проверяет включен или нет вывод меню для команды конструктора "Повтор" для текущего вебхука/задания |
| bot.getConversationQuestion(): OverridenQuestion|null | Возвращает текущее состояние беседы |
| bot.getCurrentScriptId(): int|null | Возвращает ID текущего скрипта |
| bot.getCurrentScriptCode(): string|null | Возвращает код текущего скрипта |
| bot.getCurrentCommandId(): int|null | Возвращает код текущей команды |
| bot.getConversationButtons(): array | Возвращает текущие кнопки |
| bot.getMenuItemsForScript(?string $scriptCode): array | Возвращает все пункты меню скрипта |
| bot.getMenuItemsForCurrentScript(): array | Возвращает все пункты меню текущего скрипта |
| bot.getButtonsForScript(?string $scriptCode, ?int $scriptId = null, bool $withRunScriptId = true): array | Возвращает все кнопки скрипта |
| bot.getButtonsForCurrentScript(bool $withRunScriptId = true): array | Возвращает все кнопки текущего скрипта |
|
bot.findButtonByIncomingMessage(array|object $buttons, ?string $overrideIncomingMessage = null, bool $isLogFoundButton = true): array|null |
Находит кнопку которую "нажимает пользователь" по входящему сообщению |
| bot.getScriptIdFromButtonsByIncomingMessage(array|object $buttons, ?string $overrideIncomingMessage = null, bool $isLogFoundButton = true): int|null | Возвращает id скрипта по кнопке которую "нажимает пользователь" |
| bot.getScriptCodeFromButtonsByIncomingMessage(array|object $buttons, ?string $overrideIncomingMessage = null, bool $isLogFoundButton = true): string|null |
Возвращает код скрипта по кнопке которую "нажимает пользователь" |
Методы api
| Метод | Описание |
| api.getLastErrorBody(bool $isAutoConvertToJson = true): string|array|null | Возвращает содержимое API ответа, если внешнее API вернуло код ошибки |
| api.enableContinueCallEndpointOnJsError(): bool | Игнорирует ошибку в JS Body |
| api.disableContinueCallEndpointOnJsError(): bool | Отключает игнорирование ошибки в JS Body |
| api.getIsContinueCallEndpointOnJsError(): bool | Проверяет вкл. или выключено игнорирование ошибки в JS Body перед запуском внешнего api |
| api.callApiOnlyByOkFlag(bool $value = true): bool | Выполняет обращение по api, только если JS валиден |
| api.onlyForOk(bool $value = true): bool | |
| api.isCallApiOnlyByOkFlag(): bool | Проверяет включен или нет флаг isCallApiOnlyByOkFlag |
| api.isOnlyForOk(): bool | |
| api.ok(bool $value = true): bool | Указывает что JS валиден, для того чтобы выполнился запуск внешнего api |
| api.isOk(): bool | Проверяет валиден ли JS |
Работа с отладкой
| Метод | Описание |
| bot.sysLogInfo($data, bool $isSendMessageToLead = false): bool | Добавляет в лог системы информацию |
| bot.sysLogError($data, bool $isSendMessageToLead = false): bool | Добавляет в лог системы информацию об ошибке |
| bot.sysLogInfoToAdmin($data): bool | Добавляет в лог системы информацию для админа |
| bot.sysLogErrorToAdmin($data): bool | Добавляет в лог системы информацию об ошибке для админа |
| bot.debug($data, bool $isStopBot = false): bool | Выводит информацию в мессенджер |
Нет комментариев