Сопряжение браузерного Java-апплета и php-скрипта

Егор14 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
19.04.2011

Постараюсь сразу описать детально, чтобы было яснее - что именно требуется.

Имеется сайт с интернет-аукционом. Но не типа eBay, а т.н. "живые торги" (live sale). Т.е. аукцион идет на самом деле (в зале, есть ведущий с молоточком и т.д.), но в то же самое время аукцион транслируется в инете. Зарегистрированный дилер может подключиться к аукциону через браузер (загрузить ява-приложение) и участвовать в аукционе. Ява-апплет позволяет видеть живое видео и аудио и также передает в специальное окошко строковые данные о ходе аукциона (какие были сделаны ставки). И также имеется кнопка, с помощью которой интернет-биддер также может сделать ставку.

Основная задача - заменить php-скриптом человека (дилера, сидящего у компа в браузере). На первом этапе нужно было просто собирать данные о ходе аукциона (кто какие делал ставки, за какую цену был продан тот или другой лот). И эти данные нужно было сохранять. Эта задача была выполнена. Был декомпилирован ява-апплет. Точнее - этот ява-апплет абсолютно не закрыт, т.е. весь исходный код апплета абсолютно доступен. Т.е. его проанализировали и создали php-скрипт, который полностью эмулировал работу ява-апплета. Этот скрипт подключался к аукциону, получал команды, откликался нужными командами, грабил входящие данные, анализировал их, вынимал нужную инфу и сохранял в MySQL-базе. Повторюсь - эта задача была выполнена и успешно работает уже не один год (периодически редактируется, т.к. кое-что в ява-апплете меняют программеры на аукционе).

Следующий этап - мы хотели бы доработать этот скрипт, чтобы он не только читал данные о ходе аукциона, но и сам делал ставки. И в этом большой проблемы нет - это просто одна лишняя команда BID которую раньше php-скрипт просто не использовал. php-скрипт должен отправлять ее в нужное время - и все дела. Но - мы хотели бы сделать немного сложнее. Попытаюсь объяснить. Допустим я - зарегистрированный биддер на этом аукционе. У меня есть логин, я разместил на аукционе депозит и могу делать ставки. Но - у меня есть целая группа моих саб-биддеров (т.к. называемых REP-ов). Эти люди сидят географически далеко от меня. И они все также готовы участвовать в аукционе. Но у них нет аккаунтов. Я бы мог им отдать свой логин. Но есть две проблемы:

1) Для каждого логина активным может быть только одно подключение. Если кто-то логинится под тем же самым логином - то предыдущего залогиненного под этим логином юзера выбрасывает с аукциона (так сделано и это не исправить).

2) Если я раздам логин всем, то есть шанс, что я не узнаю - кто именно что-то приобрел. Информация о покупке поступит в мой аккаунт на аукционе, а вот кто делал ставку - это будет неизвестно (особенно если у меня сотни саб-биддеров).

Поэтому появилась такая идея. Мы создаем свою систему с авторизацией. Туда будут логиниться все мои саб-биддеры (каждый под своим уникальным логином). Точнее - такая система уже есть. Далее - все эти саб-биддеры подключаются к аукциону. Но не напрямую, а они подключаются к вышеописанному php-скрипту. Этот скрипт транслирует им данные с аукциона. Но они не только видят, но и могут нажать кнопку "Сделать ставку". Скрипт видит - кто именно нажал (сделал ставку), сохраняет эту инфу и уже потом передает эту команду на аукцион. Т.е. мы знаем - кто и сколько поставил.

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

Ну вот как-то так. Работа эта нужная (для нас). Сроки и суммы, думаю, нужно обсуждать уже по ходу. Но естественно хотелось бы побыстрее и побюджетнее :)

Спасибо.

Заявки фрилансеров