Mi pare che la questione sia esposta in termini oltremodo generici: per problematiche di questo tipo, prima si fa una ricerca per individuare eventuali soluzioni a grandi linee, poi ci si concentra su ogni aspetto particolare del problema, uno alla volta, cercando di implementare una soluzione ritenuta corretta o ponendo dubbi specifici al forum.

E' chiaro che una domanda del tipo "Come faccio a fare tutto questo?" non può essere esaurita in questo spazio perché si aggancia a una serie di problematiche, non solo relative alla programmazione, che non possono essere spiegate, illustrate o indicate qui, e che richiedono - come ho già detto - un minimo di ricerca preventiva.

Se sono state vagliate una serie di soluzioni, in particolare legate a Java, su cui vi sono problemi specifici da affrontare, lascio aperta la discussione, altrimenti rimando a Google (o altro motore di ricerca favorito) per l'approfondimento della materia.