Вебсокеты Eraser: различия между версиями

Материал из MajorDoMo инфо
Нет описания правки
Нет описания правки
Строка 48: Строка 48:
<pre>
<pre>
public $pyPath = PYTHON_PATH;</pre>
public $pyPath = PYTHON_PATH;</pre>
получаем:
<pre>
<pre>
class Threads
class Threads

Версия от 17:06, 4 октября 2023

Уважаемый Eraser сделал для majordomo альтернативные вебсокеты. Чтобы установить, нужно проделать следущее:


в консоли сервера (SSH)

pip install websockets

или для python3

pip3 install websockets



возможно, понадобится вначале с судо

sudo pip install websockets

или для python3

sudo pip3 install websockets


расскоменчиваем в config.php

Define('PYTHON_PATH','python'); // path to python

или

Define('PYTHON_PATH','python3'); // path to python

в cycle.php (примерно 308 строка) заменить

if ((preg_match("/^cycle_.+?\.php$/", $lib_file)))

на

if ((preg_match("/^cycle_.+?\.(php|py)$/", $lib_file)))

а так же

if (preg_match('/(cycle_.+?)\.php/is', $path, $m)) {

на

if (preg_match('/(cycle_.+?)\.(php|py)/is', $path, $m)) {


в /lib/threads.php после

class Threads
{
   public $phpPath = 'php';

Добавляем

public $pyPath = PYTHON_PATH;

получаем:

class Threads
{
   public $phpPath = 'php';
   public $pyPath = PYTHON_PATH;


скопировать файл /scripts/cycle_websockets.py в папку /scripts . Даем соответствующие права (0777) Там же папке переименовать или удалить стандартный цикл вебсокетов cycle_websockets.php