FNO - Forum non officiel HTC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

Menu pour démarrage GPS (Mortscript)

2 participants

Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Menu pour démarrage GPS (Mortscript)

Message par maTTaw Mer 1 Avr 2009 - 21:27

J'utilise TomTom mais bien sur ça marche pour n'importe quel autre logiciel puisqu'on fait ce qu'on veut dans Mortscript.

C'est une évolution de ce que j'ai déjà vu ici avec la mise à fond du son, la rotation, etc. j'y ai ajouté le support Bluetooth et le choix au démarrage.

Donc quand je lance mon script j'obtiens ça :

Menu pour démarrage GPS (Mortscript) Screen01s


Je choisis de lancer TomTom en mode normal ou en mode Bluetooth.
Une fois TomTom lancé il vérifie que :
- Le son est toujours à fond
- La rotation correspond à celle du lancement. (La rotation se fait dans le menu avec G-config)
- Le bluetooth reste activé et non en veille (statut + diffusion d'un son vide toutes les 4s)
- Que le téléphone est bien en charge sinon avertissement tous les 5mn environ par un son.

Toute cette gestion suite à un test grandeur nature en vacances à moto, le Bluetooth se mettait en veille et je n'entendais pas la 1ère info (d'ou la diffusion du son vide en boucle).
Si je perd le Bluetooth en m'éloignant de la moto, je préfère sécuriser en le vérifiant et réactivant au besoin toutes les 4 secondes également.
Quand le téléphone chauffe en plein soleil il finit par ne plus se recharger, je le sais maintenant dans l'oreillette.

Option téléchargement des itinéraires : je fais des itinéraires sur PC avec itnconv, je les upload sur le net et ça les télécharge automatiquement sur le téléphone grace à cette option (très pratique).
On voit la liste des itinéraires en bas du menu.

Les autres entrées du menu sont des logiciels liés au GPS.

Voici le script associé :

Code:
# Initialisation des variables
# ===============================================================================
  Call InitVariables
 
# Menu de demarrage
# ===============================================================================
  Call Demarrage

# Sortie
# ===============================================================================
  Call Sortie


# ===============================================================================
# =============================== FONCTIONS =====================================
# ===============================================================================

Sub InitVariables
# ===============================================================================

  TomTomRun = 1
  DecompteSecteur = 0
  DossierScr = "\Stockage interne2\My Documents\Mes scripts\"
  DossierNav = "\Program Files\Navigator\itn\"
  NomZipItn  = "I.Tomtom.zip"
 

EndSub
# ===============================================================================


Sub Demarrage
# ===============================================================================

  Titre            = "TomTom 7915"
Description      = "Bienvenue dans TomTom Navigator."
  TableauChoix    = ""
  TableauChoix[1]  = " .:: TomTom"
  TableauChoix[2]  = " .:: TomTom Bluetooth"
  TableauChoix[3]  = " .:: Mise a jour des itineraires"
  TableauChoix[4]  = " .:: Ephemerides GPS"
  TableauChoix[5]  = " .:: Vitesse Limite"
  TableauChoix[6]  = " .:: 3D Tracking"
  TableauChoix[7]  = ""
  TableauChoix[8]  = "Liste des itineraires disponibles"
  TableauChoix[9]  = "----------------------------------------------------------------------------------"

  Recherche      = DossierNav & "I.*.itn"
  Position        = 10
  Limite          = Position - 1
  ForEach Resultat in files (Recherche)
      TableauChoix[Position] = SubStr( Resultat,30) 
      Position              = Position + 1
  EndForEach
 
  ChoixMenu = Choice( Titre,Description,"2",0,TableauChoix)
 
  If (ChoixMenu = 1)
      Bluetooth  = 0
      TestSect  = 0
      Call DemarrageTomTom
  EndIf
 
  If (ChoixMenu = 2)
      Bluetooth  = 1
      TestSect  = 1
      Call DemarrageTomTom
  EndIf
 
  If (ChoixMenu = 3)
      Call DLItineraire
      Call Demarrage
  EndIf
 
  If (ChoixMenu = 4)
      RunWait( "\Windows\QuickGPS.exe" )
      Call Demarrage
  EndIf
 
  If (ChoixMenu = 5)
      Run( "\Stockage interne2\Program Files\VitesseLimite\VitesseLimite.exe" )
  EndIf
 
  If (ChoixMenu = 6)
      Run( "\Program Files\3dtracking\3Dtracking.exe" )
  EndIf

  If (ChoixMenu > 6)
      Call Demarrage
  EndIf
 
