ℝ𝕖𝕒𝕕𝕪 𝕊𝕠𝕝𝕦𝕥𝕚𝕠𝕟
405 subscribers
28 photos
14 videos
52 links
Канал, где каждый найдет что-то новое для своих проектов!
Здесь мы делимся готовыми решениями и собираем самые лучшие "фишки" в разработке, которые помогут вам воплотить в жизнь любые технические идеи.
Кейсы ботов: https://fullbiz-dev.ru/kejsy
Download Telegram
🔤🔤🔤🔤» 🅰️ » 🏆 » 🅰️ »🔤🔤🔤🔤

Клиенты фантанируют хотелками, что собственно и толкает на поиск крутых решений 😃

Сложность:

Никакой) особенно, если знаете, что такое АPI-запрос)
Главное не забыть передать в АМО значение contact_id, потому что по нему будут обновляться данные в боте

USEcases:

Пользователь проходит хук в боте LeadTex (заявка), сразу создается контакт в АМО и на его основе создается сделка. При изменении статуса сделки, в боте пользователю прописываются теги и переменные.

Решение:

- Ну про подключение всех сервисов к Albato уже писать не буду 😎
- В 👉этом посте описано👈 подключение вебхука LeadTex в Albato;
- Еще нам нужно сделать подключение "HTTP Запрос/Исходящий webhook" по документации API (в данном случае метод attachTagToContact- который назначает тег контакту);
- Далее настраиваем обратный проброс из АМО в бота. Делаем это отдельной связкой, выставляем условия запуска связки (например при смене статуса на "Закрыто и реализовано");

⚠️🟢Напоминаем, что при интеграции с АМО, всегда используется сначала "Создание нового контакта", а потом "Создание сделки».
⚠️🟢Не забывайте про токен сервиса LeadTex, иначе не будет работать.

#альбато #амо #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.
Видео приложили.

👩‍💻 API WEEEK

⚠️⚠️Данный пример реализован в нашем боте 👉 @Quick_taskBOT

#апи #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 для перевода первого системного текста на тот язык, на котором общается пользователь;
- После даем пользователю выбор на какой язык нужно переводить;
- Ну и далее запрашиваем у пользователя текст для перевода.


👩‍💻 Как начать работать с API Yandex
👩‍💻 API Translate


⚠️⚠️Создавайте сервисный аккаунт, с ним проще передать API key. Если нужна будет помощь с получением API key, пишите в комменты 🤓

⚠️⚠️Данный пример реализован в нашем боте 👉 @dasha_translator_bot

#апи #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)


⚠️⚠️Данный пример реализован в нашем боте 👉 @dasha_translator_bot

#апи #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 дальнейшие блоки просто для красоты интерфейса 🥹

👩‍💻 API Telegram

👩‍💻 Выборка юзера из ссылки
var ret = getContactVariable("link_chat").replace('https://t.me/','');
setContactVariable("username_chat", ret)


👩‍💻 Выборка юзера из @/юзернейма
var ret = getContactVariable("link_chat").replace('@','');
setContactVariable("username_chat", ret)


⚠️🔥Не забудьте назначит локальную переменную LeadTex, прежде чем присваивать ей значение переменной JS.

🎞 Добавление канала и проверка подписки через бота на Leadtex

#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-блок, все нужные значения запишутся в переменные.

👩‍💻 JSON formatter

⚠️🟢Если в ответе вместо data, видите result, то в http-блоке в соотношении переменных, в левом поле между result и значением, НОЛЬ не ставится, а только одна точка.

⚠️🟢Если в http-блоке в соотношении переменных, в левом поле прописали data.0.[значение], а данные в переменную не записываются, то попробуйте убрать одну точку и ноль или заключить ноль в [ ] (квадратные скобки).

🎞 Записываем ответ JSON в переменные в блоке HTTP-запрос на LeadTex
❤️ Как записать ответ JSON в переменные на платформе #LeadTex

#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.

👩‍💻 API LeadTex (списки)

⚠️🟢В блоке "Чтение записей из списка" в переменную ВСЕГДА записывается значение первого значения (колонки) в списке.

