Фокусы чат-БОТов 🙌
263 subscribers
30 photos
25 videos
99 links
Чат-боты Leadteh.
Как сделать. Сложные моменты. Подсказки. Секреты.
Download Telegram
Запуск Web App по кнопке.
В reply_markup добавить параметр
"web_app": {"url":"ссылка на сайт приложения"}
#webapp #reply_markup #http

https://youtu.be/JIFSP5TB50k?t=179
👍2
Инлайн клавиатура - кнопки. Образец кода для reply_markup кнопок 2х2

{
"inline_keyboard":[
[
{
"callback_data":"a00",
"text":"{{$b00}}"
},
{
"callback_data":"a01",
"text":"{{$b01}}"
}
],
[
{
"callback_data":"a10",
"text":"{{$b10}}"
},
{
"callback_data":"a11",
"text":"{{$b11}}"
}
]
]
}

#inline_keyboard #reply_markup #клавиатура #инлайн #api #кнопки
1🔥1
Media is too big
VIEW IN TELEGRAM
💡 🖼 Упрощение сценария отправки разного числа картинок одной группой

ℹ️ Код скрипта

Обновлено 05.08: Добавлено форматирование текста и удалено лишнее поле из списка
Forwarded from Лайфхаки LEADTEX (Владимир Митряев)
Трюки Javascript

Поиск подстроки

Обычно
функцию indexOf() Мы используем так:

var str = "строка";
if(str.indexOf("ока") != -1)
sendMessage("найдено!");

А можно вот так:

var str = "строка";
if(~str.indexOf("ока"))
sendMessage("найдено!");

Строку ~str.indexOf() можно читать как: если найдено.

#trick #javascript
2
В Авторассылке в сценарии нельзя автоматически использовать блок HTTP-запрос из-за ограничений платформы. Он может быть использован в сценарии авторассылки только после блока, в котором пользователь нажимает кнопку или отправляет текст.

#авторассылки #http #ограничение #запрет
Forwarded from Максим Носко
Media is too big
VIEW IN TELEGRAM
Ведётся разработка сервиса  "👮‍♀Привратник" для администраторов частных групп Телеграм.

Частная группа Телеграм  с одобрением заявки на вступление. Админ обычно подтверждает ее вручную. Сервис для фильтрации присоединения  ботов к группе.

1⃣ Подача заявки в группу.
2⃣ Стартует бот. Уведомляет о тесте и задаёт вопрос.
3⃣ Анализирует ответ. Ответ верный - одобряет заявку. Иначе, нет.
👍21🔥1
Forwarded from Максим Носко
В планах:

1⃣ Администрирование групп без обязательной подачи заявки на вступление.
Для нового члена блокируется возможность отправки сообщений в группу до прохождения теста. Может только читать. Прошел тест успешно, разблокируется возможность писать в группу.

2⃣ Админская часть сервиса:
- добавить свою группу в сервис,
- указать свой вопрос теста, ответ, текст реакции бота на правильный и неправильный ответ.

3⃣ Подключение своих ботов для проведения тестов на вступление в группу.
- Сервис запускает вашего бота по событию заявки вступления в группу.
- в конце сценария своего бота вызываете через API метод: Одобрить заявку, Отклонить заявку.
Ваш сценарий может быть любым, например прием оплаты за вступление в группу.
👍21🔥1
Как сделать динамические сообщения.
Динамическое - когда сообщение выводится постепенно построчно с задержкой перед каждой строкой.
#динамическое #http

https://youtu.be/XD5G6TZPZpc?si=CNgzmMlw348vz1cy&t=5
Задержка 1 секунда или менее через #javascript блоком #http
#задержка

https://youtu.be/XD5G6TZPZpc?si=xXT-Vwowy0uv0r_g&t=373
Media is too big
VIEW IN TELEGRAM
💡 Создание альтернативного списка через переменные

ℹ️ Код скрипта
👍1
🗑 Быстрое удаление всех своих переменных. Два варианта: с API и без

ℹ️ Код скрипта
👍1
Как вернуться в любой блок сценария:
1. после перехода в другой сценарий,
2. по рассылке при остановке на середине сценария

Мой код:

Установка id-блока, куда вернуться:
{{setSumVariablesIntoVariable("block_id", 15938106, 0)}}

Код JavaScript для возврата в блок:
var id = getContactVariable("block_id"); goToBlock(id)

#рассылка #вернутьсявблок #block_id #айдиблока
This media is not supported in your browser
VIEW IN TELEGRAM
🔙 Возвращение пользователя в блок, в котором он был до рассылки

ℹ️ Функции из видео: {{setSumVariablesIntoVariable("блок", 12345678, 0)}}

var id = getContactVariable("блок")
goToBlock(id)
👍2👏2
JavaScript. Строковые функции. Методы работы со строками.
#javascript #строка #функция #метод
Forwarded from Лайфхаки LEADTEX (Владимир Митряев)
Шпаргалка по String функциям

"Leadtex".charAt(4) // "t"
"Leadtex".charCodeAt(0) // 76
"Leadtex".concat(".com") // "Leadtex.com"
"Leadtex".indexOf("e") // 1
"Leadtex".lastIndexOf("e") // 5
"Leadtex".length // 7
//"Leadtex".localeCompare()
"Leadtex".match(/[ae]/g) // ["e","a","e"]
"Leadtex".replace("tex","er")// "Leader"
"Leadtex".search("t") // 4
"Leadtex".slice(0,4) // "Lead"
"Leadtex".split("") // ['L','e','a','d','t','e','x']
"Leadtex".substr(2,2) // "ad"
"Leadtex".substring(2,4) // "ad"
//"Leadtex".toLocaleLowerCase()
//"Leadtex".toLocaleUpperCase()
"Leadtex".toLowerCase() // leadtex
"Leadtex".toUpperCase() // LEADTEX
" Leadtex ".trim() // "Leadtex"
" Leadtex ".trimLeft() // "Leadtex "
" Leadtex ".trimRight() // " Leadtex"
👍2