Как получить скрипт PHP для отправки и получения данных от уже запущенного процесса? - PullRequest
1 голос
/ 05 декабря 2008

Я пытаюсь создать простой клиент AJAX для Telnet для Интернета. Возможно, я заново изобретаю колесо, но это учебный проект для меня. На данный момент я ничего не написал, я просто пытаюсь обернуть идею вокруг моего мозга. Это не обязательно должен быть PHP.

Если у меня есть клиент telnet, который поддерживает несколько соединений, уже запущенных в его собственном процессе, как мне получить скрипт PHP, который запускается, когда клиент-браузер запрашивает возможность связи с клиентом?

Например, я хочу, чтобы скрипт PHP мог сообщать уже запущенному процессу, какой он клиент, и получать любые новые данные от процесса telnet.

Ответы [ 3 ]

1 голос
/ 05 декабря 2008

Я бы создал клиент telnet, который запускается как процесс-демон. Он будет отвечать за создание и поддержание сеанса telnet и буферизует любые полученные данные.

Ваш сценарий PHP может затем использовать TCP-соединение или сокет Unix для связи с вашим демоном клиента telnet, используя API сокетов PHP .

Джим.

1 голос
/ 05 декабря 2008

Для PHP вы говорите о взаимодействии через оболочку, верно? Все будет зависеть от клиента telnet, с которым вы пытаетесь соединиться, и от того, какие опции CLI он поддерживает. Открытие потока для этого, вероятно, потребовало бы, чтобы каждый сеанс telnet выводил свой STDIO в текстовый файл, а затем PHP считывал этот текстовый файл и отображал «разницу».

С помощью Fsockopen () в PHP вам действительно не нужно взаимодействовать с другой программой, хотя вы можете запускать команды сокетов непосредственно в PHP и получать результаты там.

PHP: Fsockopen

0 голосов
/ 05 декабря 2008

Даже если соединение должно быть постоянным?

edit: неважно, думаю, у меня есть идея.

Я сам напишу клиентскую часть, но если бы она также могла выступать в качестве сервера, к которому PHP обращается, подключаясь к нему и предоставляя соответствующие данные, чтобы он мог выяснить, какое соединение нужно пользователю ... от Джорджа, я думаю, что получил!

edit2: Это то, что сказал Джим. Спасибо Джим.

...