Repository navigation
SatMe PC Publication web
← Guide SatMe-PC · octobre 2026
SatMe-PC peut pousser ce que fait la station vers votre propre site web : images SSTV et SSDV, planches, rapports d'événement, contacts, vidéos du journal, passages FT8 / FT4, et en option des données en direct (auto-pilote, spectre QO-100, image DATV, station, FT8 / FT4), vos satellites favoris et vos diplômes. Votre site les reçoit comme il veut — un fichier PHP sur un hébergement mutualisé, une extension WordPress, un petit serveur Python ou Node, n'importe quoi qui sait répondre à une requête HTTP. Sans serveur du tout, SatMe-PC peut aussi écrire dans un dossier, pour un site statique ou un outil de synchronisation.
C'est toujours SatMe-PC qui envoie : ça marche derrière la box de la maison, et rien n'est ouvert sur la station — le site ne se connecte jamais au PC.
Le format complet, les exemples et les récepteurs : docs/publication-web.fr.md dans le dépôt (en anglais : publication-web.md).
Publication web est un module de Réglages › Modules, décoché d'origine, et aucun profil ne l'active (ni ne le décoche quand il est coché). Tant qu'il est décoché, SatMe-PC n'envoie rien à personne — ni file, ni essai, ni direct — et aucun bouton 🌐 n'apparaît. Voir Modules.
Où : Réglages › Services en ligne › Envoyer vers un site web (une fois le module coché).
- Où envoyer : Adresse web (HTTPS) ou Dossier sur ce PC.
-
L'adresse qui reçoit, de deux façons :
- avec
{type}dedans, remplacé par le type de chaque envoi :https://example.org/api/satme/{type}→…/api/satme/sstv-image; - sans
{type}: tout part à cette même adresse (style webhook), le type dans l'en-têteX-SatMe-Type:https://example.org/satme/recevoir.php.
- avec
-
Le jeton (facultatif, conseillé) : une clé secrète que vous inventez (par exemple
openssl rand -hex 32) et que votre site vérifie, envoyée enAuthorization: Bearer <jeton>. Il reste sur ce PC et n'est jamais réaffiché. -
Tester : SatMe-PC envoie un
ping(rien n'est publié), ou essaie d'écrire dans le dossier. L'envoi n'est prêt qu'après un essai réussi ; une autre adresse, un autre jeton ou un autre dossier se testent à nouveau. - Quoi envoyer : pour chaque genre Sur clic (le bouton 🌐 de chaque élément), Automatique (dès qu'il arrive) ou Jamais. Tout commence à « Sur clic » : rien ne part tout seul tant que vous ne choisissez pas « Automatique ».
http:// (sans S) n'est accepté que vers cette machine ou le réseau local (127.0.0.1, 192.168.…, 10.…, ….local…) ; ailleurs, https:// est obligatoire. Les redirections ne sont pas suivies : mettez l'adresse finale.
| Genre | Type | Bouton 🌐 | En « Automatique » |
|---|---|---|---|
| Images SSTV | sstv-image |
la visionneuse SSTV | chaque image reçue en direct (pas les essais ni les relectures) |
| Images SSDV | ssdv-image |
sous chaque image, Télémesure › Images SSDV (voir SSDV) | dès qu'elle arrive ; renvoyée d'elle-même quand d'autres paquets arrivent, sous la même clé |
| Planches | planche |
page Planche, 🌐 Planche vers le site | celles qui ont des images, 2 min après la dernière image reçue |
| Rapports |
rapport (PDF) |
page Planche, 🌐 Rapport vers le site | — |
| Contacts |
qso (ADIF) |
chaque ligne du carnet (Contacts) | chaque contact ajouté |
| Vidéos du journal |
journal-video (MP4) |
l'éditeur du journal, sous une vidéo faite | — |
| Passages FT8 / FT4 | ft8-passage |
la carte Passages FT8/FT4 sur le site de l'onglet FT8/FT4 (voir FT8 / FT4) | à la fin de chaque passage |
| Un diplôme reçu | diplome-image |
Envoyer le diplôme reçu dans Agenda › Diplômes (voir Diplômes) | jamais : seulement sur ce clic |
Les planches disent tout de leur série : le satellite, l'événement ou la campagne de l'auto-pilote, les dates de la première et de la dernière image, les diapos reçues sur attendues et celles qui manquent, la meilleure image de chaque diapo, les passages qui ont apporté des images (AOS, LOS, élévation max, nombre d'images, 🤖 auto-pilote) avec la vidéo du journal de chacun, et le lien vers leur rapport. Une image SSTV et une vidéo du journal disent leur passage et si l'auto-pilote les a reçues. Un site qui ne connaît pas ces champs facultatifs les ignore.
Sous En direct, chaque partie se coche à part ; rien d'origine :
- Auto-pilote : le prochain passage d'une campagne, la réception en cours, la prochaine image, la dernière image reçue ; pendant un passage, l'image qui arrive toutes les 5 s.
- Spectre QO-100 : le transpondeur étroit vu par le SDR, une ligne par seconde.
- Image DATV : une image réduite et le MER, tant que le récepteur est verrouillé.
- Station : le satellite suivi, où pointent vraiment les antennes, la chaîne de réception en service (« quelque chose émet » : oui ou non, rien de plus).
- FT8/FT4 : chaque créneau FT8 (15 s) ou FT4 (7,5 s) une fois décodé — le satellite du passage (ou la bande), chaque message entendu avec sa fréquence audio, son report, son texte, l'indicatif et le locator, et une petite bande de la cascade pour dessiner un spectrogramme. Seulement des messages entendus sur l'air.
- Satellites favoris : la liste des ★, dès qu'elle change, sinon une fois par heure au plus (pour qu'une page d'accueil les mette en avant).
- Diplômes : ceux suivis dans Agenda › Diplômes et votre progression (« 37/100 locators »), dès qu'ils changent, sinon une fois par jour — jamais les contacts comptés, les noms d'images, les notes ni vos coordonnées.
Seulement des noms, des heures et des mesures — jamais une adresse, un code d'appairage, un mot de passe ou une clé. Pas de file : si le site ne répond pas, SatMe-PC attend et réessaie. Effacer le direct le retire tout de suite du site. Un site qui ne connaît pas un type est laissé tranquille (« non pris en charge par le site »), sans message d'erreur.
Rien ne part de la page elle-même : chaque élément est d'abord copié dans une file sur le disque (dossier site/ des données), envoyé un à la fois, dans l'ordre. Pas de réponse, un délai dépassé ou une erreur du serveur : réessayé après 30 s, 1 min, 2 min… puis toutes les heures, avec le même identifiant d'envoi, même après un redémarrage. Sur la carte : ce qui attend, les dernières réponses, Réessayer maintenant, Vider la file. Un refus du site n'est pas réessayé (un type refusé s'affiche « refusé (403) » dans l'historique) ; un jeton refusé arrête tout jusqu'au prochain test.
Chaque envoi est un POST vers l'adresse réglée, avec les en-têtes X-SatMe-Version: 1, X-SatMe-Type, X-SatMe-Id (un identifiant par envoi, le même d'un essai à l'autre : rien n'est publié deux fois) et, avec un jeton, Authorization: Bearer ….
-
Les médias (images, planches, rapports, contacts, vidéos) :
multipart/form-dataen trois champs —type,meta(une fiche JSON : titre, satellite, heure UTC, mode, votre indicatif et votre locator, le nom, le type, la taille et le SHA-256 du fichier…) etfichier(le fichier). -
Les données (
ping, direct, favoris, diplômes) : un JSON. -
La réponse : n'importe quel 2xx est accepté ; 401 = jeton refusé (tout s'arrête) ; 403 = ce genre n'est pas pris par le site ; 408, 429, 5xx ou pas de réponse = réessayé plus tard. Un
{"erreur": "…"}dans la réponse est montré tel quel sur la carte. - La version ne change que si un récepteur écrit pour la v1 cessait de marcher : ajouter un type ou un champ ne la change pas. Ignorez les champs que vous ne connaissez pas.
Dans le dépôt, docs/exemples/publication-web/ (GPL, à copier et adapter) :
-
recevoir.php: un seul fichier PHP pour un hébergement mutualisé — vérifie le jeton et le type, range chaque fichier avec sa fiche JSON, tient unindex.jsonà jour ; -
recevoir.py: Python 3, bibliothèque standard seulement — la même chose, plus le direct ; sert aussi le dossier en lecture ; -
index.html: une page simple qui litindex.jsonet montre les images, vidéos, documents et contacts.
La sécurité, de votre côté : HTTPS sur Internet, un jeton long et aléatoire comparé en temps constant, une liste des types et des tailles acceptés, des fichiers nommés par vous (jamais d'après le nom reçu), rangés là où le serveur web ne les exécute pas, et chaque texte échappé à l'affichage.
Dossier sur ce PC et un chemin complet (/home/moi/Nextcloud/satme, C:\Users\moi\Sync\satme) ; Tester vérifie qu'on peut y écrire. SatMe-PC y écrit alors chaque élément, avec la même file et les mêmes choix : <type>/<année>/<id>.<ext> et sa fiche .json, un index.json (les 500 derniers), un flux Atom flux.xml, et quand c'est coché direct/direct.json et les images du direct, favoris.json, diplomes.json. Jamais un fichier à moitié : chacun est écrit à côté de sa place, puis renommé. Pour un site statique (Hugo, Jekyll, HTML simple) ou un outil de synchronisation que vous avez déjà (Nextcloud, Syncthing, un miroir rsync ou FTP) — SatMe-PC ne fait jamais de FTP lui-même.
En --demo, seulement vers un site de cette machine (http://127.0.0.1:…), jamais dans un dossier : à essayer avec recevoir.py lancé à côté.
SatMe · free software (GPL-2.0-or-later) · Source code · Issues · 73 de F4IOZ
SatMe
🇬🇧 English
- Home
- Why SatMe
- Installation
- Getting started
- Passes and tracking
- Orbital elements
- Rig control (CAT)
- Audio recording
- SSTV
- METEOR pictures
- Pass journal
- APRS
- Logbook
- Locators and skeds
- QO-100
- SatMe-PC
- Install SatMe-PC
- SatMe-Node (Raspberry Pi)
- Extensions
- SatMe GP server
- What's new
- FAQ
- Privacy
🇫🇷 Français
- Accueil
- Pourquoi SatMe
- Installer SatMe
- Premiers pas
- Passages et suivi
- Éléments orbitaux
- Pilotage du poste (CAT)
- Enregistrement audio
- Images SSTV
- Images METEOR
- Journal des passages
- APRS
- Carnet de trafic
- Locators et skeds
- QO-100
- SatMe-PC
- Installer SatMe-PC
- SatMe-Node (Raspberry Pi)
- Extensions
- Serveur GP SatMe
- Nouveautés
- FAQ
- Confidentialité