Bienvenue sur IndexError.

Ici vous pouvez poser des questions sur Python et le Framework Django.

Consultez la FAQ pour améliorer vos chances d'avoir des réponses à vos questions.

Meilleur moyen de dev un chat Web

+4 votes

J'ai passé quelques heures à chercher la meilleure façon de dev un chat pour site web, avec python et Django.
Mais entre les libs arrêtées depuis deux ans sur github, et les bibliothèques de lib pour Django, je ne sais plus où donner de la tête.

De plus j'ai lu que Django n'était pas la meilleure solution web pour implémenter un chat. Or c'est de loin le framework que je préfère, et même avec une charge de travail plus importante, je préfèrerais dev sous Django.

Des idées ?

demandé 26-Jan-2015 par yuuzhanvog (132 points)
edité 26-Jan-2015 par max

Pourrais tu tout de même indiquer les lib/ app ? Parce-que y'a qd même django-ajax-chat ou django-socketio dans le genre

Tiens c'est pas "censé" être "off-topic" ce genre de sujet sur les SO-like ?

4 Réponses

+8 votes
 
Meilleure réponse

Je vais finir par me faire flagger comme spammer mais crossbar.io + autobahn est idéal pour ça aussi :)

  • pur Python;
  • PUB/SUB pour propager les messages;
  • tout asynchrone pour les perfs;
  • clients JS dispo pour le faire marcher dans le browser;
  • event loop intégrable dans les GUI pour faire des clients lourds.

En prime, si tu as besoin de plus tard ajouter de la compatibilité avec d'autres protocoles comme IRC, twisted propose des adapters qui sont compatibles.

répondu 26-Jan-2015 par Sam (5,000 points)
edité 27-Jan-2015 par max

Même avis que Sam, Django est inadapté dans ce genre d'application.
Crossbar est parfait pour cela.

ça aurait ete cool d'avoir un badge "spammer" :) just kidding!

+4 votes

Bon ma réponse est un peu HS, mais perso je monterais plutot des chat rooms dans un serveur xmpp et ensuite ferait du pur javascript avec stopheJS par exemple: https://github.com/strophe/strophejs

Ensuite django ne me parrait pas super adapté en effet pour faire ce genre de trucs.
Si tu ne veux pas de xmpp, va aussi voir des solutions autours de wamp: http://autobahn.ws/python/wamp/programming.html

répondu 26-Jan-2015 par Shadock (286 points)

Jabberd est une solution très solide. On l'a mis en place avec Max une fois. Et ça a le bénéfice d'avoir des clients déjà tout fait.

+1 vote

Encore que la question soit très ouverte, voici une solution de plus, mais qui exclus l'usage de django aussi, avec twisted http://twistedmatrix.com/documents/12.0.0/core/examples/#auto1 un client et serveur irc

répondu 26-Jan-2015 par foxmask (2,892 points)
+1 vote

J'ai construit/architecturé un chat ( en SAAS ) . Et ce n'est pas un projet facile. J'ai commencé avant qu'autobahn soit envisageable donc il peut s'agit d'une meilleure solution.
En tout cas, la clef c'est les websockets et leur support dans le framework. Tornado du fait de son architecture a depuis longtemps un support des websocket. Flask en a un depuis quelques temps, mais je n'ai pas testé. Django ? rien vu sur le sujet.

PS : je suis pour que sam offre un bière chaque fois qu'il nous spam avec autobahn. C'est pure mauvaise fois, hein, c'est juste que j'aime bien qu'on m'offre des bières.

répondu 28-Jan-2015 par Lionel Barret

Putain avec les 6000 vues / j du blog, ça ma me couter la peau duc.

...