2016-03-09 2 views
4

J'essaie de trouver une bonne combinaison de bibliothèques pour gérer une communication en temps réel (client/serveur) en utilisant Haxe (seulement Haxe, pas openfl ou autre base de framework sur Haxe) ciblant flash (swf) pour le client et pas de préférence pour le serveur, sauf neko neko.Haxe + réseau en temps réel

Le but est de faire un tchat simple et de mettre une représentation d'affichage de tous les clients dans une zone. Chaque client peut déplacer sa représentation dans cette zone, et l'autre voit le mouvement.

je trouve un certain Lib faire ceci:

Mais je ne suis pas sûr de la meilleure façon d'adopter. Avez-vous des suggestions/remarques/astuces pour choisir la meilleure solution?

+0

Si vous voulez communiquer avec d'autres langues, Apache Thrift a des liens avec HaXe pendant un certain temps. Je dis juste. – JensG

Répondre

5

Avertissement: J'ai écrit la bibliothèque que je partage ici.

Ma nouvelle bibliothèque mphx peut être en mesure de vous aider. Il peut gérer les «salles» de connexions, permet la messagerie client à serveur et le serveur à la messagerie sous la forme d'événements, et le meilleur de tous, est multi-plateforme. Il fonctionne également sur le web avec des websockets. Il était à l'origine une extension de HxNet, mais je voulais qu'il soit plus facile à utiliser. La connexion et l'envoi d'un «message» avec des données ne prennent que quelques lignes.

J'ai quelques exemples dans le dépôt github, le plus simple étant le 'basic' example. L'une de vos demandes est qu'elle ne repose pas sur l'une des grandes bibliothèques (open fl, etc) et mphx ne le fait pas. L'exemple de base le prouve et ne fonctionne que dans le terminal. Cela étant dit, il peut être utilisé avec haxeflixel, pour cela vous pouvez voir the other examples.

Il semble que votre objectif principal est d'avoir un mode multijoueur simple et graphique. Pour cela vous pouvez regarder le 'movement' haxeflixel example.

La documentation est encore un peu écrémé, et le code est alpha, donc il pourrait changer ou casser. Cela peut probablement être dit pour la plupart des bibliothèques que vous avez énumérées. La meilleure façon de l'installer est comme ça

haxelib git mphx https://github.com/5Mixer/mphx.git

Ce ne sera pas installer les exemples bien. Pour les exécuter, soit télécharger le référentiel sous forme de fichier zip, soit simplement le git clone, et aller dans le dossier examples.

Bibliothèque: https://github.com/5Mixer/mphx

Vieux video que j'ai fait. Un peu démodé, le plus probable. Vidéo 1: https://www.youtube.com/watch?v=07J0wLXwH0g Vidéo 2: https://www.youtube.com/watch?v=MUx2CUtsnTU

+1

ça sonne bien! Je vais essayer votre bibliothèque avec l'espoir que cela fonctionne avec notre technologie (mais il semble)! Mec, je pense que tu as fait ma journée! grand merci ! – yansucc

+0

@ Mixerman123 Je regarde cet exemple [serveur] (https://github.com/5Mixer/mphx/blob/master/example/basic/server/Main.hx) et le [client] (https://github.com/5Mixer/mphx/blob/master/example/basic/client/Main.hx) dont il parle. Sur le serveur, je peux voir qu'une "pièce" est en cours de création, mais il n'est pas trop clair comment un client se joint à une pièce particulière, AFAICT il vient juste de rejoindre le serveur. Serait-il possible de créer un exemple où les clients peuvent rejoindre différentes salles, et les messages envoyés uniquement aux autres clients dans la même pièce, mais pas ceux qui peuvent être connectés mais appartiennent à d'autres pièces? – bguiz

+0

@bquiz Bien sûr! Je viens de faire un exemple alors. https://github.com/5Mixer/mphx/tree/master/example/basic/rooms Ce n'est pas un exemple fantastique, mais cela fonctionne. Essayez de créer beaucoup de clients et de voir comment il envoie un message à toute la salle. À l'avenir, je pourrais créer une application de chat avec des chambres, mais cela ira bien pour le moment. Les chambres sont vraiment juste des réseaux de connexions. Gardez à l'esprit que tout ceci est encore alpha et que l'API de la pièce peut grandir et changer. – 5Mixer