#leadtex #api
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32👍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 - редактируем отправленное сообщение.

👩‍💻 API LeadTex (списки)
👩‍💻 API Telegram

⚠️🟢Пока нет метода в API Telegram, для определения количества и id топиков чата. Поэтому в нашем случае создаем свой топик.

🎞 Отправляем сообщение в топик и меняем его через бота на LeadTex

#leadtex #api #telegram_api
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥2
🔤🔤🔤🔤+ 🧑‍💻
Для тех кому нужно генерить уникальный код для платежных систем на платформе LeadTex , подойдет данный код:

USEcases:

Для платежных систем (на примере 💵) необходимо указывать ключ идемпотентности (универсальный уникальный идентификатор). Данный код сгенерирует код и запишет его в локальную переменную.

Решение:

- добавляем блок http-блок или интерпретатор JS;
- для http-блока в поле url вводим любую ссылку на ресурс;
- для http-блока включаем обработку ответа с помощью JS и вставляем код.

🧑‍💻 Код 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 локальной переменной пользователя бота.

⚠️⚠️Больше полезной информации можете узнать через нашего бота на базе ИИ 👉 @dasha_smartassistant_bot

#leadtex #js #javascript
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍111
This media is not supported in your browser
VIEW IN TELEGRAM
🔤🔤🔤🔤
Своя картинка в список через бот

Сложность:

Стандартным блоком пока нельзя добавить картинку в список, если эта картинка не была прислана пользователем.
Ну и как всегда знание API 👍

USEcasec:

На нашем примере - это добавление обложки для записи в списке.
Пользователь вводит данные. Бот сохраняет эти данные в список и в поле обложки подставляет свою картинку.

Решение:

- создаем список сбора данных, одно из полей делаем с типом картинка, для обложки;
- готовим сценарий по сбору необходимых данных;
- в конце добавляем http-блок и прописываем запрос на добавление записи в список;
- поле "картинка" прописываем массивом, в параметр url вставляем ссылку на картинку из общего доступа.

👩‍💻 API LeadTex (списки)

🧑‍💻 Тело запроса в формате json

