Как выполнить команду shell_exec из облака на мой локальный хост

Я делаю веб-сайт для отправки SMS и использую Gammu в качестве локального шлюза для смс, он отлично работает в моей базе localhost на php-коде, который я использую:

echo shell_exec('"C:\Gammu\bin\gammu.exe" --sendsms TEXT +'.$row["mobilenum"].' -text '.$message.'');

Теперь, как я могу выполнить это, когда я начинаю помещать сайт в облако? Я использую окно на основе моего SMS-сервера.

Есть ли другой способ связать облако и локальный хост, чтобы просто выполнить команду gammu?

1

Решение

Вызов shell_exec () для gammu.exe на облачном сервере не сработает, так как у вас нет телефонного соединения.

Вместо того чтобы вызывать shell_exec () с вашего веб-сайта, размещенного в облаке, вам нужно будет сделать запрос через HTTP к службе, которая может это сделать.

Проще всего было бы использовать что-то вроде Twillio.com

Или вы также можете предоставить простой HTTP API в вашей локальной сети, доступный для POST для облачного сервера.

Вам потребуется статический IP-адрес на локальном сервере Gammu и соответствующий порт, открытый в брандмауэре.

Так, например:

СООБЩЕНИЕ http://100.22.33.11/sms?number=82736164617&текст = Hello% 20World

или в JS

$.post('http://100.22.33.11/sms',{
number: '82736164617',
text: 'Hello World'
})

Конечно, вы также хотели бы добавить некоторую аутентификацию (через SSL), чтобы не быть открытым SMS-прокси 🙂

0

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

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

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