Для нового проекта мне нужно реализовать протоколы удаленного рабочего стола. Адреса удаленного устройства должны быть защищены и могут никогда не быть отправлены клиенту. После многих исследований и тестов я нашел гуакамоле, который также имеет клиент Java. Хотя проект спроектирован как API, поэтому я начал переносить некоторые фрагменты примера Java-клиента на PHP.
Вариант использования будет следующим:
Это усложняет тот факт, что приложение должно одновременно обслуживать несколько клиентов. Необходимо установить несколько сокетов TCP и одновременно управлять несколькими соединениями WebSocket.
Для моего простого теста я открыл сокет через fsockopen
и затем зациклился на ожидании данных. При этом я, очевидно, не могу слушать несколько сокетов одновременно (по крайней мере, реалистично), но я наткнулся на React Socket Client библиотека:
Думайте об этой библиотеке как об асинхронной версии
fsockopen()
или жеstream_socket_client()
,
Похоже, это то, что мне нужно, но опять же, я использую HOA и его сервер WeSocket, который, очевидно, также работает в цикле (при вызове WebsocketConnectionHandler->run()
).
Должен ли я даже использовать Recket’s Socket Client или вместо этого попробовать использовать библиотеку HOA Socket (видимо, из-за этого я уже использую WebSocket)? Являются ли React и HOA даже совместимыми в их цикле событий, поэтому я могу одновременно прослушивать клиентов WebSocket и TCP-соединение?
Если да, может ли кто-нибудь дать мне несколько советов или примеров, как начать объединять эти два? Спасибо!
Задача ещё не решена.
Других решений пока нет …