Bonjour, je souhaite développer un soft permettant de partager ses photos entre amis.
A plusieurs reprises on se retrouve avec pleins de copains, on fait plein de photos et après c'est la galère pour regrouper toutes les photos prises
L'idée est de mettre en place un réseau d'échange de photo décentralisé avec authentification (faudrait pas que mon patron trouve mes photos de ma dernière soirée ;-) )
Quelqu'un aurait-il de la doc sur l'implémentation des technos P2P, ou un lien sur une librairie facilement exploitable. Je compte faire un logiciel à peu près portable (les archis cible sont Linux et Windows) et je n'ai pas encore choisi les technos....
# Bonne idée
Posté par gawal . Évalué à 1.
# ++
Posté par manatlan (site web personnel) . Évalué à 2.
(j'avais déjà vu, je crois, des logiciels qui faisait ça ... (à vérifier))
Cependant ... comme choix de techno ... je conseillerai :
python pour sa simplicité et son côté rad et objet + wxpython pour l'interface multi plateforme os based ...
Pour ce qui est des échange réseau, une bonne libraire python est dispo aussi : http://www.twistedmatrix.com/(...) ... qui permet de faire un peu prêt tout ...
(des implémentations du p2p bittorent existent en python ... une réutilisation pourrait être interessante ?!?)
Je serais même assez chaud pour participer ... (je développe jbrout dans les technos cités (jbrout.free.fr) ... il y aurait moyen d'interconnecter tout ça)
[^] # Re: ++
Posté par manatlan (site web personnel) . Évalué à 2.
[^] # Re: ++
Posté par Damien Metzler . Évalué à 1.
Aujourd'hui, j'ai vu une page de pub pour PixVillage.com, mais leur solution ne me plait pas (et tourne que sous win2k). Donc je pense imaginer un truc qui me plaise... ;-)
Coté python, j'avais déjà commencé à regarder et c'est vrai que ça me permettrai de commencer à faire qqc de concret. Pour le réseau j'avais trouvé twistedmatrix à l'époque assez lourd....
Pour JXTA j'avais aussi regardé un temps, mais comme tu dis ça a l'air d'être assez lent.
Si je trouve une librairie simple pour faire de P2P qui me convienne je l'utiliserai. Sinon, faudra redévelopper le bazarre, autant dire que je préfèrerais trouver qqc de tout fait !
En tout cas si des gens ont des docs sur : comment implémenter du P2P ça m'intéresse même si je trouve une bonne librairie. (une doc du genre : quels sont les pb, comment on les contourne normalement etc...)
[^] # Re: ++
Posté par manatlan (site web personnel) . Évalué à 2.
en 10 lignes, tu fais communiquer un client et un serveur ... sans aucun problèmes ....
Etant le developpeur de jbrout ... ton idée m'a bien fait réfléchir
Car ce problème d'échanges de photos avec des gens : je l'ai aussi ...
Bon si c'est pour unifier un ensemble de photos d'une soirée : chacun partage son répertoire sous bittorrent, et chacun va pomper le répertoire de l'autre : ça devrait fonctionner tout seul ...
Le p2p simple : à 2, chacun, en client serveur : qui va piocher des photos chez l'autre est déjà plus interessant ... (j'imagine la structure des répertoire partagés, et les thumbnails affichés de par et d'autres)
(en python, avec twistedmatrix, et wxpython, en moins de 10h tu montes un proto fonctionnel, pour se connecter à 2 ... je suis assez tenté pour le fun)
Mais en ce qui me concerne, et qui devrait être assez vite réalisé : je vais intégré un serveur http dans jbrout, qui présentera les albums/photos de jbrout ... ainsi le partage pourrait déjà être réaliser de façon simplissime ...
[^] # Re: ++
Posté par Damien Metzler . Évalué à 1.
Mon truc c'est que je dispose d'un serveur tournant 24h/24 et c lui qui héberge mes photos. Dans l'architecture que je vois, j'imagine un partie serveur avec un présentation web d'un coté et une interface pour client de type lourd et une partie client lourd de type jbrout (mais qui ne me parait pas indispensable pour le moment.... désolé)
Le serveur web utiliserait alors la partie dont j'ai l'idée qui permet de faire du P2P entre plusieurs serveur de même type. Gallery propose la notion de miroir mais ce n'est pas suffisant à mon gout....
# Je l'ai fait :-)
Posté par spongurex . Évalué à 2.
Le fonctionnement est plutôt basique mais j'ai essayé de faire en sorte que ce soit facilement évolutif, j'ai donc séparé au maximum l'interface du reste.
Mon projet utilise les classes Common CPP, donc il fonctionne parfaitement sous Windows et GNU/Linux. Il devrait normalement fonctionner sur BSD et Mac mais je n'ai pas les moyen de vérifier (surtout Mac, c'est beau mais c'est cher).
Pour le moment, l'interface est console, on recherche un fichier puis on le télécharge mais rajouter une interface graphique par dessus le tout ça devrait pas être trop dur normalement.
PS : Attention, je ne suis pas un programmeur de génie alors certaines personnes risquerai de hurler en voyant comment j'ai fait communiquer les threads entre eux. :-)
[^] # Re: Je l'ai fait :-)
Posté par LeMagicien Garcimore . Évalué à 1.
Ça peut pas être pire que ça : ecrire dans un fichier sur le disque dans le thread 1 et lire le même fichier dans le thread 2. An utilisant des sleep pour la synchro. C'est le code pondu par un DUT info indus en stage de fin d'étude. Il a été diplomé...
[^] # Re: Je l'ai fait :-)
Posté par spongurex . Évalué à 2.
(cf http://www.gnu.org/software/commoncpp/docs/refman/html/class_mutex.(...) )
# Zeroconf
Posté par cedric . Évalué à 2.
# p2p
Posté par manatlan (site web personnel) . Évalué à 2.
et j'ai réalisé un script python qui une fois lancé est un serveur HTTP qui sert des pages HTML/CSS d'albums et de photos ...
un peu comme une gallery photos ... un client n'a plus qu'à se connecter avec son navigateur favori à l'ip du serveur, sur un port spécial ... et peut naviguer à travers les photos du gars/serveur ...
s'il veut en récupérer, il n'a plus qu'à les drag'n'dropper dans son downloader préféré ... et le tour est joué ...
le serveur est setupé en 2 secondes ... faut juste lui fournir le chemin absolu vers un répertoire (qui peut contenir des sous répertoires)
et lancer le binz ...
C'est absolument nickel pour le partage simple, et l'echange de photos ... c'est très vite fait !
Je ferais plus tard une intégration dans "jbrout" ... ce sera encore plus simple à servir ... (en cochant/decochant une checkbox)
je vais fignoler tout ça ... et le mettre dispo en gpl
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.