mysql — IFTTT: Попытка запустить скрипт php с помощью Maker Webhooks

Добрый день,

Я создал рецепт IFTTT о том, что, если охранная система «myfox» активирована, на моем NAS выполняется скрипт php (192.165.x.x). Сценарий php должен запускать хранимую процедуру в моей базе данных mysql.

Следующий скрипт PHP был протестирован другими способами, и я уверен, что он работает:

<?php

/*
php_update_mode_armed.php

*****************************************************************************************
* This script updates the value of the components in the table tbl_eedomus_current_mode
* It calls the stored procedure 'sp_tbl_eedomus_current_mode_armed'
*****************************************************************************************

Version 1.00, 09.06.2017, Initial version of the script
*/mainProcess();

function mainProcess()
{
$ServerIP = "192.165.x.x";
$sqlUser = "domoos";
$sqlDatabase = "domoos";
$pw = "myPass";

// Connect
$mysqli = new mysqli($ServerIP, $sqlUser, $pw, $sqlDatabase);
if(!$mysqli) {[![enter image description here][1]][1]
header('Location: error.php?error=DbConnectionFailure');
die();
}

// Call stored procedure sp_tbl_eedomus_current_mode_armed
if(!$mysqli->query("CALL sp_tbl_eedomus_current_mode_armed ()"))
{
echo "OK";
if($mysqli) $mysqli->close(); // Close DB connection
//header('Location: error.php?error=QueryFailure');
die();
}

if($mysqli) $mysqli->close(); // Close DB connection
}?>

Ниже, также, снимок экрана моей «тогда» части рецепта IFTTT.

Я делаю что-то здесь не так или использование IFTTT не подходит для цели, которую я пытаюсь достичь здесь?

Большое спасибо за вашу помощь в этом вопросе и хорошего дня.

введите описание изображения здесь

0

Решение

Скорее всего, IFTTT не может получить доступ к вашему NAS из Интернета из-за брандмауэра домашнего маршрутизатора и т. Д. Кроме того, IP-адрес, используемый в IFTTT, должен быть не локальным, как 192.168. *, А вашим публичным IP-адресом. Вы можете понять это, погуглил «что мой ip».

Лучший способ проверить свои настройки с помощью ноутбука — это отключиться от локальной сети Wi-Fi, подключить телефон к ноутбуку и попробовать зайти на IP-адрес NAS, чтобы убедиться, что он все еще работает. Вы можете использовать приложение Chrome Postman для отправки POST-запросов.

Если все в порядке, заставьте PHP регистрировать входящие соединения, записывая в файл. file_put_contents("log.txt", print_r($_REQUESTS, true));

Я бы предложил сначала выполнить запрос GET с типом содержимого по умолчанию. Удачи!

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]