LINUX.ORG.RU

Демон для управления мультикассой


0

0

Мне необходимо разработать модуль (демон) для управления работой мультикассы(автоматический прием платежей). Модуль будет взаимодействовать с flash частью которая реализует пользовательский GUI, с демоном обслуживающим и поддерживающим в рабочем состоянии оборудование (принтер, купюроприёмник итд).

Взаимодействие с модулем должно осуществляется по протоколу на базе xml по принципу запрос-ответ посредством HTTP. На любой запрос модуль должен либо выдавать результат / подтверждение, либо ошибку. Запрос xml должен передаваться в качестве параметра к GET-запросу:

http://localhost:8070?xml=<request>...</request>

Модуль должен взаимодействовать с сервером платежной системы. Обмен данными производится по протоколу HTTPS. В процессе обмена модуль устанавливает защищенное SSL-соединение с сервером, формирует и направляет серверу сообщение с использованием HTTP-метода POST (запрос), и в контексте этого же соединения получает сообщение сервера (ответ). Тело HТTP-сообщения содержит оформленный документ, заголовки сообщения указывают на формат и кодировку документа, объем передаваемых данных и аутентификационную информацию.

В случае сбоев в соединении, отказов сервера итд запрос пересоздается, через некоторое время.

Модуль получает свою конфигурацию из XML файла.

В качестве СУБД, для хранения всей рабочей информации будет использоваться mysql.
ОС: SUSE Linux.

Вопросы:

Первое, имею большой опыт программирования на PHP и в среде MS Visuial C++ & MFC. Под Linux я ничего не разрабатывал, поэтому в любом случае придётся учится чему то новому. Какая среда\ какой язык НА ВАШ ВЗГЛЯД наиболее приспособлен для решения поставленной задачи.
Сам вижу 2 варианта perl или даже php, но как там обстоит дело с периодическими процессами? Многие вещи должны происходить автоматически, с разной периодичностью которая может изменяться (например нужно пересоздать транзакцию из за не удачи, уничтожить не активные сессии и еще десятки вариантов). Заносить скрипты в задания cron? IMHO не удобно это. Для получения GET запросов использовать apache? Не хотелось бы итд...
Есть еще С, но кажется это излишне сложно... хотя конечно тоже вариант. В общем посоветуйте.

Второе, может быть слегка оффтопик.
Под этот проект ищется грамотный специалист. Требования отличное знание OS Linux с опытом программирования под нее не менее 5 лет. Люди с реализацией меньше двух десятков проектов не интересуют. Умение пользоваться SVN, TRAC. Наличие ICQ \ Skype приветствуется. Работа удаленно, оплата сдельная через WM, или банковским переводом. Под это дело уже сейчас есть 50.000 руб. Будет больше. Если Вам это не интересно, может быть это заинтересует ваших знакомых.
Если интересно обязательно указывайте возраст, образование, опыт.
E-mail: open_ssl@mail.ru \ ICQ: 126263

Спасибо.

> вижу 2 варианта perl или даже php

взял попкорн, подписался на коменты

anonymous
()

> Для получения GET запросов использовать apache?

Есть web-сервера попроще, например tinyhttpd (мопед не мой, сам не юзал).

Периодические процессы не проблема. Собери отдельный интерпретатор (скорее всего он и так есть) и запускай

/usr/bin/php /path/to/my-queue-processor.php

с перлом также. периодичность можно либо из шелла на чем-нибудь организовать, либо пусть прямо my-queue-processor.php откуда-нибудь события выгребает и обрабатывает.

gods-little-toy ★★★
()

flash умеет xml сокеты. Не гневи судьбу, не пользуй ни php ни perl а также сразу забудь про http. Поверь, то что ты тут описал ни на одном тендере не пройдёт.

Anoxemian ★★★★★
()

> Требования отличное знание OS Linux с опытом программирования под нее не менее 5 лет. Люди с реализацией меньше двух десятков проектов не интересуют

5 лет, 20 проектов => один проект макс. 3 мес? а если над пректами побольше работать привелось?

anonymous
()

> Под это дело уже сейчас есть 50.000 руб

99.99% Это халявщик, которому предложили поучаствовать в проекте. Я участвовал как-то в точно таком же проекте евросети ещё на заре терминальных платёжных систем и медиаконтента. Так вот один только откат за такие вещи на порядок больше. А уж бюджет.....

Anoxemian ★★★★★
()
Ответ на: комментарий от krum

ПС Зайди на сайт cyberplat.ru , скачай у них ПО, заключи договор, и не строй велосипед.

krum
()
Ответ на: комментарий от Anoxemian

> Половина, если не больше, ящиков именно так и работает.

mv ★★★★★
()
Ответ на: комментарий от Anoxemian

> 99.99% Это халявщик,

Не понятно, зачем разработка терминального ПО сейчас нужна? Разбор шапок два года назад был.

mv ★★★★★
()
Ответ на: комментарий от Anoxemian

>99.99% Это халявщик, которому предложили поучаствовать в проекте. Я участвовал как-то в точно таком же проекте евросети ещё на заре терминальных платёжных систем и медиаконтента. Так вот один только откат за такие вещи на порядок больше. А уж бюджет.....

Иногда лучше жевать... Проект полностью наш, я отвечаю за его техническую часть. 50.000 руб это НЕ БЮДЖЕТ эта сумма которую я уже сейчас готов потратить на оплату услуг 1 специалиста. Требуется консультирование, создание "скелета", написание некоторых функций. Причем тут та ересь которую Вы написали про евросеть, откаты и халявщиков судить не берусь.

nitrogen
() автор топика
Ответ на: комментарий от mv

>Не понятно, зачем разработка терминального ПО сейчас нужна? Разбор шапок два года назад был.

Господа, давайте не обсуждать темы "Почему flash", "Зачем это нужно", "Кому это нужно", "Почему не взять готовое", "Почему Linux", "C++ отстой", "полные женщины лучше" итд. Экономьте свое и мое время.

nitrogen
() автор топика
Ответ на: комментарий от nitrogen

>Господа, давайте не обсуждать темы "Почему flash", "Зачем это нужно", "Кому это нужно", "Почему не взять готовое", "Почему Linux", "C++ отстой", "полные женщины лучше" итд. Экономьте свое и мое время.

линукс еще ладно, только suse заменить на дебиан стейбл, но остальное вызывает ужас, крепко жму руку герою который потом это будет поддерживать и отвечать своей жопой за аптайм и за бабло которое этот чудо киоск схавает просто так %)

anonizmus
()
Ответ на: комментарий от anonizmus

>линукс еще ладно, только suse заменить на дебиан стейбл, но остальное вызывает ужас, крепко жму руку герою который потом это будет поддерживать и отвечать своей жопой за аптайм и за бабло которое этот чудо киоск схавает просто так %)

Отвечать будет платежная система. Если уж митинг стихийно продолжается, то на плакатах "ужос" и "аццтой" хотелось бы видеть аргументы.

nitrogen
() автор топика
Ответ на: комментарий от anonizmus

>например нужно пересоздать транзакцию из за не удачи, уничтожить не активные сессии и еще десятки вариантов

кстати, рекомендую для начала асилить русский язык %)

anonizmus
()
Ответ на: комментарий от anonizmus

>кстати, рекомендую для начала асилить русский язык %)

Ценный совет. Ананизмус, какое это имеет отношение к теме?

nitrogen
() автор топика
Ответ на: комментарий от nitrogen

>Ценный совет. Ананизмус, какое это имеет отношение к теме?

Прямое. Если человек не может грамотно писать по русски (заметь, никто не требует тут академических знаний русского языка, просто основы хотя бы), то возникают сомнения в его компетенции вообще в любой сфере деятельности.

По сути, http://www.emdebian.org/ забыть про флеш, пхп, перл конечно стабильный и очень отлаженный язык, но почему бы не найти нормального с программиста, зачем там перл ? ну выше советовали уже, проще и дешевле будет лицензировать уже готовую систему (и не иметь гемора с её поддержкой), а уж дальше дело твоё, можешь писать на пхп/flash/http/xml/etc, потом вспомнишь как тебя предупреждали %))

anonizmus
()
Ответ на: комментарий от nitrogen

возвращаясь к теме. по поводу XML-сокетов из флеша вообще дело говорят. с ними можно забацать протокол обмена попроще, и выкинуть HTTP-сервер.

если нет http-сервера, то не надо писать тяни-толкая из php-скрипта в http-сервере и какого-то другого скрипта-демона. Можно написать одно приложение, которое будет TCP-сервером для флеша и клиентом для платежной системы.

Писать можно на чем угодно - С++/Java/Perl/whatever. PHP имхо не очень подходит но вообще это дело вкуса.

Дизайн у приложения получается простой - state machine, реализуемая при помощи reactor pattern + обвеска для обработки всяких сбоев. Общение с флешем - просто сокеты, общение с сервером - ну например libcurl.

имхо гораздо проще чем танцы вокруг HTTP-сервера.

gods-little-toy ★★★
()
Ответ на: комментарий от nitrogen

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

krum
()

>Проект полностью наш, я отвечаю за его техническую часть.

>Под этот проект ищется грамотный специалист. Требования отличное знание OS Linux с опытом программирования под нее не менее 5 лет. Люди с реализацией меньше двух десятков проектов не интересуют

Ну да, так и есть. Высокие требования к опыту часто понятным образом связаны с адекватностью начальства :)

>Если интересно обязательно указывайте возраст, образование, опыт.

Хорошо не размер пиписьки :)

ival ★★
()
Ответ на: комментарий от gods-little-toy

> имхо гораздо проще чем танцы вокруг HTTP-сервера.

Ручной закат солнца - это увлекательно и замечательно, но проще, быстрее и надёжнее будет какой-нибудь ICE использовать.

mv ★★★★★
()

>Господа, давайте не обсуждать темы "Почему flash", "Зачем это нужно", "Кому это нужно", "Почему не взять готовое", "Почему Linux", "C++ отстой", "полные женщины лучше" итд. Экономьте свое и мое время.

если хотите съэкономить время не создавайте подобные темы на ЛОРе.

вы не там спрашиваете :)))

anonymous
()
Ответ на: комментарий от anonymous

> если хотите съэкономить время не создавайте подобные темы на ЛОРе.
> вы не там спрашиваете :)))

да нет, почему, можно и тут. правда ТЗ IMHO больно сумбурное, архитектура несколько странная и сумма весьма так себе. ну а так - делали, работает...

ps: правда ещё раз терминал приёма платежей я делать не буду бо скучно это :)

// wbr

klalafuda ★☆☆
()

Хм... Интересно, вот у меня в соседнем доме стоит эта "Мультикасса", рыжая такая и однажды при мне она загружалась.
Дык там, судя по экрану загрузки, CentOS4 и, таки да, флеш в фоксе. И работает ведь, не глючит.

vden ★★
()
Ответ на: комментарий от gods-little-toy

А в чем дело? Браузер, флешка на странице. Разве что - на весь экран. Какие тут проблемы с лицензиями?

vden ★★
()
Ответ на: комментарий от gods-little-toy

> Интересно а как с лицензией на Flash дело у подобных поделий обстоит?

у подобных поделий как правило не возникает никаких проблем с "лицензиями" на WinXP*, а вы про какой-то там флеш...

*) ну разве что кому-то очень сильно захочется испортить жизнь и не будет другого повода. но это уже совершенно другой вопрос...

// wbr

klalafuda ★☆☆
()
Ответ на: комментарий от klalafuda

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

gods-little-toy ★★★
()

Единственный полезный ответ, это про XML-сокеты и флеш. А в остальном...пустой флейм. Видимо спросил действительно не там.

В общем резюмируя: Человек нужен не на фул-тайм, оплата СДЕЛЬНАЯ. Т.Е. есть например задача, строим модуль "сюда загоняем свинью - отсюда должны вылетать сосиски", мы оцениваем стоимость, делаю предоплату, человек реализовывает, реализовывает грамотно что - бы не пришлось переделывать. Исполнитель должен иметь достаточный опыт, что-бы иметь собственное мнение, дать дельный совет или предложить собственное решение опираясь на СВОЙ ОПЫТ. Принимаю работу и оплачиваю. Переходим к следующему этапу. Оплата не за время оплата за результат. Будет потрачено равно столько средств сколько потребуется. При позитивном опыте сотрудничества оно будет продолжено и в других проектах, задач у нас много.

Всем спасибо.

nitrogen
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.