[Obm] ActiveSync autodiscover - Opush - OBM 2.3
Bonjour, J'utilise OBM 2.3.19 et en particulier Opush qui fournit une interface ActiveSync pour des clients mobiles Android et iPhone. Je suis en train de tester un nouveau client ActiveSync et celui-ci refuse de fonctionner. J'ai donc sniffe le traffic de ce client pour voir ce qui se passait, et j'ai realise qu'il faisait une requete DNS sur autodiscover.mondomaine.com En faisant un peu de google, il semble que les serveurs exchange mettent a disposition une interface XML "Autodiscover". J'ai donc cherche a voir si OBM pouvait imiter ce comportement, et je suis tombe sur cette page : http://obm.org/doku.php?id=opush_autodiscover A priori ca a donc l'air supporte, et plutot simple a configurer, mais malheureusement chez moi, ca ne semble pas fonctionner. J'ai du rajouter les deux lignes ProxyPassMatch (?i:/autodiscover) http://_YOUR_OPUSH_SERVER_:8082/opush/Autodiscover/ ProxyPassReverse /autodiscover http://_YOUR_OPUSH_SERVER_:8082/opush/Autodiscover/ a mon fichier de conf apache, en remplacant bien _YOUR_OPUSH_SERVER_ par 127.0.0.1 (opush et obm-ui sont sur la meme machine). Cependant, cela ne fonctionne toujours pas, et lorsque j'essaie d'acceder a la page manuellement, jetty me renvoie une erreur 404. Autodiscover serait-il seulement supporte dans la branche 2.4 d'OBM ? Mon client a l'air d'avoir absolument besoin de reussir a faire le autodiscover pour pouvoir se connecter en ActiveSync, c'est pourquoi j'aimerais pouvoir le faire marcher sur mon installation. Cordialement, ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] Plus de synchronisation suite mise à jour en 2.4.1.2
Bonjour Vince, Les erreurs que présente votre fichier //var/log/apache/obm-error.log /doivent datées d'une synchronisation faite lorsque le votre fichier de configuration d'apache était encore invalide. Les traces que vous avez envoyées par rapport l'utilisateur qui ne voit pas son agenda n'ont pas de problème. Pour avoir plus de détails, veuillez recréer le compte sur le téléphone qui pose problème après avoir activé les logs dans le fichier //etc/opush/logback.xml/ comme ceci : Pouvez-vous aussi vérifier que le l'application calendrier du téléphone de l'utilisateur est bien configuré pour afficher les informations relatives au compte opush. Merci, Thomas On 11/20/2012 04:07 PM, Vince wrote: J'ai également ça dans le fichier /var/log/apache/obm-error.log : [Tue Nov 20 16:00:00 2012] [error] [client 93.28.85.198] (70007)The timeout specified has expired: proxy: error reading status line from remote server localhost [Tue Nov 20 16:00:00 2012] [error] [client 93.28.85.198] proxy: Error reading from remote server returned by /Microsoft-Server-ActiveSync Et toujours pour le fichier /var/log/opush/opush.log, la partie correspondante à l'utilisateur qui n'a pas son agenda : 16:04:00.046 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t/c/r/]:query = User=sbarrey&DeviceId=Appl8500586C3NP&DeviceType=iPhone&Cmd=Ping, initial = true, resume = false, m = POST, num = 807 16:04:00.056 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t/c/r/]:Login success sbar...@cire.fr ! 16:04:00.059 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t15/cPing/r807/sbar...@cire.fr]:policy used = 220132048 16:04:00.061 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t15/cPing/r807/sbar...@cire.fr]:incoming query 16:04:00.063 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t/c/r/]:query = User=sbarrey&DeviceId=Appl8500586C3NP&DeviceType=iPhone&Cmd=Ping, initial = false, resume = true, m = POST, num = 805 16:04:00.064 [DEBUG] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$ed365877} [t14/cPing/r805/sbar...@cire.fr]:continuation 16:04:00.064 [DEBUG] {org.obm.push.impl.ResponderImpl} [t14/cPing/r805/sbar...@cire.fr]:response: send response Et autre information : les contacts se synchronisent bien, mais pas l'agenda !!! Le 19/11/2012 17:01, Vince a écrit : Thomas, En fait, il y a des comptes qui ne se synchronisent pas, que ce soit avec un iphone ou un android. La synchro avec le connecteur fonctionne bien. J'avais même un utilisateur qui avait énormément de doublons. J'ai du faire le ménage et supprimer plus de 1600 évènements redondants. Cela m'était déjà arrivé avec la migration en 2.4 et j'avais déjà fait du ménage. Dans le log ci-dessous, à quoi correspond "col1" ??? Merci pour votre aide. Vincent * Anglais - détecté * Français * Français -- Thomas Hilaire Développeur LGS/OBM/R&D +33 6 43 65 66 03 -- GROUPE LINAGORA 74-80 rue Roque de Fillol 92800 Puteaux +33 (0)8 10 25 12 51 +33 (0)6 79 60 12 91 thila...@linagora.com -- La présente transmission contient des informations confidentielles appartenant à Linagora, exclusivement destinées au(x) destinataire(s) identifié(s) ci-dessus. Si vous n'en faites pas partie, toute reproduction, distribution ou divulgation de tout ou partie des informations de cette transmission, ou toute action effectuée sur la base de celles-ci vous sont formellement interdites. Si vous avez reçu cette transmission par erreur, nous vous remercions de nous en avertir et de la détruire de votre système d'information. The present transmission contains privileged and confidential information belonging to Linagora, exclusively intended for the recipient(s) thereabove identified. If you are not one of these aforementioned recipients, any reproduction, distribution, disclosure of said information in whole or in part, as well as any action undertaken on the basis of said information are strictly prohbited. If you received the present transmission by mistake, please inform us and destroy it from your messenging and information systems. ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] Plus de synchronisation suite mise à jour en 2.4.1.2
Alors il semble que vous rencontrez bien là un bug. Votre base de donnée contient des doublons sur les évènements, voici comment les effacer : 1) Trouver l'identifiant de votre utilisateur : SELECT userobm_id FROM UserObm WHERE userobm_login = '*USER_LOGIN*'; -- remplacer USER_LOGIN par celui de votre utilisateur 2) Effacer les doublons pour un utilisateur : DELETE FROM DeletedEvent WHERE deletedevent_id NOT IN (SELECT MAX(deletedevent_id) FROM DeletedEvent WHERE deletedevent_user_id =* USER_ID* GROUP BY deletedevent_event_ext_id,deletedevent_user_id) AND deletedevent_user_id =*USER_ID*; -- remplacer USER_ID par l'entier trouvé à la requête précédente La synchronisation devrait alors fonctionner de nouveau pour cet utilisateur. Une version de la requête permet de nettoyer ces doublons pour tous les utilisateurs, mais celle ci peut malheureusement être très longue à s'exécuter. La voici : DELETE FROM DeletedEvent WHERE deletedevent_id NOT IN (SELECT MAX(deletedevent_id) FROM DeletedEvent GROUP BY deletedevent_event_ext_id,deletedevent_user_id); Est-ce que cela corrige votre problème ? Cordialement, Thomas On 11/21/2012 04:32 PM, Vince wrote: Bonjour Thomas, Ci-joint le fichier opush.log avec plus de log. Je ne l'envoi qu'à vous car il peut y avoir des données confidentielles. Le contenu de ce fichier log se répète à chaque fois que je lance la synchro !! Et oui, j'ai bien fait le tour des options. J'ai créé son compte sur mon Android. Le problème n'est donc pas lié au smartphone mais bien à son compte. Surement quelque chose qui ne vas pas dans son agenda. Sachant qu'après la mise à jour de notre serveur OBM, il s'était retrouvé avec environ dix doublons par évènements sur toute la durée de l'utilisation de son agenda. En espérant que vous mettrez le doigt dessus ;))) Cordialement Vincent. Le 21/11/2012 15:25, Hilaire Thomas a écrit : Bonjour Vince, Les erreurs que présente votre fichier //var/log/apache/obm-error.log /doivent datées d'une synchronisation faite lorsque le votre fichier de configuration d'apache était encore invalide. Les traces que vous avez envoyées par rapport l'utilisateur qui ne voit pas son agenda n'ont pas de problème. Pour avoir plus de détails, veuillez recréer le compte sur le téléphone qui pose problème après avoir activé les logs dans le fichier //etc/opush/logback.xml/ comme ceci : Pouvez-vous aussi vérifier que le l'application calendrier du téléphone de l'utilisateur est bien configuré pour afficher les informations relatives au compte opush. Merci, Thomas -- Thomas Hilaire Développeur LGS/OBM/R&D +33 6 43 65 66 03 -- GROUPE LINAGORA 74-80 rue Roque de Fillol 92800 Puteaux +33 (0)8 10 25 12 51 +33 (0)6 79 60 12 91 thila...@linagora.com -- La présente transmission contient des informations confidentielles appartenant à Linagora, exclusivement destinées au(x) destinataire(s) identifié(s) ci-dessus. Si vous n'en faites pas partie, toute reproduction, distribution ou divulgation de tout ou partie des informations de cette transmission, ou toute action effectuée sur la base de celles-ci vous sont formellement interdites. Si vous avez reçu cette transmission par erreur, nous vous remercions de nous en avertir et de la détruire de votre système d'information. The present transmission contains privileged and confidential information belonging to Linagora, exclusively intended for the recipient(s) thereabove identified. If you are not one of these aforementioned recipients, any reproduction, distribution, disclosure of said information in whole or in part, as well as any action undertaken on the basis of said information are strictly prohbited. If you received the present transmission by mistake, please inform us and destroy it from your messenging and information systems. ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] Plus de synchronisation suite mise à jour en 2.4.1.2
Un grand MERCI Thomas !!! :-) Les évènements se synchronisent. Ci-dessous le résultat des commandes qui se sont déroulées en moins d'une seconde (notre base est d'environ 150 utilisateurs et quelques smartphones) Pour l'utilisateur qui avait le problème : obm=# DELETE FROM DeletedEvent WHERE deletedevent_id NOT IN (SELECT MAX(deletedevent_id) FROM DeletedEvent WHERE deletedevent_user_id = 94 GROUP BY deletedevent_event_ext_id,deletedevent_user_id) AND deletedevent_user_id = 94; DELETE 137 Pour tout le monde : obm=# DELETE FROM DeletedEvent WHERE deletedevent_id NOT IN (SELECT MAX(deletedevent_id) FROM DeletedEvent GROUP BY deletedevent_event_ext_id,deletedevent_user_id); DELETE 5430 Par contre, j'ai encore un message d'erreur dans le fichier opush.log et toujours pour le même utilisateur : 10:26:53.102 [ERROR] {o.o.p.ActiveSyncServlet$$EnhancerByGuice$$d4576bb3} [t16/cSync/r378/sbar...@cire.fr]:null java.util.NoSuchElementException: null at java.util.LinkedList$ListItr.next(LinkedList.java:698) ~[na:1.6.0_26] at com.google.common.collect.Iterators.getOnlyElement(Iterators.java:337) ~[guava-12.0.jar:na] at com.google.common.collect.Iterables.getOnlyElement(Iterables.java:272) ~[guava-12.0.jar:na] at org.obm.push.mail.imap.ImapMailboxService.fetchBodyStructure(ImapMailboxService.java:628) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.EmailViewPartsFetcherImpl.getMimeMessage(EmailViewPartsFetcherImpl.java:130) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.EmailViewPartsFetcherImpl.fetch(EmailViewPartsFetcherImpl.java:97) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.imap.ImapMailboxService.fetch(ImapMailboxService.java:174) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.MailBackendImpl.fetchMails(MailBackendImpl.java:320) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.MailBackendImpl.getDataDelta(MailBackendImpl.java:309) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.mail.MailBackendImpl.getChanged(MailBackendImpl.java:287) ~[push-mail-2.4.1.2.jar:na] at org.obm.push.ContentsExporter.getChanged(ContentsExporter.java:69) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.SyncHandler.doUpdates(SyncHandler.java:250) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.SyncHandler.handleDataSync(SyncHandler.java:417) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.SyncHandler.computeSyncState(SyncHandler.java:400) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.SyncHandler.doTheJob(SyncHandler.java:384) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.SyncHandler.process(SyncHandler.java:166) ~[push-module-2.4.1.2.jar:na] at org.obm.push.handler.WbxmlRequestHandler.process(WbxmlRequestHandler.java:125) ~[push-module-2.4.1.2.jar:na] at org.obm.push.ActiveSyncServlet.processActiveSyncMethod(ActiveSyncServlet.java:235) ~[push-module-2.4.1.2.jar:na] at org.obm.push.ActiveSyncServlet.service(ActiveSyncServlet.java:153) ~[push-module-2.4.1.2.jar:na] at org.obm.push.ActiveSyncServlet$$EnhancerByGuice$$d4576bb3.CGLIB$service$1() [guice-3.0.jar:na] at org.obm.push.ActiveSyncServlet$$EnhancerByGuice$$d4576bb3$$FastClassByGuice$$e7be8c23.invoke() [guice-3.0.jar:na] at com.google.inject.internal.cglib.proxy.$MethodProxy.invokeSuper(MethodProxy.java:228) [guice-3.0.jar:na] at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72) [guice-3.0.jar:na] at org.obm.annotations.transactional.TransactionalInterceptor.managerTransaction(TransactionalInterceptor.java:88) [annotations-2.4.1.2.jar:na] at org.obm.annotations.transactional.TransactionalInterceptor.invoke(TransactionalInterceptor.java:74) [annotations-2.4.1.2.jar:na] at com.google.inject.internal.InterceptorStackCallback$InterceptedMethodInvocation.proceed(InterceptorStackCallback.java:72) [guice-3.0.jar:na] at com.google.inject.internal.InterceptorStackCallback.intercept(InterceptorStackCallback.java:52) [guice-3.0.jar:na] at org.obm.push.ActiveSyncServlet$$EnhancerByGuice$$d4576bb3.service() [guice-3.0.jar:na] at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) [servlet-api-2.5.jar:na] at com.google.inject.servlet.ServletDefinition.doService(ServletDefinition.java:263) [guice-servlet-3.0.jar:na] at com.google.inject.servlet.ServletDefinition.service(ServletDefinition.java:178) [guice-servlet-3.0.jar:na] at com.google.inject.servlet.ManagedServletPipeline.service(ManagedServletPipeline.java:91) [guice-servlet-3.0.jar:na] at com.google.inject.servlet.FilterChainInvocation.doFilter(FilterChainInvocation.java:62) [guice-servlet-3.0.jar:na] at org.eclipse.jetty.continuation.ContinuationFilter.doFilter(Contin
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
Bonjour Francois, La fonction d'autodiscover ne fonctionne qu'avec la version 2.4 d'opush. Si vous souhaitez le mettre en oeuvre, n'hésitez pas à nous faire part de vos retours, nous n'avons que très peu d'expérience d'utilisation de cette fonction. Cordialement, -- Matthieu Baechler Le lundi 19 novembre 2012 à 16:49 +0100, Francois Goudal a écrit : > Bonjour, > > J'utilise OBM 2.3.19 et en particulier Opush qui fournit une interface > ActiveSync pour des clients mobiles Android et iPhone. > Je suis en train de tester un nouveau client ActiveSync et celui-ci > refuse de fonctionner. > J'ai donc sniffe le traffic de ce client pour voir ce qui se passait, et > j'ai realise qu'il faisait une requete DNS sur autodiscover.mondomaine.com > En faisant un peu de google, il semble que les serveurs exchange mettent > a disposition une interface XML "Autodiscover". J'ai donc cherche a voir > si OBM pouvait imiter ce comportement, et je suis tombe sur cette page : > http://obm.org/doku.php?id=opush_autodiscover > > A priori ca a donc l'air supporte, et plutot simple a configurer, mais > malheureusement chez moi, ca ne semble pas fonctionner. > J'ai du rajouter les deux lignes > >ProxyPassMatch (?i:/autodiscover) > http://_YOUR_OPUSH_SERVER_:8082/opush/Autodiscover/ >ProxyPassReverse /autodiscover > http://_YOUR_OPUSH_SERVER_:8082/opush/Autodiscover/ > > a mon fichier de conf apache, en remplacant bien _YOUR_OPUSH_SERVER_ par > 127.0.0.1 (opush et obm-ui sont sur la meme machine). > Cependant, cela ne fonctionne toujours pas, et lorsque j'essaie > d'acceder a la page manuellement, jetty me renvoie une erreur 404. > > Autodiscover serait-il seulement supporte dans la branche 2.4 d'OBM ? > > Mon client a l'air d'avoir absolument besoin de reussir a faire le > autodiscover pour pouvoir se connecter en ActiveSync, c'est pourquoi > j'aimerais pouvoir le faire marcher sur mon installation. > > Cordialement, > > ___ > Obm mailing list > Obm@list.obm.org > http://list.obm.org/mailman/listinfo/obm ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
Le mardi 27 novembre 2012 à 10:36 +0100, Francois Goudal a écrit : > Bonjour Matthieu, [...] > De plus, Si j'essaie de connecter un iPhone avec ActiveSync, je le vois > bien faire des requetes autodiscover dans les logs Apache, mais pour > autant, l'iPhone n'obtient pas l'information necessaire, puisqu'il finit > par me demander l'adresse du serveur (ce qu'il est justement normalement > cense recevoir via autodiscover). Donc cela confirme que l'autodiscover > ne fonctionne pas. > > J'aimerais bien continuer a debugguer cela, mais je ne sais plus > vraiment ou regarder. > - Je ne peux pas vraiment sniffer le traffic pour voir la requete et > la reponse, puisque c'est du SSL Le lien entre le serveur apache et le serveur opush ne doit pas être en SSL, vous pouvez faire un tcpdump à ce niveau. > - Je ne trouve pas d'exemple de requete POST que je pourrais > eventuellement envoyer moi meme Vous pouvez essayer avec ce morceau de XML : http://schemas.microsoft.com/exchange/autodiscover/mobilesync/requestschema/2006";> VOTRE_ADRESSE_EMAIL http://schemas.microsoft.com/exchange/autodiscover/mobilesync/responseschema/2006 > - Je ne vois pas ou trouver des logs qui pourraient m'interesser sur > le serveur OBM Voir la page : http://www.obm.org/wiki/logs Vous pouvez activer REQUEST.FULL et vous devriez avoir les logs de l'autodiscover. > Auriez-vous une idee de comment je peux essayer de progresser pour faire > fonctionner cela ? N'hésitez pas à nous communiquer plus d'infos si vous êtes toujours bloqué. -- Matthieu Baechler ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
Le mardi 27 novembre 2012 à 11:16 +0100, Francois Goudal a écrit : > Re-bonjour, > > Merci pour ces informations, qui m'ont permis de progresser dans mes > tests. > [...] > On voit donc bien la reponse ici. Par rapport au message d'erreur > retourne par l'outil de microsoft, il semblerait que : > > ne soit pas valide, et qu'il s'attende en fait a avoir un xmlns qui > soit specifie. C'est peut-être un problème, effectivement. Quel périphérique utilisez-vous ? Nous avions testé plusieurs téléphone avec succès dans cette version. > Cette page web de microsoft semble egalement indiquer cela : > http://blogs.msdn.com/b/exchangedev/archive/2011/07/08/autodiscover-for-exchange-activesync-developers.aspx > > > Si je voulais faire des modifs dans le code d'opush pour adapter le > format de la reponse XML afin qu'elle soit consideree valide par > l'outil, par ou me conseillez-vous de commencer a regarder ? C'est relativement simple : - la classe AutodiscoverHandler prend en charge les requêtes d'autodiscover - la classe AutodiscoverProtocol prend en charge la partie XML des requêtes et réponses, dans encodeResponse, vous verrez la ligne suivante : Document autodiscover = DOMUtils.createDoc(null, "Autodiscover"); Le premier paramètre est le namespace à utiliser. - enfin, je vous conseille de mettre également à jour le code de test dans AutodiscoverHandlerTest. Attention, ces tests sont annotés comme étant "@Slow", ils ne s'exécutent que lors de la phase "integration-test" de maven N'hésitez pas à nous solliciter si vous avez besoin d'aide pour cette modification, nous nous efforcerons de vous guider et de l'intégrer au plus vite. Cordialement, -- Matthieu Baechler ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
[Obm] OBM, Roundcube et lemonldap
Bonjour, Nous aimerions intégrer le webmail roundcube avec OBM et Lemonldap. Nous avons bien le lien qui apparaît dans OBM -> webmail et qui renvoie bien sur la page d'authentification de Roundcube. Comment dire à Roundcube que l'on est déjà bien authentifié auprès de lemonldap ??? J'ai consulté les tutos sur le site d'OBM mais pas mieux. Y'a t'il une procédure qui explique de A à Z comment le paramétrer ?? OBM version 2.4.1.2 Lemonldap version 1.2.2 Rouncube version 0.8.1 (version OBM) Debian lenny 5.0.10 Merci pour vos réponse. CDT Vincent. ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
Bonjour Matthieu, Merci pour votre reponse. Entre temps, j'ai installe un OBM 2.4.1.2 tout neuf pour faire des tests, afin d'envisager une migration de mon "vieux" OBM 2.3 si j'arrive a faire marcher Autodiscover et donc mon client activesync. Maintenant, lorsque j'essaie d'acceder manuellement a l'URL d'autodiscover, je n'ai plus une erreur 404, j'ai une autre erreur, mais c'est du au fait que je fais une simple requete GET alors qu'il faudrait plutot lui envoyer un peu de XML via une requete POST. J'ai ensuite utilise l'outil en ligne de Microsoft pour tester le fonctionnement d'un serveur Exchange. Il permet, entre-autres, de tester le bon fonctionnement du service autodiscover. https://www.testexchangeconnectivity.com Lorsque je l'execute, il me passe tous les tests initiaux : - il trouve bien autodiscover.mondomaine.tld et resoud l'adresse vers l'IP de mon serveur OBM - il arrive a se connecter en HTTPS dessus - il est content par rapport au certificat SSL Mais malheureusement, il me dit ensuite que la reponse XML n'est pas valide (There is an error in XML document - was not expected.) De plus, Si j'essaie de connecter un iPhone avec ActiveSync, je le vois bien faire des requetes autodiscover dans les logs Apache, mais pour autant, l'iPhone n'obtient pas l'information necessaire, puisqu'il finit par me demander l'adresse du serveur (ce qu'il est justement normalement cense recevoir via autodiscover). Donc cela confirme que l'autodiscover ne fonctionne pas. J'aimerais bien continuer a debugguer cela, mais je ne sais plus vraiment ou regarder. - Je ne peux pas vraiment sniffer le traffic pour voir la requete et la reponse, puisque c'est du SSL - Je ne trouve pas d'exemple de requete POST que je pourrais eventuellement envoyer moi meme - Je ne vois pas ou trouver des logs qui pourraient m'interesser sur le serveur OBM Auriez-vous une idee de comment je peux essayer de progresser pour faire fonctionner cela ? Cordialement, On 27/11/12 10:08, Matthieu Baechler wrote: > Bonjour Francois, > > La fonction d'autodiscover ne fonctionne qu'avec la version 2.4 d'opush. > > Si vous souhaitez le mettre en oeuvre, n'hésitez pas à nous faire part > de vos retours, nous n'avons que très peu d'expérience d'utilisation de > cette fonction. > > Cordialement, > ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
Re-bonjour, Merci pour ces informations, qui m'ont permis de progresser dans mes tests. Voici le log opush lorsqu'une requete d'autodiscover est faite par l'outil de test de microsoft : 10:17:29.022 [INFO ] {REQUEST.FULL} [t15/cautodiscover/r0/f...@satcom1.eu]: "http://schemas.microsoft.com/exchange/autodiscover/mobilesync/requestschema/2006" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> f...@satcom1.eu http://schemas.microsoft.com/exchange/autodiscover/mobilesync/responseschema/2006 10:17:29.024 [INFO ] {REQUEST.FULL} [t15/cautodiscover/r0/f...@satcom1.eu]: en:us f...@satcom1.eu MobileSync https://obm.satcom1.eu/Microsoft-Server-ActiveSync https://obm.satcom1.eu/Microsoft-Server-ActiveSync CertEnroll https://obm.satcom1.eu/Microsoft-Server-ActiveSync CertEnrollTemplate On voit donc bien la reponse ici. Par rapport au message d'erreur retourne par l'outil de microsoft, il semblerait que : ne soit pas valide, et qu'il s'attende en fait a avoir un xmlns qui soit specifie. Cette page web de microsoft semble egalement indiquer cela : http://blogs.msdn.com/b/exchangedev/archive/2011/07/08/autodiscover-for-exchange-activesync-developers.aspx Si je voulais faire des modifs dans le code d'opush pour adapter le format de la reponse XML afin qu'elle soit consideree valide par l'outil, par ou me conseillez-vous de commencer a regarder ? Cordialement, On 27/11/12 10:58, Matthieu Baechler wrote: Le mardi 27 novembre 2012 à 10:36 +0100, Francois Goudal a écrit : Bonjour Matthieu, [...] De plus, Si j'essaie de connecter un iPhone avec ActiveSync, je le vois bien faire des requetes autodiscover dans les logs Apache, mais pour autant, l'iPhone n'obtient pas l'information necessaire, puisqu'il finit par me demander l'adresse du serveur (ce qu'il est justement normalement cense recevoir via autodiscover). Donc cela confirme que l'autodiscover ne fonctionne pas. J'aimerais bien continuer a debugguer cela, mais je ne sais plus vraiment ou regarder. - Je ne peux pas vraiment sniffer le traffic pour voir la requete et la reponse, puisque c'est du SSL Le lien entre le serveur apache et le serveur opush ne doit pas être en SSL, vous pouvez faire un tcpdump à ce niveau. - Je ne trouve pas d'exemple de requete POST que je pourrais eventuellement envoyer moi meme Vous pouvez essayer avec ce morceau de XML : "http://schemas.microsoft.com/exchange/autodiscover/mobilesync/requestschema/2006"> VOTRE_ADRESSE_EMAIL http://schemas.microsoft.com/exchange/autodiscover/mobilesync/responseschema/2006 - Je ne vois pas ou trouver des logs qui pourraient m'interesser sur le serveur OBM Voir la page : http://www.obm.org/wiki/logs Vous pouvez activer REQUEST.FULL et vous devriez avoir les logs de l'autodiscover. Auriez-vous une idee de comment je peux essayer de progresser pour faire fonctionner cela ? N'hésitez pas à nous communiquer plus d'infos si vous êtes toujours bloqué. -- ___ Obm mailing list Obm@list.obm.org http://list.obm.org/mailman/listinfo/obm
Re: [Obm] ActiveSync autodiscover - Opush - OBM 2.3
On 27/11/12 11:54, Matthieu Baechler wrote: > [...] >> On voit donc bien la reponse ici. Par rapport au message d'erreur >> retourne par l'outil de microsoft, il semblerait que : >> >> ne soit pas valide, et qu'il s'attende en fait a avoir un xmlns qui >> soit specifie. > C'est peut-être un problème, effectivement. Quel périphérique > utilisez-vous ? > > Nous avions testé plusieurs téléphone avec succès dans cette version. > Ce test a ete fait en utilisant l'outil de microsoft qui permet de tester le bon fonctionnement du service autodiscover d'un serveur exchange. https://www.testexchangeconnectivity.com Il ne s'agit donc pas d'un "vrai" client, mais d'un outil de test officiel, donc j'en conclus que si lui ne fonctionne pas, il y a de fortes chances que certains autres clients echouent egalement pour la meme raison. Mon objectif ultime, derriere ces tests, serait d'utiliser Outlook 2013 comme client. Une des nouveautes d'Outlook 2013 est l'ajout du support du protocole ActiveSync. J'ai donc voulu tenter de le faire synchroniser avec mon OBM via OPush. En faisant quelques traces wireshark, j'ai pu voir que ce client essaie systematiquement de faire un Autodiscover, et si jamais il n'y arrive pas, il n'essaie meme pas de se connecter a un serveur via ActiveSync, c'est donc pour cela que j'essaie de faire en sort que l'Autodiscover fonctionne correctement sur mon serveur OBM (et que l'implementation de microsoft fonctionne avec, ce qui pour le moment, ne semble pas etre le cas, d'apres leur outil de test). >> Cette page web de microsoft semble egalement indiquer cela : >> http://blogs.msdn.com/b/exchangedev/archive/2011/07/08/autodiscover-for-exchange-activesync-developers.aspx >> >> >> Si je voulais faire des modifs dans le code d'opush pour adapter le >> format de la reponse XML afin qu'elle soit consideree valide par >> l'outil, par ou me conseillez-vous de commencer a regarder ? > C'est relativement simple : > > - la classe AutodiscoverHandler prend en charge les requêtes > d'autodiscover > > - la classe AutodiscoverProtocol prend en charge la partie XML des > requêtes et réponses, dans encodeResponse, vous verrez la ligne > suivante : > Document autodiscover = DOMUtils.createDoc(null, "Autodiscover"); > Le premier paramètre est le namespace à utiliser. > > - enfin, je vous conseille de mettre également à jour le code de test > dans AutodiscoverHandlerTest. Attention, ces tests sont annotés comme > étant "@Slow", ils ne s'exécutent que lors de la phase > "integration-test" de maven > > N'hésitez pas à nous solliciter si vous avez besoin d'aide pour cette > modification, nous nous efforcerons de vous guider et de l'intégrer au > plus vite. > > Cordialement, > La ou j'aurai effectivement besoin d'un peu d'aide, c'est pour etre capable de recompiler opush et le deployer sur mon serveur. Modifier le code ne devrait pas etre un probleme, mais je ne suis pas familier avec le java, et en particulier son environnement de compilation et le deploiement de servlets. Dommage que ca ne soit pas ecrit en C/C++ ;) En gros, pour resumer, voila ce que j'ai fait pour l'instant : Sur ma machine j'ai recupere le paquet source pour obm-opush : apt-get source obm-opush Cela m'a donc recupere l'ensemble des sources du paquet obm-java. J'ai ensuite installe les build dependancies : apt-get build-dep obm-java Puis j'ai essaye, sans modifier le code, pour le moment, de generer les paquets debs (donc, entre autres, obm-opush) : dpkg-buildpackage -us -uc -rfakeroot Malheureusement, cela ne fonctionne pas : Tests in error: testClosedSession(com.linagora.obm.sync.TestQueueManager): Server not started testDurableSubscription(com.linagora.obm.sync.TestQueueManager): Server not started testDurableSubscription2(com.linagora.obm.sync.TestQueueManager): Server not started testConsumeLater(com.linagora.obm.sync.TestQueueManager): Server not started testTwoConsumers(com.linagora.obm.sync.TestQueueManager): Server not started Tests run: 6, Failures: 0, Errors: 5, Skipped: 0 [INFO] [ERROR] BUILD FAILURE [INFO] [INFO] There are test failures. Please refer to /root/obm-java-2.4.1.2/message-queue/target/surefire-reports for the individual test results. [INFO] [INFO] For more information, run Maven with the -e switch [INFO] [INFO] Total time: 58 seconds [INFO] Finished at: Tue Nov 27 15:03:03 CET 2012 [INFO] Final Memory: 25M/60M [INFO] make: *** [build] Error 1 dpkg-buildpackage: error: debian/rules build gave error exit status 2 De plus, cette solution n'est pas ideale pour tester facilement des modifications, car on reco