EndSub
# ===============================================================================


Sub DemarrageTomTom
# ===============================================================================

  # On sauvegarde la rotation ecran au moment du choix de lancement
  Rotation = RegRead("HKLM","\System\GDI\Rotation\", "Angle")

  # Demarrage TomTom Navigator
  Run( "\Program Files\Navigator\TomTom Navigator.exe" )

  # routines tournant pendant l'execution de TomTom
  Call Veille

EndSub
# ===============================================================================
 
 
Sub Veille
# ===============================================================================
# Verifie pendant que TomtTom tourne :
# - Que la rotation est respectee
# - Que le bluetooth fonctionne si besoin et que le telephon est sur secteur
# - Que le volume est au max
 
  While ( TomTomRun = 1 )

      # Rotation
      If ( WndActive("TomTom Navigator") = 1 )
        Rotate(Rotation)
      EndIf

      # Volume au max
      SetVolume 255

      # Verifie que le telephone est en charge
      If ( TestSect = 1 )
        DecompteSecteur = DecompteSecteur + 1       
        If (DecompteSecteur = 60)
            DecompteSecteur  = 0
            EnCharge = ExternalPowered()
            If ( EnCharge = 0 )
              PlaySound (DossierScr & "TestSect.wav")
            EndIf
        EndIf
      EndIf
 
      # Bluetooth
      If ( Bluetooth = 1 )
 
        # Statut du BT
        RegReadDWord HKLM,System\State\Hardware,Bluetooth,StatutBT

        # Activation Bluetooth
        If (StatutBT <> 13 )
            ModeBT = 2
            Callscript (DossierScr & "BluetoothST.mscr")
        EndIf
       
        # Son vide pour maintenir le casque stereo eveille
        PlaySound (DossierScr & "Vide.wav")
      EndIf

      # Attente 4 secondes
      Sleep 4000

      # test existence TomTom
      TomTomRun = ProcExists("TomTom Navigator.exe")
     
  EndWhile

EndSub
# ===============================================================================


Sub DLItineraire
# ===============================================================================
 
  Delete  ( DossierNav & NomZipItn )

  Connect("Internet")
  Download("http://**********/******" & NomZipItn , DossierNav & NomZipItn)
  CloseConnection
 
  ExistenceZip = FileExists( DossierNav & NomZipItn )
  If (ExistenceZip = 1)
    Delete  ( DossierNav & "I.*.itn" )
    UnzipAll( DossierNav & NomZipItn, DossierNav )
    Delete  ( DossierNav & NomZipItn )
  EndIf

 
EndSub
# ===============================================================================


Sub Sortie
# ===============================================================================

  # Retablissement du son a une valeur faible
  SetVolume 50

  # Arret du Bluetooth
  If (Bluetooth = 1)
    ModeBT = 1
    Callscript (DossierScr & "BluetoothST.mscr")
  EndIf
 
  # Rotation paysage
  Rotate(0)

  Exit

EndSub
# ===============================================================================

Ceux qui ont tout lu, bravo il y a un appel à un second script qui gère juste le bluetooth. Quand on le lance en mode 2, ça allume le bluetooth et ça connecte l'oreillette Stéréo (A2DPToggle) avec une petite vibration à la fin. En cas d'échec le script est arrêté avec message d'erreur.
Si on relance le script en mode 1 le Bluetooth est arrêté :

Code:
# mode d'appel
# ModeBT = 1        -> Bluetooth OFF
# ModeBT = 2        -> bluetooth ON
# ModeBT non défini -> switch

# Chemin A2DPToggle
A2DP = "\Stockage interne2\Program Files\Teksoft\A2DPToggle\a2dp.exe"

# Initialisation ModeBT si necessaire
If (ModeBT eq "")
  ModeBT = 0
EndIf

Switch (ModeBT)
  Case (0)
      Call BluetoothSwitch
      Call Sortie
  Case (1)
      Call BluetoothOFF
      Call Sortie
  Case (2)
      Call BluetoothOFF
      Call BluetoothON
EndSwitch 



# ===============================================================================
# =============================== FONCTIONS =====================================
# ===============================================================================



Sub BluetoothSwitch
# ===============================================================================

  # Statut du BT
  RegReadDWord HKLM,System\State\Hardware,Bluetooth,StatutBT
 
  If ( StatutBT < 9 )
 
      Call BluetoothON
  Else
      Call BluetoothOFF
  EndIf

EndSub
# ===============================================================================

Sub BluetoothOFF
# ===============================================================================

  # Arret Stereo 
  Runwait (A2DP, " -a2dp:off")
 
  # Arret Bluetooth
  Runwait (A2DP, " -bluetooth:off") 

EndSub
# ===============================================================================

Sub BluetoothON
# ===============================================================================

  # Lancement Bluetooth
  Runwait (A2DP, " -bluetooth:on")
  Sleep 500

  # Lancement stereo : 3 essais
  Repeat (3)

        # activation A2DPToggle
        Runwait (A2DP, " -a2dp:on")

        # Statut du bluetooth
        RegReadDWord HKLM,System\State\Hardware,Bluetooth,StatutBT
       
        If (StatutBT > 9)
          Call Sortie
        EndIf

  EndRepeat
   
  # Erreur : Connexion impossible
  Runwait (A2DP, " -bluetooth:off")
  Vibrate(50)
  Sleep  50
  Vibrate(50)
  Sleep  50
  Call Sortie

EndSub
# ===============================================================================

Sub Sortie
# ===============================================================================


  Vibrate(50)
  Exit

EndSub
# ===============================================================================


Voila, si ça intéresse du monde, tant mieux


Dernière édition par maTTaw le Ven 5 Juin 2009 - 12:18, édité 2 fois (Raison : MAJ script)
maTTaw
maTTaw
Nouveau membre
Nouveau membre

Masculin
Nombre de messages : 47
Age : 47
Appareil(s) possédé(s) : Diamond 1
Opérateurs : SFR
Date d'inscription : 20/02/2009

http://mattaw.free.fr/motors

Revenir en haut Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Re: Menu pour démarrage GPS (Mortscript)

Message par cbgti Mar 2 Juin 2009 - 14:08

Excuse moi si c'est hors sujet, mais coment as tu fait pour remplacer l'icone "Windows" du menu "Démarrer" par une icone "Htc"? Shocked

Ca m'interresse beaucoup là.... Very Happy
cbgti
cbgti
Membre
Membre

Masculin
Nombre de messages : 211
Age : 44
Localisation : STRASBOURG (67)
Appareil(s) possédé(s) : HTC Diamond Black
Opérateurs : Bouygues Telecom (Néo.2)
Date d'inscription : 21/05/2009

Revenir en haut Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Re: Menu pour démarrage GPS (Mortscript)

Message par Invité Mar 2 Juin 2009 - 14:55

Excellent ce script !
Merci pour le partage.
Anonymous
Invité
Invité


Revenir en haut Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Re: Menu pour démarrage GPS (Mortscript)

Message par maTTaw Ven 5 Juin 2009 - 11:53

cbgti a écrit:Excuse moi si c'est hors sujet, mais coment as tu fait pour remplacer l'icone "Windows" du menu "Démarrer" par une icone "Htc"? Shocked

Ca m'interresse beaucoup là.... Very Happy

c'est la ROM Mikado qui doit faire ça, j'ai rien changé. D'ailleurs j'avais même pas remarqué Smile
maTTaw
maTTaw
Nouveau membre
Nouveau membre

Masculin
Nombre de messages : 47
Age : 47
Appareil(s) possédé(s) : Diamond 1
Opérateurs : SFR
Date d'inscription : 20/02/2009

http://mattaw.free.fr/motors

Revenir en haut Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Re: Menu pour démarrage GPS (Mortscript)

Message par maTTaw Ven 5 Juin 2009 - 12:16

jojo.larfeu a écrit:Excellent ce script !
Merci pour le partage.

De rien, je l'ai mis à jour suite à des modifs que j'ai jugé pratique pour mon utilisation. Je dis pas que c'est bon pour tout le monde mais ça peut donner des idées Wink
maTTaw
maTTaw
Nouveau membre
Nouveau membre

Masculin
Nombre de messages : 47
Age : 47
Appareil(s) possédé(s) : Diamond 1
Opérateurs : SFR
Date d'inscription : 20/02/2009

http://mattaw.free.fr/motors

Revenir en haut Aller en bas

Menu pour démarrage GPS (Mortscript) Empty Re: Menu pour démarrage GPS (Mortscript)

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum