Google
  Web www.gpspassion.com


GpsPasSion LIVE!
www.flickr.com
This is a Flickr badge showing public photos from GpsPasSion Live !. Make your own badge here.

www.NaviBlog.com



Versions

Links/Liens




Portal/Portail
Rechercher

- -

Polls/Sondages
Sondage
Pour vous guider sur la Route :
GPS Mobile (SEM)
GPS Intégré
Smartphone
Autre
Voter  -  Résultat des votes
Votes : 1360




Club GpsPasSion
Soutenez le site!

USA: (US$)
EUROPE: (€)
Guide Paypal


GpsPasSion Forums
Home | Profile | Register/Enregist. | Active Topics | Search/Recherche | FAQ
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 Programmation GPS et Logiciels en "Beta"
 eVB
 Code eVB pour Connexion serveur web ?
 New Topic  Reply/Répondre
 Printer Friendly
Author  Topic Next Topic  

kymahri

2 Posts

Posted - 09 août 2010 :  09:50:47  Show Profile  Reply with Quote
Bonjour à tous.

Je suis actuellement en train de développer une application en eVB, pour des GPS Trimble Juno SC, elle a a 99% fini, il ne me reste plus qu'une seul chose à mettre en place, un export vers un serveur web.

Voila mon souci, mon application crée des fichier .txt régulièrement et je doit les envoyer sur un serveur web pour qu'elles soient centralisées. Le GPS dispose évidement d'une connexion 3G et d'un abonnement chez Orange.

Mais voila impossible de réaliser la connexion, tant que je suis connecté par ActiveSync aucun souci l'envoi ce fait sans problème, mais dès que je me déconnecte du pc impossible de mettre en place la connexion.

Pour effectuer ma connexion j'utilise un control Winsock

Voici un bout de mon code :

Call wFile.Open("\My Documents\pile_txt\fichier_export.txt", fsModeInput, fsAccessRead, fsLockReadWrite)   
    'j'ouvre le fichier text a transferer ouvert en mode lecture
        
        While Not wFile.EOF
         wLigne = wLigne & vbCrlf & wFile.LineInputString   
    'je stocke tout ce qui est écrit dedans dans une variable
        Wend
        
        Call wFile.Close
        
        DestUrl = "monserveur.fr"
        
        WinSock1.RemoteHost = DestUrl
        WinSock1.RemotePort = 80         
   'je me connecte au serveur
        Call WinSock1.Connect
        
        
        filename = ("fichier_export.txt")   
        'je met le nom de fichier a transferer
    
        strBoundary = RandomAlphaNumString(32)    
      'je fait appel a une fonction pour créer une chaine de caractère aléatoire
    
        strBody = "--" & strBoundary & vbCrlf                                       
                    'je crée ma requete
        strBody = strBody & "Content-Disposition: form-data; 
name=""" & "uploaded" & """; filename=""" & filename & """" & vbCrlf
        strBody = strBody & "Content-Type: text/plain" & vbCrlf
        strBody = strBody & wLigne & vbCrlf
        strBody = strBody & vbCrlf & "--" & strBoundary & "--"
        
        wTaille = Len(strBody)
        
        strhttp = "POST /uploader.php? HTTP/1.0" & vbCrlf
        strhttp = strhttp & "Host: " & DestUrl & vbCrlf
        strhttp = strhttp & "Content-Type: multipart/form-data, boundary=" & strBoundary & vbCrlf
        strhttp = strhttp & "Content-Length: " & wTaille & vbCrlf & vbCrlf                            
        strhttp = strhttp & strBody
        
        WinSock1.SendData strhttp           
    'j'envoi ma requete


Si vous avez des idées sur ce qui cloche...

Merci d'avance

note admin (jlb)
J'ai modifié le texte car les lignes étaient trop longues

Ads


barbudor

France
1579 Posts

