@kolomat

Почему не получается обработать $_GET запрос?

Не знаю как правильно сформулировать, есть сервис zvonok.com, у него есть API для прозвона клиентов роботом, то есть передаешь массив номер бот звонит, говорит какой-либо текст и просить подтверждения в духе нажмите 1 или 2. Так же для этих сценариев у них предусмотрен WebHook, например если человек нажал один по завершению звонка отправляется GET запрос который ты указал например http://sait/prozvon.php?phone={ct_phone}&botton={c...
Суть проблемы, прозвон работает нормально и есть отдельный скрипт для принятия ответов от сервиса, выглядит приблизительно так
if(isset($_GET['phone'])){
	$phone = $_GET['phone'];
	$botton = $_GET['botton'];
$client = new Google_Client;

			   $client->useApplicationDefaultCredentials();
			   $client->setApplicationName("Something to do with my representatives");
			   $client->setScopes(['https://www.googleapis.com/auth/drive','https://spreadsheets.google.com/feeds']);
			   
			   if ($client->isAccessTokenExpired())
				{
					$client->refreshTokenWithAssertion();
				}

				$accessToken = $client->fetchAccessTokenWithAssertion()["access_token"];
				ServiceRequestFactory::setInstance(new DefaultServiceRequest($accessToken));
			    
				$spreadsheet = (new Google\Spreadsheet\SpreadsheetService)->getSpreadsheetFeed()->getByTitle('Тест заказов');

				
				$worksheets = $spreadsheet->getWorksheetFeed()->getEntries();
				$worksheet = $worksheets[0];
				$listFeed = $worksheet->getListFeed();
				

				foreach ($listFeed->getEntries() as $entry) {
					$values = $entry->getValues();
					if($values['телефон'] == $phone && $botton == 2) {
						$values['статусзаказа'] = 'Отмена';
						$entry->update($values);
					}
					
					
				}

			}

Суть проблемы в чем, если например просмотреть лог сервиса, то хук отрабатует и отправляет подобный url
sait/prozvon.php?phone=+380677777777&botton=3
Если посмотреть лог сервера лог сервера то действительно приходит такой запрос, но скрипт все равно не отрабатует, хотя если выполнить этот запрос руками все нормально работает.
В чем может быть проблема и где я ошибаюсь?
Заранее спасибо за любые советы
  • Вопрос задан
  • 321 просмотр
Пригласить эксперта
Ответы на вопрос 3
SilenceOfWinter
@SilenceOfWinter Куратор тега PHP
та еще зажигалка...
куки/сессия
Ответ написан
Комментировать
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Проверяйте логи. По умолчанию web-север не пишет в свой лог-файл параметры HTTP-запросов.
Там указывается только имя запущенного скрипта, но не GET/POST параметры.

Самое простое: в скрипте первой строкой прописать: error_log(print_r($_GET, true));
и смотреть в errorlog-е web-сервера сообщение с прилетевшими GET-параметрами.
Видимо там чего-то вдруг не найдётся...
Ответ написан
@kolomat Автор вопроса
Вопрос решен, раскрыл глаза и увидел) Возможно полезно кому-то будет, сам сервер блокировал выполнение
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы