AJAX + viberbot ...

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

AJAX + viberbot ...

Сообщение wseomix »

Стоит у меня такая штука https://github.com/Bogdaan/viber-bot-php

В одном из OnText нужно выполнить ajax запрос на удаленный сервер и соответственно вернуть результат.
Может кто подскажет хоть в каком направлении копать то?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

wseomix писал(а): 2017.10.16, 15:16 Стоит у меня такая штука https://github.com/Bogdaan/viber-bot-php

В одном из OnText нужно выполнить ajax запрос на удаленный сервер и соответственно вернуть результат.
ajax - это в общем js-понятие. Может обычный запрос?
wseomix писал(а): 2017.10.16, 15:16 Может кто подскажет хоть в каком направлении копать то?
в сторону http-клиента
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

Да вот понимаю, что js ... А есть возможность в пхп сэмулировать клиента с js?
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: AJAX + viberbot ...

Сообщение urichalex »

wseomix писал(а): 2017.10.21, 20:59 Да вот понимаю, что js ... А есть возможность в пхп сэмулировать клиента с js?
Обычный http запрос
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

$ch = curl_init( $url );

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвращает веб-страницу
curl_setopt($ch, CURLOPT_HEADER, 0); // не возвращает заголовки
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // переходит по редиректам
curl_setopt($ch, CURLOPT_ENCODING, ""); // обрабатывает все кодировки
curl_setopt($ch, CURLOPT_USERAGENT, $uagent); // useragent
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // таймаут соединения
curl_setopt($ch, CURLOPT_TIMEOUT, 120); // таймаут ответа
curl_setopt($ch, CURLOPT_MAXREDIRS, 10); // останавливаться после 10-ого редиректа

$content = curl_exec( $ch );
$err = curl_errno( $ch );
$errmsg = curl_error( $ch );
$header = curl_getinfo( $ch );
curl_close( $ch );

$header['errno'] = $err;
$header['errmsg'] = $errmsg;
$header['content'] = $content;

В общем все неплохо, есть прогресс, но отчего вайбербот по 3 ответа дает и в вайбер приходит 3 $content
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

потому что три раза отсылаете
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

zelenin писал(а): 2017.10.25, 17:24 потому что три раза отсылаете

Код: Выделить всё

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвращает веб-страницу
curl_setopt($ch, CURLOPT_HEADER, 0); // не возвращает заголовки
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // переходит по редиректам
curl_setopt($ch, CURLOPT_ENCODING, ""); // обрабатывает все кодировки
curl_setopt($ch, CURLOPT_USERAGENT, $uagent); // useragent
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // таймаут соединения
curl_setopt($ch, CURLOPT_TIMEOUT, 120); // таймаут ответа
curl_setopt($ch, CURLOPT_MAXREDIRS, 10); // останавливаться после 10-ого редиректа

$content = curl_exec( $ch );


$header['errno'] = $err;
$header['errmsg'] = $errmsg;
$header['content'] = $content;

В общем все неплохо, есть прогресс, но отчего вайбербот по 3 ответа дает и в вайбер приходит 3 $content
Сделал так, все равно в вайбер приходит по 4 ответа...
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

теперь 4 раза отсылаете
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

zelenin писал(а): 2017.10.26, 21:56 теперь 4 раза отсылаете
Подскажите где оно 4 раза отсылается?
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

wseomix писал(а): 2017.10.27, 11:36
zelenin писал(а): 2017.10.26, 21:56 теперь 4 раза отсылаете
Подскажите где оно 4 раза отсылается?
у вас в коде
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

zelenin писал(а): 2017.10.27, 11:44
wseomix писал(а): 2017.10.27, 11:36
zelenin писал(а): 2017.10.26, 21:56 теперь 4 раза отсылаете
Подскажите где оно 4 раза отсылается?
у вас в коде
Простите, не пойму curl_exec только один раз вызывается..
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

wseomix писал(а): 2017.10.27, 12:08
zelenin писал(а): 2017.10.27, 11:44
wseomix писал(а): 2017.10.27, 11:36

Подскажите где оно 4 раза отсылается?
у вас в коде
Простите, не пойму curl_exec только один раз вызывается..
а весь код - 4
wseomix
Сообщения: 28
Зарегистрирован: 2017.01.12, 15:13

Re: AJAX + viberbot ...

Сообщение wseomix »

zelenin писал(а): 2017.10.27, 12:11
wseomix писал(а): 2017.10.27, 12:08
zelenin писал(а): 2017.10.27, 11:44
у вас в коде
Простите, не пойму curl_exec только один раз вызывается..
а весь код - 4
Понимаете в чем штука - если я делаю так:

Код: Выделить всё

			$ch = curl_init( $url );
			return 'TEST';
			exit();
Работает ровно 1 раз...
zelenin
Сообщения: 10596
Зарегистрирован: 2013.04.20, 11:30

Re: AJAX + viberbot ...

Сообщение zelenin »

wseomix писал(а): 2017.10.27, 12:16
zelenin писал(а): 2017.10.27, 12:11
wseomix писал(а): 2017.10.27, 12:08

Простите, не пойму curl_exec только один раз вызывается..
а весь код - 4
Понимаете в чем штука - если я делаю так:

Код: Выделить всё

			$ch = curl_init( $url );
			return 'TEST';
			exit();
Работает ровно 1 раз...
значит и сообщение вам приходит 1 раз. Либо вы неверной логикой пользуетесь.
Ответить