Étape 2: Comment s’y retrouver des données
Il y a longtemps que j’ai eu un Conseil de développement de MeLabs appelé le laboratoire-XT. C’était pour les microcontrôleurs pic et il avait prise en charge pour DTMF et CallerID. J’ai été surpris que personne n’a vraiment des exemples pour le monde de l’Arduino. Il y a un là-bas, répété de nombreuses fois, mais il ne fonctionne tout simplement pas pour moi.
À l’aide de la page d’informations MeLabs ILA comme guide je reproduis pour construire un ordinateur d’état simple pour analyser le paquet entrant. Il ne peut pas sembler simple, mais j’ai essayé pour s’allonger pour que vous pouvez suivre le long dans le code. Seulement, j’ai implémenté la MDMF puisque c’est ce qui est dans ma maison. Le SDMF est plus simple mais n’est pas un réel dump pour aller en.
Si quelqu'un m’envoie un log terminal d’un message SDMF que je l’ajouterai au code. Je peux relire les décharges dans le décodeur pour le tester.
Et c’est la première chose à faire. Obtenir une image de données. J’ai utilisé un prolifique USB à carte de dérivation série pour surveiller les données de la goupille. J’ai utilisé Putty pour enregistrer quelques appels et Midnight Commander pour afficher le journal au format hexadécimal. Il y a beaucoup d’autres terminaux et les téléspectateurs. Utilisez votre favori.
Il y a beaucoup de bruit sur la ligne, mais il ne font aucun doute ces 30 U dans une rangée. Juste au cas où je rate une partie que j’ai tester > 25 U reçu. Je puis recherchez l’identificateur de 0 x 80 du paquet MDMF. C’est où vous chercher un 0 x 04 Si vous voulez aussi faire SDMF décodage.
J’ai ensuite enregistrer la longueur du paquet donc je sais quand ont été réalisés.
Il y a 5 message ID à surveiller et j’ai traiter chacun d’eux séparément. Il se termine par une somme de contrôle, mais j’ai ignoré que pour l’instant. Peut-être plus tard. Je préfère voir un nom déformé qu’un message d’erreur...
Le message date semble être locale au fournisseur. Un serveur voip locaux a été éteint par 1 h mais c’était une erreur d’économies de lumière du jour sur le serveur lui-même.
J’ai essayé une couple de différents fournisseurs et les messages ne sont pas toujours dans le même ordre. Parfois sa « Date – Nom – numéro » et sur d’autres, c’était « Date – Number – Name ». YMMV