Страница 1 из 1

AJAX + viberbot ...

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

В одном из OnText нужно выполнить ajax запрос на удаленный сервер и соответственно вернуть результат.
Может кто подскажет хоть в каком направлении копать то?

Re: AJAX + viberbot ...

Добавлено: 2017.10.16, 17:03
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-клиента

Re: AJAX + viberbot ...

Добавлено: 2017.10.21, 20:59
wseomix
Да вот понимаю, что js ... А есть возможность в пхп сэмулировать клиента с js?

Re: AJAX + viberbot ...

Добавлено: 2017.10.21, 21:29
urichalex
wseomix писал(а): 2017.10.21, 20:59 Да вот понимаю, что js ... А есть возможность в пхп сэмулировать клиента с js?
Обычный http запрос

Re: AJAX + viberbot ...

Добавлено: 2017.10.25, 17:22
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

Re: AJAX + viberbot ...

Добавлено: 2017.10.25, 17:24
zelenin
потому что три раза отсылаете

Re: AJAX + viberbot ...

Добавлено: 2017.10.26, 21:54
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 ответа...

Re: AJAX + viberbot ...

Добавлено: 2017.10.26, 21:56
zelenin
теперь 4 раза отсылаете

Re: AJAX + viberbot ...

Добавлено: 2017.10.27, 11:36
wseomix
zelenin писал(а): 2017.10.26, 21:56 теперь 4 раза отсылаете
Подскажите где оно 4 раза отсылается?

Re: AJAX + viberbot ...

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

Re: AJAX + viberbot ...

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

Re: AJAX + viberbot ...

Добавлено: 2017.10.27, 12:11
zelenin
wseomix писал(а): 2017.10.27, 12:08
zelenin писал(а): 2017.10.27, 11:44
wseomix писал(а): 2017.10.27, 11:36

Подскажите где оно 4 раза отсылается?
у вас в коде
Простите, не пойму curl_exec только один раз вызывается..
а весь код - 4

Re: AJAX + viberbot ...

Добавлено: 2017.10.27, 12:16
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 раз...

Re: AJAX + viberbot ...

Добавлено: 2017.10.27, 12:18
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 раз. Либо вы неверной логикой пользуетесь.