Скажите как с вайбера отправить на определенный номер фото и текст к фото Кака Использовать API вайбера чтобы фото сохранить на диске сайта, а текстовое сообщение перед фотографией определить как зарезервированное слово к примеру "товар # 255" Сайт будет знать что в базу нужно записать фотку под айдишником 255
Итак, в разделе "начало работы" официальной документации не очень очевидно, но всё-таки описывается создание апи ключа, получение сообщений как типа коллбэков "message", а также регистрация коллбэков.
тыкаем "редактировать инфо" (edit info) нашего паблик аккаунта (не обычного! обычного нельзя) и там можно получить API-ключ
Например по адресу https://example.com/my-viber-script.php
. https с валидным сертификатом обязателен.
Скрипт создаем с кодом вроде такого
<?php
$x = json_decode($y=file_get_contents("php://input"),true);
if($x['event']=='message' && $x['message']['type']=='picture'){
// $x['message']['media'] - это ссылка на картику!
file_put_contents('msg'.$x['message']['message_token'].'.txt',$y);
}
echo 'Этот текст нужен, чтобы веб-сервер не вернул 206 вместо 200';
отправляем POST-запрос с данными:
{
"url": "https://example.com/my-viber-script.php",
"event_types": ["delivered", "seen", "failed", "subscribed", "unsubscribed", "conversation_started"]
}
по адресу https://chatapi.viber.com/pa/set_webhook
https://example.com/my-viber-script.php
обязательно надо заменить на адрес своего скрипта. https с валидным сертификатом обязателен.
не смотря на то что в типах событий (event_types
) нет message
, они всё равно придут, т.к. message, subscribed и unsubscribed обязательные типы.
после этого он отправит запрос на наш скрипт, который должен вернуть 200 Ok, и ответит "ура, вебхук установлен!"
Теперь отправляем картинку и смотрим как она прилетает в наш скрипт.
Текстовое сообщение будет в переменной $x['message']['text']
- его можно распарсить, например, регэкспами, например, для сообщений вида "Tovar #123"
if(preg_match('tovar ?# ?(\\d+) ?/i',$x['message']['text'],$m)){
// $m[1] == 123
} else {
// формат не подошел
}
По-хорошему надо бы ответить пользователю результатом, это описано тут - https://developers.viber.com/docs/api/rest-bot-api/#send-message
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
У кого-то получалось использовать вместе виджет TinyMCE и фукнционал yii2 file-kit для добавления фото при редактировании текста? Если да, то поделитесь,...
Доброе время сутокУстановил NetBeanse, создал простой проект на PHP
Не получается сохранить в таблице postgresql символ двойной кавычки "Сохраняю в поле с типом данных text
ЗдравствуйтеНапример, запускаю скрипт с CURL-запросом