Difference between revisions of "Web-apps"
(Первая версия) |
m (→Технические подробности: всё уже придумано до нас) |
||
| Line 15: | Line 15: | ||
== Технические подробности == | == Технические подробности == | ||
При разработке сервиса использован язык [[:w:Ада (язык программирования)|Ада]] и [[:w:lua|Lua]]. Программе на Ада передается Lua-сценарий и номер порта. Для каждого входящего соединения выполняется этот скрипт, читается сценарий Lua, происходит обмен данными. При этом всё осуществляется асинхронно. Сам сценарий может быть таким: | При разработке сервиса использован язык [[:w:Ада (язык программирования)|Ада]] и [[:w:lua|Lua]]. Программе на Ада передается Lua-сценарий и номер порта. Для каждого входящего соединения выполняется этот скрипт, читается сценарий Lua, происходит обмен данными. При этом всё осуществляется асинхронно. Сам сценарий может быть таким: | ||
| − | + | ||
| − | + | while(true) do | |
| − | end | + | send( recieve() ) |
| + | end | ||
| + | |||
Сервер в этом случает отсылает ровно то, что ему прислали (эхо) и если во время вызова recieve() данных входящих ещё нет, то выполнение сценария приостанавливается, пока данных не поступят. Для скрипта это незаметно и когда данные появятся, то он возобновляет работу. | Сервер в этом случает отсылает ровно то, что ему прислали (эхо) и если во время вызова recieve() данных входящих ещё нет, то выполнение сценария приостанавливается, пока данных не поступят. Для скрипта это незаметно и когда данные появятся, то он возобновляет работу. | ||
Revision as of 07:47, 30 April 2010
| Web-apps | |
|---|---|
| Информация | |
| Сайт: | web-apps.ru |
| Библиотека: | Net::XMPP |
| Лицензия: | GPL |
| Характеристики | |
Web-apps - это безымянный бот (в том смысле, что публичного имени собственного у него пока нет). Посредством этого бота вы можете поместить на веб-страницу (через тэг <IMG> или как фоновое изображение в <DIV>) свой статус, а также JID. Последнее - по желанию.
Инструкция для пользователя
- Добавить адрес бота
- В ответ на его сообщение послать единицу
- Вставить код на нужную страницу (код фомируется вручную на основе примеров, размещённых на официальном сайте)
Технические подробности
При разработке сервиса использован язык Ада и Lua. Программе на Ада передается Lua-сценарий и номер порта. Для каждого входящего соединения выполняется этот скрипт, читается сценарий Lua, происходит обмен данными. При этом всё осуществляется асинхронно. Сам сценарий может быть таким:
while(true) do
send( recieve() )
end
Сервер в этом случает отсылает ровно то, что ему прислали (эхо) и если во время вызова recieve() данных входящих ещё нет, то выполнение сценария приостанавливается, пока данных не поступят. Для скрипта это незаметно и когда данные появятся, то он возобновляет работу.