Posted - 13 août 2010 :  21:15:05  Show Profile  Visit barbudor's Homepage  Reply with Quote
Si je comprend bien ton code marche en active sync mais pas en 3G.
J'aurais donc tendance à soupçonner non pas ton code mais des restrictions sur ta liaison 3G.

Tu passes pas le port 80 et tu utilise un requête POST qui me semble correcte.
A savoir que généralement, (mais ça dépend de ton type d'abonnements) les connexions 3G de mobiles passent par un proxy forcé et non pas une connexion directe (même si tu n'as pas configuré de proxy, l'opérateur filtre les requêtes). Ce n'est pas le cas sur des abonnements 3G pur data.
Donc si ta requête n'est pas parfaite, ou ne plait pas au proxy, il ne vas pas la transmettre. çà pourrait être a cause du fichier join par exemple. Orange pourrait refuser des upload POST via 3G.
Par ActiveSync le PC sert juste de routeur donc tu obtient une vrai connexion socket (même si ton PC a un proxy de réglé car ce réglage n'influe que sur les logiciels PC). Dans ce cas même si ta requête POST est que vaguement correcte mais qu'elle plait à ton

Petit test simple : as tu essayé depuis le navigateur de ton mobile une requête de type POST.
Avec un simple formulaire ?
Avec un transfert de fichier ?
Cela devrait te permettre d'isoler si le problème vient de ton accès réseau 3G ou de ton code.
Par exemple essaye d'uploader un fichier texte a partir du navigateur de ton mobile vers dl.free.fr.

Quel est ton type d'abonnement ?

A+

Modérateur Forum Traceurs GPS et Suivi GPS Temps Réel, son Index (français) et Les bons plan SIM pour traceurs GPS
Moderator Forum Live GPS Tracking Systems and its Index (english)
CartoExploreur3D | OziPC+OziCE(iPaq314) | TTGoLive950 | Carminat TomTom Live | Tracker Coban GPS-102
Go to Top of Page

kymahri

2 Posts

Posted - 15 août 2010 :  20:05:28  Show Profile  Reply with Quote
Merci de ta réponse.

Pour répondre à tes interrogations, mon problème ne se situe pas vraiment au niveau de l'envoie, mais plutôt de la connexion qui ne se fait pas. Donc d'après ce que tu me dit j'aurai tendance a privilégier un soucis sur les proxi.
C'est vraiment a ce niveau là que le problème ce trouve, en effet si je force mon GPS a ce connecter à internet (en lançant internet explorer par exemple) après plus de souci ma connexion et mon envoi se font sans problèmes.

Donc j'ai plus ou moins réglé mon problème en bidouillant, avec la dll coredll je force mon programme a lancer internet explorer, il est donc obligé de ce connecter, une fois la connexion en place j'envoie la requête.
C'est vraiment du bricolage mais ça a au moins le mérite de fonctionner.

Edited by - kymahri on 15 août 2010 20:06:22
Go to Top of Page

barbudor

France
1579 Posts

Posted - 16 août 2010 :  17:51:50  Show Profile  Visit barbudor's Homepage  Reply with Quote
Ok. Ce n'est donc pas un problème de proxy mais d'ouverture de la liaison data.
Ça marche aussi comme ça sur mon HTC.

Il doit y avoir une API a appeler pour établir la connexion Data.


Modérateur Forum Traceurs GPS et Suivi GPS Temps Réel, son Index (français) et Les bons plan SIM pour traceurs GPS
Moderator Forum Live GPS Tracking Systems and its Index (english)
CartoExploreur3D | OziPC+OziCE(iPaq314) | TTGoLive950 | Carminat TomTom Live | Tracker Coban GPS-102
Go to Top of Page
   Topic Next Topic  
 New Topic  Reply/Répondre
 Printer Friendly
Jump To:
GpsPasSion Forums © 2002-2013_GpsPasSion/Manzanite Go To Top Of Page
This page was generated in 0,8 seconds. Powered By: Snitz Forums 2000 Version 3.4.05