Очередная интересная задачка от наших партнеров 🙈
Запрос:
при изменении ячейки, а в нашем случае это чек-бокс, менять статус сделки в АМОcrm.
Сложность:
в том, что любое изменение в сделке можно провести только при наличии ID сделки. Да оно есть в таблице, но находится в другом столбце
USEcases:
при выборе статуса в таблице (нажатием на чек), сделка перемещается на этот статус, только в АМО. И так от статуса к статусу, по всему пути сделки.
Решение:
- Ну про подключение всех сервисов к Albato уже писать не буду 😎
- Триггером назначим как раз Google Sheets с действием "Следить за обновлениями на листе"
- Далее необходимо получить ID сделки, который находится в другом столбце с помощью действия "Найти строку по номеру", поскольку триггер нам такой информации не дает.
- Далее просто начинаем выставлять условия, поскольку статусов много и перемещать сделку необходимо в разные этапы АМО.
- При настройке действия "Обновление сделки по ID" в поле ID выбираем значение из действия "Найти строку по номеру" и выбираем необходимый столбец
- Инструмент "Роутер" позволяет обработать разные условия и переводить на соответствующий этап связки при их выполнении.
#альбато #амо #sheets
Please open Telegram to view this post
VIEW IN TELEGRAM
Формируем пригласительную ссылку с UTM-меткой в боте LeadTex
Запрос:
обработать переменную и удалить пробелы из нее, так как в ЮТКУ попадает название команды, в которую приглашают для совместного использования бота, то название могут писать совершенно разными способами.
Сложность:
в том что пользователи могут писать названия с пробелами, а URL не принимает пробелы и разрывает ссылку на месте пробела.
USEcases:
в момент создания команды при заполнении названии в боте, пользователь может указать любое название и с пробелами и на латинице, бот понимает что название нужно вставить в ссылку и обработать эту переменную. Выполняется функция JS, которая преобразует текст и заменяет пробелы на "_", формируя ссылку. При переходе по ссылке бот считывает UTM и преобразует переменную в обратном порядке, меняя "_" на проблы.
Решение:
- Добавляем блок HTTP-запрос в сценарий бота LeadTex после необходимого блока при создании пригласительной ссылки (у нас это блок "Название команды")
- Вставляем JS-код (в конце поста вставлю сам код)
- В коде указываем необходимые переменные которые нужно назначать или подставлять
- Добавляем финальный блок с выводом ссылки и добавляем в текст сообщения статичную часть ссылки по примеру https://ap.leadteсh.ru/w/dTDc?utm_team={{$team}}
где переменная локальная содержит измененное название и выглядит это так: https://ap.leadteсh.ru/w/dTDc?utm_team=тук_так
- Добавляем блок HTTP-запрос в сценарий бота LeadTex после необходимого блока при переходе по пригласительной ссылки для определения переменной и конвертации ее в начальный вид
var team = getContactVariable("nameteam");
team = team.replace(/\s/gm, '_');
setContactVariable("team", team)var team = getContactVariable("team");
team = team.replace(/_/gm, ' ');
setContactVariable("Название команды", team)#leadtex
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Клиенты фантанируют хотелками, что собственно и толкает на поиск крутых решений 😃
Сложность:
Никакой) особенно, если знаете, что такое АPI-запрос)
Главное не забыть передать в АМО значение
contact_id, потому что по нему будут обновляться данные в ботеUSEcases:
Пользователь проходит хук в боте LeadTex (заявка), сразу создается контакт в АМО и на его основе создается сделка. При изменении статуса сделки, в боте пользователю прописываются теги и переменные.
Решение:
- Ну про подключение всех сервисов к Albato уже писать не буду 😎
- В 👉этом посте описано👈 подключение вебхука LeadTex в Albato;
- Еще нам нужно сделать подключение "HTTP Запрос/Исходящий webhook" по документации API (в данном случае метод
attachTagToContact- который назначает тег контакту);- Далее настраиваем обратный проброс из АМО в бота. Делаем это отдельной связкой, выставляем условия запуска связки (например при смене статуса на "Закрыто и реализовано");
#альбато #амо #leadtex
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🔥1
Media is too big
VIEW IN TELEGRAM
Решили облегчить работу с задачником в боте.
Не так давно мы перенесли работу с задачами в WEEEK
Сложность:
Сначала надо получить информацию о проекте. Все id проекта (колонки, доски)
USEcases:
Поставлена задача в боте, она дублируется в задачнике. В нужном проекте, в нужном этапе и нужному сотруднику.
Решение:
Инструкция по настройки интеграции в документации API.
Видео приложили.
#апи #leadtex #weeek
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2🔥1
Media is too big
VIEW IN TELEGRAM
Решили сделать своего переводчика 🧐
Сложность:
Все API Yandex можно получить только через Yandex Cloud.
И еще в том, что мы решили сделать его многоязычным.
USEcases:
Кейс тут понятный)) отправляем текст в бота, получаем перевод на выбранный язык.
Решение:
- Ну конечно первое, что нужно сделать - зарегистрировать аккаунт в YC;
- Далее регистрируем сервисный аккаунт в пространстве;
- В LeadTex первым делом после старта получаем язык пользователя и записываем в переменную;
- Добавляем в глобальные переменные системные текста;
- Далее делаем запрос к YT для перевода первого системного текста на тот язык, на котором общается пользователь;
- После даем пользователю выбор на какой язык нужно переводить;
- Ну и далее запрашиваем у пользователя текст для перевода.
#апи #leadtex #yandex #translate
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Обработка абзацев в переводчике 🧐
Сложность:
Бот не принимает для перевода текста с абзацами.
USEcases:
Текст для перевода отправляем боту. Бот принимает текст и записывает в переменную. Далее JS обрабатывает полученный текст: удаляет переносы на 1 строку. Обработанный текст отправляется по запросу в Яндекс.Транслейтер. ЯТ возвращается переведенный текст, а затем бот обрабатывает по новой через JS, но теперь возвращает абзацы на места.
Решение:
Интеграцию LeadTex и Переводчика от Яндекс по API описывали ранее, в этом посте.
Теперь надо исправить несколько моментов, для удобного использования.
С помощью JS.
var text4 = getContactVariable("text4").replace(/\n/g, "$");
// Ваш текст и сразу меняем перенос на $
setContactVariable("text4", text4)var text4 = getContactVariable("text4").replace(/\$/g, "\n");
// Возвращаем переведенный текст и заменяем символ $ на абзац
setContactVariable("text4", text4)#апи #leadtex #yandex #translate
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3👍2
🚀 Мы всегда стремимся улучшать наши продукты и делать их еще более удобными для вас.
👀 Если вы хотите видеть новые интеграции или функциональные возможности, не стесняйтесь сообщать нам!
👇 Просто оставьте комментарий, и мы постараемся воплотить ваши идеи в жизнь. Новые задачи мотивируют нас 💡
👇 Просто оставьте комментарий, и мы постараемся воплотить ваши идеи в жизнь. Новые задачи мотивируют нас 💡
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
This media is not supported in your browser
VIEW IN TELEGRAM
Проверяем подписку на любой канал
Сложность:
Стандартным способом можно проверить тольно определенный канал, указанный в блоке "Условие".
USEcases
Проверять подписку на канал/группу по присланной ссылки.
Так же можно выбирать из списка канал и проверить подписку на него.
Решение
Добавляем канал:
- про текстовые блоки писать не буду, на видео они видны и не несут большой функциональной нагрузки;
- добавляем блок "Переключатель" в котором настраиваем проверку присланного сообщения, то была ссылка или юзер чата;
- добавляем http-блок и обрабатываем ответ с помощью JS (скрипты в конце поста) для получения "голого" юзернейма;
- добавляем http-блок для формирования запроса к Telegram, для получения данных о канале/группе;
- текстовый блок для вывода полученной информации;
- добавляем http-блок для формирования запроса к Telegram, для проверки статуса администратора нашего бота в том или ином канале/группе;
- текстовый блок с результатом проверки;
Проверяем подписку:
- добавляем http-блок для формирования запроса к Telegram, для получения статуса пользователя;
- ну и завершаем смысловую нагрузку любимым блоком "Условие".
PS дальнейшие блоки просто для красоты интерфейса 🥹
var ret = getContactVariable("link_chat").replace('https://t.me/','');
setContactVariable("username_chat", ret)var ret = getContactVariable("link_chat").replace('@','');
setContactVariable("username_chat", ret)#leadtex
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Записываем ответ Json в переменные
Сложность:
Умение работать с API. И правильно читать ответ.
USEcases:
Необходимо получить значения списка и записать их в разные переменные, для дальнейшего использования в боте.
Решение:
- строим необходимую логику и в http-блоке включаем тумблер "Выводить тело ответа в чат";
- удаляем или просто не делаем связь со следующим блоком;
- переходим в бота и двигаемся по логике до блока с запросом, чтобы получить ответ в чате с ботом;
- копируем полученный ответ и переходим на сервис JSON formatter;
- в левое поле вставляем скопированный ответ, автоматом в правом поле появляется структурированный ответ, который содержит все данные из запроса;
- переключаем режим редактора на "Дерево";
- выбираем необходимый элемент и выделяем его одним нажатием кнопкой мыши;
- над редактором, в "хлебных крошках" (путь к элементу) копируем все что справа от data (включительно);
- переходим на LeadTex и в http-блоке, из которого получали ответ, выключаем тумблер "Выводить тело ответа в чат" и включаем тумблер "Записать ответ json в переменные";
- по кнопке добавляем столько полей, сколько значений необходимо записать в переменные;
- вставляем, скопированное из форматтера, в левое поле и заменяем символы ▶️ на точки;
- в правое поле прописываем ту переменную, в которую надо записать данное значение;
- возвращаем или добавляем связи http-блока со следующим блоком и при повторном прохождении через http-блок, все нужные значения запишутся в переменные.
#leadtex #api
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Редактируем запись списка из бота по API
Сложность:
Умение работать с API. И правильно записать ответы в переменную
USEcases:
Очень много вопросов, как поменять запись нестандартными способами или как переписать значение списка в локальные переменные.
Кейс прост: записываем любые данные и бот сохраняет их в список. Но бывает момент, когда запись нужно изменить прямо из бота и в этом поможет API.
Решение:
- добавляем запись в список стандартным блоком "Добавление записи в список";
- чтение записей организовываем также стандартным блоком "Чтение записей из списка" и обязательно включаем запись ответа в переменную;
- добавляем http-блок с запросом к спискам LeadTex и ответ записываем в переменные, как это сделать можно посмотреть в этом посте "Записываем ответ Json в переменные";
- добавляем блок "Цепочка сообщений" и в нем выводим переменные, в которые записали каждое значение элемента списка;
- далее добавляем необходимую логику для редактирования, в нашем примере Название и Описание;
- еще не маловажно добавить блок для получения ответа от пользователя и также ответ записываем в переменную;
- и финалим: добавляем блок http-блок с запросом на изменение записи в списке LeadTex.
#leadtex #api
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤2👍2
Media is too big
VIEW IN TELEGRAM
Сообщение в тему чата и его изменение через бот (создание темы через бот)
Сложность:
Умение работать с API. И правильно записать ответы в переменную.
Определить наличие включенных тем в чате.
Также обязательно необходимо сохранять все id, а именно чата и сообщения.
Бот не записывает значение true в переменную из json.
USEcases:
Отправляем сообщение в чат, в созданный топик с помощью бота.
Бот сохраняет id чата и сообщения в список.
При необходимости изменяем отправленное сообщение в чате через бота, который получает данные для запроса из списка.
Решение:
Проверка чата описана тут "Проверяем подписку на любой канал".
Чтобы вписать информацию о наличии топиков в чате, необходимо использовать JS, ниже он представлен.
В случае, если в чате не включены темы, сообщение будет отправляться автоматически в общую ленту. А если темы включены, то бот создаст свой топик и будет отправлять сообщения в него.
Остальные решения описаны в видео, Все вопросы можете оставлять в комментариях 🤓
⏱ Time code
2:26 - проверяем наличия включенных тем;
3:06 - проверяем статус бота и права бота на возможность создавать темы;
3:20 - создаем топик в боте, если темы включены;
3:53 - проверяем наличие записи в списке о созданной теме перед отправкой сообщения;
4:08 - отправляем сообщение в чат, если запись о созданной теме не найдена;
4:15 - отправляем сообщение в тему чата, если запись о созданной теме найдена;
4:33 - записываем данные о сообщении в список (id сообщения и чата) после;
5:05 - получаем данные о сообщении из списка, для изменения отправленного сообщения;
5:22 - редактируем отправленное сообщение.
#leadtex #api #telegram_api
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
Для тех кому нужно генерить уникальный код для платежных систем на платформе LeadTex , подойдет данный код:
USEcases:
Для платежных систем (на примере
Решение:
- добавляем блок http-блок или интерпретатор JS;
- для http-блока в поле url вводим любую ссылку на ресурс;
- для http-блока включаем обработку ответа с помощью JS и вставляем код.
function generateUUID() {
return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
var r = Math.random() * 16 | 0, v = c == 'x' ? r : (r & 0x3 | 0x8);
return v.toString(16);
});
}
var key = generateUUID();
setContactVariable("Idempotence-Key", key)setContactVariable - это внутренняя функция LeadTex, предназначенная для присвоение переменной js локальной переменной пользователя бота.#leadtex #js #javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1 1 1
This media is not supported in your browser
VIEW IN TELEGRAM
Своя картинка в список через бот
Сложность:
Стандартным блоком пока нельзя добавить картинку в список, если эта картинка не была прислана пользователем.
Ну и как всегда знание API 👍
USEcasec:
На нашем примере - это добавление обложки для записи в списке.
Пользователь вводит данные. Бот сохраняет эти данные в список и в поле обложки подставляет свою картинку.
Решение:
- создаем список сбора данных, одно из полей делаем с типом картинка, для обложки;
- готовим сценарий по сбору необходимых данных;
- в конце добавляем http-блок и прописываем запрос на добавление записи в список;
- поле "картинка" прописываем массивом, в параметр url вставляем ссылку на картинку из общего доступа.
{
"data": {
"imya": "{{$Имя}}",
"tekst": "{{$Текст}}",
"oblozka": {
"type": "image",
"mime_type": null,
"createdat": null,
"name": "oblozka_zapisi.png",
"size": 0,
"storage": "url",
"caption": null,
"meta": {
"width": null,
"height": null,
"duration": null,
"codec": null
},
"url": "https://utikadmd.ru/wp-content/uploads/2023/01/1-1200x849.png"
}
}
}
name можно прописать любое название, с расширением png.Обновленное видео https://t.me/Ready_solution/114
#leadtex #api
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
Media is too big
VIEW IN TELEGRAM
Рекуррентные платежи в боте LeadTex через Юkassa
Сложность:
Нельзя получить входящий хук в LeadTex. Так же есть сложности с запуском повторного платежа после таймера.
Ну надо быть максимально аккуратным, все таки это
Ну и как всегда знание API 👍
USEcasec:
Решение:
Решение описано в видео
#leadtex #ykassa #юkassa #api #платежи
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥4
Хороший сервис для разработчика чат-ботов
Postman
Теперь не обязательно ждать ответа от блока и переводить все в форматоре 😏 Пользуетесь?
Postman
Теперь не обязательно ждать ответа от блока и переводить все в форматоре 😏 Пользуетесь?
Final Results
28%
Да, пользуюсь
2%
Нет, мне не нужен
70%
Нет, нужен обзор
🔥2
По результатам недавнего опроса стало ясно, что многие из вас интересуются работой инструмента для тестирования API запросов – 🧑💻 🧑💻 🧑💻
Совсем скоро мы подготовим обзор в котором рассмотрим основы создания простых запросов к Telegram Bot API, чтобы вы смогли автоматизировать различные задачи ваших ботов.
Совсем скоро мы подготовим обзор в котором рассмотрим основы создания простых запросов к Telegram Bot API, чтобы вы смогли автоматизировать различные задачи ваших ботов.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
UTM-метки в ссылках на бота LeadTex
Сложность:
Ютки можно подставить только в ссылки LeadTex из раздела Мессенджеры (каналы)
USEcasec:
Решение:
- из раздела Мессенджеры (каналы) на странице сценария бота берем ссылку или на той же странице формируем дополнительную ссылку на сценарий;
- в конце ссылки ставим "?" и пишем "utm_source=", а после равно подставляем свое значение,которое хотите передать;
- если более одной метки, то разделять их надо "&"
🔗 https://app.leadteh.ru/w/bFrghx?utm_source=значениеметки&utm_medium=telegram
<a href="http://www.example.com/">ссылка в тексте</a>
UTM_ можно использовать любое слово, которое будет являться меткой, но обязательно на латинице.#leadtex #utm
Please open Telegram to view this post
VIEW IN TELEGRAM
help.leadteh.ru
UTM-метки - База знаний конструктора LEADTEX
Как отслеживать UTM метки (ютм метки) в боте
👍7