{
"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:

👥 Пользователь оформляет подписку в боте на определенный срок и делает первый платеж;
🤖 Бот сохраняет данные о платеже в таблицу;
🅰️ Albato получает данные после успешного платежа и создает метку об успешной оплате и переменную с id метода оплаты;
🤖 Бот отправляет рассылку пользователю об успешной оплате и инициирует запуск таймера;
👥 Пользователь получает рассылку и после завершения таймера его данные отправляются в Albato;
🅰️ Albato ловит входящий хук и запускает процесс списания средств у пользователя.

Решение:

Решение описано в видео 👇

👩‍💻 API LeadTex
👩‍💻 API ЮKassa (создание платежа)
👩‍💻 API ЮKassa (создание автоплатежа)
👩‍💻 JSON formatter
👩‍💻 Кодирование Base64 (для заголовка)

📌 Как настроить хук в магазине ЮKassa
📌 Как получить секретный ключ в ЮKassa

⚠️🟢Обязательно нужно предусмотреть логику отмены подписки, в нашем случае автоплатеж срабатывает, если у пользователя есть тег "Подписка".

⚠️🟢Не советуем использовать обычные и простые генераторы ключа идемпотентности, так как значение должно быть уникальным всегда.

🎞 Рекуррентные платежи в боте LeadTex через Юkassa
❤️ Рекуррентные платежи в боте LeadTex через Юkassa

⚽️⚽️⚽️ Актуальные запросы для создания платежей тут


#leadtex #ykassa #юkassa #api #платежи
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥4
Хороший сервис для разработчика чат-ботов
Postman
Теперь не обязательно ждать ответа от блока и переводить все в форматоре 😏 Пользуетесь?
Final Results
28%
Да, пользуюсь
2%
Нет, мне не нужен
70%
Нет, нужен обзор
🔥2
По результатам недавнего опроса стало ясно, что многие из вас интересуются работой инструмента для тестирования API запросов – 🧑‍💻🧑‍💻🧑‍💻
Совсем скоро мы подготовим обзор в котором рассмотрим основы создания простых запросов к Telegram Bot API, чтобы вы смогли автоматизировать различные задачи ваших ботов.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
🔤🔤🔤🔤
UTM-метки в ссылках на бота LeadTex

Сложность:

Ютки можно подставить только в ссылки LeadTex из раздела Мессенджеры (каналы)

USEcasec:

🤖 Из раздела Мессенджеры (каналы) на странице сценария бота берем ссылку, подставляем метки и отправляем пользователям;
👥 Пользователи переходят по ссылке и попадают в необходимый сценарий, а в разделе Списки » Контакты в графе UTM отобразятся те метки, которые были установлены в ссылку.

Решение:

- из раздела Мессенджеры (каналы) на странице сценария бота берем ссылку или на той же странице формируем дополнительную ссылку на сценарий;
- в конце ссылки ставим "?" и пишем "utm_source=", а после равно подставляем свое значение,которое хотите передать;
- если более одной метки, то разделять их надо "&"

🔗 https://app.leadteh.ru/w/bFrghx?utm_source=значениеметки&utm_medium=telegram

👩‍💻 UTM-метки в LeadTex
📌 Таблица генерации ссылок с UTM-метками (доступна для чтения и копирования)

⚠️🟢Можно использовать сокращение ссылок или экранирование в формате HTML для маскировки ссылок с метками.
  <a href="http://www.example.com/">ссылка в тексте</a>


⚠️🟢После UTM_ можно использовать любое слово, которое будет являться меткой, но обязательно на латинице.

#leadtex #utm
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Разбираем запросы 🌐Telegram API и ™️Leadtex API в 🧑‍💻Postman

В данном посте рассмотрим пару частых запросов:

Leadtex:

https://app.leadteh.ru/api/v1/<method>?api_token=<Ваш API token> - запрос;
getListItems - получить элементы списка;
addListItem - добавить элемент в список.

Через Postman получим элементы списка в боте. Потом добавим элемент в список. Также при добавлении вызовем ошибку, чтобы посмотреть как выглядит ответ. И как выглядит успешный Response 200

Telegram:

https://api.telegram.org/bot<ваш_токен>/<method>? - запрос;
getMe - проверить вашего бота;
sendMessage - отправить сообщение.

Через сервис получим данные о боте. Отправим обычное сообщение и сообщение с клавиатурой. Вызовем ошибку запроса и рассмотрим ответ с описанием ошибки.

👩‍💻 API LeadTex
👩‍💻 API Telegram
🔗 Postman

👇 Не забывайте подписаться и делиться своим опытом. С нетерпением ждем ваших отзывов и историй использования 🧑‍💻🧑‍💻🧑‍💻

#leadtex #api #telegram #postman
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍51🔥1
Дорогие друзья! 🙃✍️
Подготовили небольшую табличку, в которую заносим ссылки на всепосты и видео каналов Телеграм и YouTube.
3
This media is not supported in your browser
VIEW IN TELEGRAM
🔤🔤🔤🔤
Дробим текст по количеству символов через JS в LeadTex

Сложность:

Lite

USEcasec:

Можно использовать для валидации кодов, номера карт и телефонов.

Решение:

- добавляем блок Интерпретатор JS;
- вставляем код в блок.

🧑‍💻 Код из блока:
function addSpaces(text) {
return text.replace(/(.{5})/g, '$1 ');
}

var originalText = getContactVariable("zapis");
var spacedText = addSpaces(originalText)
setContactVariable("zapis", spacedText)


⚠️🔥Не забудьте назначит локальную переменную LeadTex, прежде чем присваивать ей значение переменной JS.

⚠️⚠️ Можно менять значение 5 в выражении text.replace под конкретные задачи.

#leadtex #js
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3
❗️ Таблица с постами и видео канала пока работает не так как нужно. Занимаемся этим вопросом.
Please open Telegram to view this post
VIEW IN TELEGRAM
4🔥1