Библиотека
websocketd уже установлена и работает. С приёмом - передачей на
js проблем у меня не возникло, а вот с приёмом данных на
php-обработчик загвоздка. Поделитесь пожалуйста конструкцией. Передать нужно всего
3 переменные.
1. Вопрос первый: как правильно запустить
php-обработчик с
websocketd одной командой? Запуск
websocketd и
php-обработчика таким образом (
пример ниже) не приносит результата, хотя тестовый вариант
bash-обработчика (
count.sh) с сайта
websocketd.com работает:
- $ websocketd --port=8008 ./count.sh - прекрасно работает
- $ websocketd --port=8008 php /<путь до обработчика>/handler.php - не работает
Код обработчика пока самый простой -
ответить в сокет:
<?php echo 'Answer from the handler'; ?>
"Дёргаю" WebSocket c другого домена соответственно таким
js-скриптом:
<script src="reconnecting-websocket.min.js"></script>
<script>
var ws = new ReconnectingWebSocket('ws://<ip-адрес сервера>:8008/');
var msg = {
first_variable: 'aaaaaaaa',
second_variable: 'bbbbbbbb',
third_variable: 1
};
//ws.debug = true;
ws.reconnectInterval = 10000;
ws.onopen = function() {
console.log('Data sent');
};
ws.send(JSON.stringify(msg));
ws.onclose = function() {
console.log('Connection closed: ' + event.data);
};
ws.onmessage = function(event) {
console.log('Answer: ' + event.data);
};
</script>
Но в ответ в консоли браузера это (
видно что отправляет, но не принимает):
2. Вопрос второй: какой будет код
php-обработчика, чтобы принять данные?