Общение между AutoIt и PHP

Ответить
Аватара пользователя
morgan1991

Общение между AutoIt и PHP

Сообщение morgan1991 »

Здравствуйте!

Нужно очень часто получать, средствами AutoIt, данные с сервера.

Проблема в том, чтоб как можно меньже загружать интернет соединение и ЦП компьютера клиента, а также экономя как можно больше времени, используя AutoIt и PHP на сервере.

Какждый раз при получении данных подключаться к серверу, мне кажется не вариант, т.к. это очень долго и мучительно, теряются секунды.

Держать постоянное соединение с PHP, невозможно чисто физически.

На сервере имеется !только PHP, в связи с чем огромная просьба не предлагать поставить какой либо софт или библиотеку для PHP или веб сервера.

Жду вашей помощи.
Аватара пользователя
morgan1991

Re: Общение между AutoIt и PHP

Сообщение morgan1991 »

Хоть какиенибудь мысли, хоть ктонибудь...

UP
Аватара пользователя
morgan1991

Re: Общение между AutoIt и PHP

Сообщение morgan1991 »

Цитата morgan1991:



Какждый раз при получении данных подключаться к серверу, мне кажется не вариант
Общение между AutoIt и PHP




А каким образом, вы собираетесь тогда получить эти данные?



Как вариант, можно заставить PHP скрипт на сервере отсылать обновлённые данные клиенту. Но без соединения с сервером, боюсь невозможно.
Аватара пользователя
morgan1991

Re: Общение между AutoIt и PHP

Сообщение morgan1991 »

Цитата Garrett:



А каким образом, вы собираетесь тогда получить эти данные?
Общение между AutoIt и PHP




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

Но как это сделать?
Аватара пользователя
Garrett

Re: Общение между AutoIt и PHP

Сообщение Garrett »

Цитата morgan1991:



Я имел ввиду не подключаться каждые две секунды, а если один раз подключиться и потом получать постоянно данные
Общение между AutoIt и PHP




Такой технологии пока ещё нет (если ошибаюсь, поправьте).

Любая программа работает по принципу вопрос/ответ, и имеет параметры условие, цикл и производные.

Мы кстати тоже общаемся по принципу вопрос/ответ Изображение

Поэтому, как ни крути, а чтобы получить данные нужно послать запрос серверу.



Фактически, при подключении к серверу вы его спрашиваете - "готов передать данные?"

На что сервер вам отвечает - "да я готов передать вам данные: код готовности" или "нет, я не готов: код ошибки"

Далее, в случае 200 Ок (код успешного соединения) вы "говорите" скрипту weather.php дайка мне погоду на 25.11.2010

Сервер, в свою очередь запустит скрипт, и тот вернёт вам в случае успеха погоду на 25.11.2010.

Вот тут немного внимания!!! Мы фактически не отключаемся от сервера, но для получения новой порции данных мы снова должны сделать запрос к серверу!




Цитата morgan1991:



Проблема в том, чтоб как можно меньже загружать интернет соединение и ЦП компьютера клиента
Общение между AutoIt и PHP




Тут нужно просто грамотно написать скрипт!




Цитата morgan1991:



а также экономя как можно больше времени
Общение между AutoIt и PHP






Получать данные порциями (к примеру, через каждые 30 мин.)



P.S. Если вы хотите написать online игру то тут уже давно всё апробировано, просто почитайте материал по написанию игр!
Аватара пользователя
morgan1991

Re: Общение между AutoIt и PHP

Сообщение morgan1991 »

Цитата Garrett:



Получать данные порциями (к примеру, через каждые 30 мин.)
Общение между AutoIt и PHP




Изображение нужно каждую секунду.


Цитата Garrett:



P.S. Если вы хотите написать online игру то тут уже давно всё апробировано, просто почитайте материал по написанию игр!
Общение между AutoIt и PHP




Нет, нужно чтото типо чата, переписки между двумя людьми.

Напрямую соедениться не подходит, ставить сервер тоже.

А вот через PHP норм.
Аватара пользователя
Garrett

Re: Общение между AutoIt и PHP

Сообщение Garrett »

Цитата morgan1991:



Нет, нужно чтото типо чата, переписки между двумя людьми.

Напрямую соедениться не подходит, ставить сервер тоже.

А вот через PHP норм.
Общение между AutoIt и PHP




Ну вот теперь хоть понятно о чём речь Изображение


Цитата morgan1991:



нужно каждую секунду.
Общение между AutoIt и PHP




Для вашей цели не вижу смысла!



Собственно (вкратце) алгоритм следующий:



Autoit.

Пишем клиентское приложения Messenger. По сути, это будет простенький клиент/сервер.



PHP.

Пишем скрипт, который при получение данных от Messenger ID[1...N] будет отсылать их на Messenger ID[1...N].



Скрипт должен уметь:

1. идентифицировать пользователя по ID[1...N]

2. принимать/отсылать данные пользователю



Протокол (примерно) такой: ID[1...N]:DATA PHP ID[1...N]:DATA



P.S. А, почему бы вам не воспользоваться готовыми протоколам, к примеру Jabber (XMPP).




Цитата morgan1991:



Напрямую соедениться не подходит
Общение между AutoIt и PHP




В чём причина, если не секрет?
Аватара пользователя
morgan1991

Re: Общение между AutoIt и PHP

Сообщение morgan1991 »

Цитата Garrett:



В чём причина, если не секрет?
Общение между AutoIt и PHP




Дешовый веб сервер/хостинг... Изображение


Цитата Garrett:



Собственно (вкратце) алгоритм следующий:
Общение между AutoIt и PHP




В принципе я так и хотел сделать, но проблема в том, что повторное подключение к серверу занимает бывает до 5 секунд.
Цитата Garrett:



Вот тут немного внимания!!! Мы фактически не отключаемся от сервера, но для получения новой порции данных мы снова должны сделать запрос к серверу!
Общение между AutoIt и PHP




Это если передать в заголовке connection: keep-alive, но с таким методом у меня проблемка есть, никак не могу отловить конец передачи данных, а если ставлю connection: close, тогда принимаю данные пока не оборвётся соединение...
Ответить

Вернуться в «AutoIt»