- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Не совсем понимаю механизм подвязывания пользователя с сайта к вайберу. или я многого хочу?
Есть пользователи хочу уведомления слать им с их разрешения на телеграм или вайбер. Как это сделать?
со скриптом разобрался дейсвительно. без всяких сертификатов работает.
всем спасибо
Miracle, механизм следующий.
- создать бота https://youtu.be/eQrTCHW2UqY
- пользователь должен запустить бота (кнопка старт) или что-то ему написать
- таким образом вы можете получить ID пользователя в телеграм и сможете ему писать от имени этого же бота.
Приведу примеры с библиотекой выше.
require_once "vendor/autoload.php";
define('TELEGRAM_TOKEN', '123123123:AAGvbu2qgQ7lcqsrht');
function getlogins() {
$bot = new \TelegramBot\Api\Client(TELEGRAM_TOKEN);
$msg_list = $bot->getUpdates(0,25,10);
$bot->getUpdates(-1,25,10);
$arr = [];
if (isset($msg_list[0]['message']))
foreach ($msg_list as $key => $value) {
if (isset($value['message']['from']['username']) && isset($value['message']['from']['id']))
$arr[mb_strtolower($value['message']['from']['username'])] = (int)$value['message']['from']['id'];
}
return $arr;
}
function sendmsg($id, $text){
$bot = new \TelegramBot\Api\Client(TELEGRAM_TOKEN);
$bot->sendMessage($id, $text);
return '{"msg":true}';
}
Первая функция вернет вам тех, кто писал в телеграм бота или же жал кнопку старт за последнее время. Вернет именно массив username => id. Вторая функция воспринимает id и текст для отправки.
Всё предельно просто. Бот отправляет сообщения в свой диалог с пользователем.
- таким образом вы можете получить ID пользователя в телеграм и сможете ему писать от имени этого же бота.
Вот я не могу понять каким образом мне связать неизвестного мне пользователя который нажал на кнопку старт, с тем кто у меня на сайте...
если бы переходя по ссылке я бы мог передать параметр, например юзер_ид, и после нажатия старт этот параметр сохранять вместе с chat_id было бы здорово.
Miracle, вам нужно спросить пользователя на сайте его username в телеграм. И по нему уже связать. По такому принципу это сделано в нашем сервисе. Человек пишет в настройках свой логин в телеграм, дальше заходит на бота в телеграм и нажимает старт. Ну и демон подтягивает в определенном интервале ID кто ему писал и с какого логина и обновляет в базу к этому логину ID. А затем пуляет информацию из личного кабинета по данным с его сайта на ID из настроек.
Вариант 2, написать боту например логин из личного кабинета на вашем сайте. ну или определенный ключ. Но тут нужно понимать, что просто написать боту логин это не секьюрно, лучше конечно через ключ. Если информация не приватная, то можно и просто логин.
Miracle, вам нужно спросить пользователя на сайте его username в телеграм.
А какой юзернейм в телеграм? Номер телефона?
Вариант 2, написать боту например логин из личного кабинета на вашем сайте. ну или определенный ключ. Но тут нужно понимать, что просто написать боту логин это не секьюрно, лучше конечно через ключ. Если информация не приватная, то можно и просто логин.
я думал об этом варианте правда в другой интерпритации.
---------- Добавлено 24.02.2020 в 19:11 ----------
Теперь я понял почему я не знал юзернейма своего, потому что его нужно было придумывать и вводить отдельно, думаю моей аудитории это будет сложно.
Miracle, вам по варианту 2, найти бота и написать ему контрольную фразу или свой логин в вашей системе. Дальше получаете в цикле последние сообщения что боту писали и с них выдергиваете контрольную фразу или логин + получаете id того кто писал. Ну и дальше понятно на какой id отправлять сообщения и для какого они пользователя.
Miracle, вам по варианту 2, найти бота и написать ему контрольную фразу или свой логин в вашей системе. Дальше получаете в цикле последние сообщения что боту писали и с них выдергиваете контрольную фразу или логин + получаете id того кто писал. Ну и дальше понятно на какой id отправлять сообщения и для какого они пользователя.
поделитесь куском кода для того что бы получать эти данные и передавать их на сайт.
вот к примеру пользователь ввел , в самом простом случае, свой айди с сайта, каким образом из телеграмма передать данные на сайт что бы подвязать его chat_id с user_id
спасибо
---------- Добавлено 25.02.2020 в 08:44 ----------
Правильно я понимаю надо использовать Webhook но для этого как раз и нужен ssl
Правильно я понимаю надо использовать Webhook но для этого как раз и нужен ssl
Да, всё верно.
Есть ещё альтернативный вариант - постоянно дёргать сервер телеграма на предмет обновлений. Но, ИМХО, вариант с веб-хуками более "правильный".. =)
возможно кому-то будет полезно
https://support.rdb24.com/hc/ru/articles/360002273994
+
https://gist.github.com/nrollr/9a39bb636a820fb97eec2ed85e473d38
https://certbot.eff.org/lets-encrypt/centosrhel7-nginx.html тоже полезная ссылка. все делается проще, но я пробовал первым вариантом. так как не совсем понимаю как в этом варианте устанавливаются сертификаты. неужели один для всех сайтов на сервере? кстати, даже nginx не нужно перегружать? странно. может спецы подскажут.