IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Protocole SNTP : affichage de l'heure


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par défaut Protocole SNTP : affichage de l'heure
    Bonjour,

    Je récupère la valeur SNTP d'un serveur => comment faire pour la transformer de façon à ce que la valeur soit lisible par un humain ?

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    les date sont souvent sous forme de long...ou date heute minutes second
    passe déjà par le protocole http.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par défaut
    je ne comprends pas ce que tu veux dire par passer par le protocole HTTP...

    Pour l'instant j'arrive à récupérer l'heure avec une variable de 64 bits en hexa. Les 32 premiers bits donnent les secondes qui se sont écoulées depuis 1900 et les 32 autres bits donnent les fractions de secondes (c'est ce que j'ai lu sur le net).
    => une résolution horaire au centième de seconde me suffit.
    => l'heure affiché ne sera pas forcément l'heure actuelle : ça pourra être l'heure d'un événement....

    Le problème est que l'heure est données à partir du méridien de Greenwich donc il faut faire un décalage horaire en fonction de la situation géographique et gérer les heures d'hivers/été...
    => est-il possible de détecter la configuration horaire de l'OS qui ouvre la page web et ainsi faire la bonne conversion ?
    si ce n'est pas possible, je pensais autrement donner la possibilité au client de configurer une variable qui permettrait d'identifier sa situation géographique...

    il existe quoi comme variable en js pour gérer une durée ? qu'elle est l'unité ?
    il existe quoi comme variable en js pour gérer une date ? qu'elle est l'unité/référence ?

  4. #4
    Expert confirmé
    Avatar de le_chomeur
    Profil pro
    Développeur informatique
    Inscrit en
    Février 2006
    Messages
    3 653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 3 653
    Par défaut
    je te conseille plutôt d'utiliser un langage SERVEUR pour récupérer cette information ou d'utiliser un webservice qui te renverrais l'heure

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 249
    Par défaut
    Effectivement, il vaut mieux que je fasse la conversion coté serveur.

    Par contre, mon serveur est un µC et je dois donc faire l'algo de conversion : toute aide sera le bien venu.

    => vous connaissez la différence entre NTP et SNTP : la valeur retournée est bien la même (car le codage 64bits dont j'ai parlé est pour le NTP) ?

    Je commence :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Données d'entrée :
    myValTime => 32 bits de poids fort (32bHigh) donnent les secondes et les 32 autres (32bLow) donnes les fractions de secondes.
     
    si myValTime = 0, alors on est le 01/01/1900
     
    calcul :
    NbJours = 32bHigh / (60*60*24)
    Date = 01/01/1900 + NbJours => comment fait-on cette fonction ?
     
    Time = 32bLow  - (NbJours * (60*60*24)) => l'affichage hh//mm/ss ne doit pas être difficile à faire...
     
    centiemeSeconde => convertir 32bLow
     
    => il reste plus qu'a faire la conversion suivant le fuseau horaire
    => donc pour moi les deux points critiques sont :
    - additionner mon nombre de jours à 01/01/1900 pour trouver la date (gérer les années bissextiles)
    - convertir la date suivant le fuseau horaire

    => je suis prennuer pour toute info...

    PS pour les admins : il faudrait peut être déplacer le post, non ?

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Par défaut
    Citation Envoyé par Emcy Voir le message
    je ne comprends pas ce que tu veux dire par passer par le protocole HTTP...
    tu réponds à ta question
    Citation Envoyé par Emcy Voir le message
    PS pour les admins : il faudrait peut être déplacer le post, non ?
    lol

Discussions similaires

  1. [VC++] Affichage de l'heure actuelle.
    Par ksoft dans le forum Visual C++
    Réponses: 4
    Dernier message: 16/08/2006, 12h04
  2. [CR 4.6]Problème affichage une format heur
    Par amazircool dans le forum SAP Crystal Reports
    Réponses: 4
    Dernier message: 08/07/2006, 15h21
  3. [Configuration] affichage selon l'heure du moment
    Par PuppeT mAsTer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 9
    Dernier message: 19/06/2006, 12h32
  4. [Dates] Affichage de l'heure
    Par HwRZxLc4 dans le forum Langage
    Réponses: 17
    Dernier message: 22/05/2006, 15h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo