2013-07-15 4 views
1

Je construis un site web destiné aux appareils mobiles. J'utilise JQuery mobile pour la plupart de l'interface utilisateur/UX.Strophe à utiliser dans Mobile

Je rencontre actuellement des difficultés pour intégrer stropheJS afin de pouvoir utiliser correctement le site sur des appareils mobiles. Ci-dessus est un simple extrait du code montre si Strophe est connecté avec succès, il affichera l'interface de discussion.

Lorsque j'ai testé le code ci-dessus à l'aide du navigateur de bureau, tout s'est bien passé. Strophe peut se connecter à la salle, lister tous les participants et, surtout, discuter avec les autres. Cependant, les choses se compliquent quand je l'essaie en utilisant le navigateur dans les appareils mobiles. Je reçois toujours le message d'alerte "Rien ne se passe" indiquant que la Strophe n'est ni CONNECTEE ni DECONNECTEE.

Est-ce que quelqu'un sait pourquoi cela se passe? Si seulement il y a une application comme firebug pour mobile.

+0

Are êtes-vous sûr que votre serveur XMPP est accessible depuis votre mobile? C'est certainement une façon d'obtenir Strophe dans un statut indéfini. –

Répondre

1

Je suppose que je devrais répondre à ma propre question.

Mon implémentation de xmpp (openfire) dépend fortement de flxhr (pour contourner la CORS ou Cross Domain Request). Ce que fait flxhr est d'injecter silencieusement un objet flash dans le document DOM, ce qui signifie que les périphériques sur lesquels le plugin flash n'est pas installé ne pourront pas le traiter.

Comme la plupart d'entre nous le savent, la plupart des appareils mobiles ne sont plus équipés de Flash. Par conséquent, l'utilisation de flxhr n'est pas une option viable.

Je trébuche sur ce plugins OpenFire Websocket qui donne exactement ce que je veux. En ce moment, je suis toujours en train d'enrouler ma tête autour de cette chose.

Une façon de tester si votre version de OpenFire a ce plugin ou non est simplement en pointant votre navigateur pour

[votre domaine-dot-tout]: 7070/ws (Par défaut, le suffixe serait " ws "mais cela peut être changé en vous connectant à votre panneau de contrôle openfire et aller à l'onglet websocket

Malheureusement, il y a peu de documentation ou d'exemple sur la façon d'implémenter ceci.Ainsi, si quelqu'un a une excellente référence à ce sujet s'il vous plaît le partager

À la vôtre

+0

Bonjour, avez-vous terminé votre application? Je fais une application qui a des exigences très similaires à celles que vous avez mentionnées. Je suis nouveau pour XMPP. Avez-vous trouvé un moyen ou un cadre pour faire des choses XMPP via websocket? Strophe doit-elle utiliser flxhr? – yuyue007

+0

@ yuyue007 Oui, j'ai terminé les applications. J'ai fini par utiliser (et fortement modifié) Candy IO (vous pouvez google XMPP candy d'ailleurs). Si vous connaissez JavaScript, il ne devrait pas y avoir de problème. Cependant, en raison de la nature des appareils mobiles, il semble impossible de développer une application de discussion sur le Web pour mobile. Les appareils mobiles auront un certain délai pour éteindre automatiquement leur service (c'est-à-dire tourner l'écran, suspendre toute connectivité réseau et autres) après une certaine période de temps. Cela aura un grand impact sur l'expérience de l'utilisateur car ils devront se reconnecter lorsque l'écran est éteint. – Jeremy

+0

@ yuyue007 (cont'd) Et il est très difficile d'atténuer cette situation car votre application de chat serait alors exécutée à partir du navigateur. – Jeremy

Questions connexes