Confidențialitate și cookie-uri
Această notă acoperă două lucruri separate: aplicația FoxSDR pe care o instalați și acest site web. Ele colectează date diferite, din motive diferite, și sunt descrise separat mai jos — mai întâi aplicația, pentru că ea este partea care rulează pe propria dvs. mașină. Este scrisă să fie completă, nu scurtă: fiecare câmp pe care oricare dintre ele îl stochează este listat, inclusiv cele pe care majoritatea notelor le omit.
Aplicația: ce trimite
Nu există cont, cheie de licență sau activare, iar FoxSDR nu raportează niciodată nimic despre ce ascultați. Face din proprie inițiativă exact patru tipuri de cereri de rețea: o verificare a actualizărilor; un raport de utilizare anonim, cu un mic semnal „încă rulează” cât timp aplicația este deschisă; un raport de prăbușire sau de blocare după un defect; și — doar când dvs. deschideți magazinul de pluginuri sau apăsați VERIFICĂ ACUM în el — o cerere către catalogul de pluginuri. Fiecare este descrisă mai jos, câmp cu câmp, și fiecare poate fi dezactivată. Trei comutatoare le controlează: SISTEM → Actualizări, SISTEM → Raportare utilizare și SISTEM → Diagnostic. Nicio funcție nu depinde de activarea vreunuia dintre ele și nimic nu vă sâcâie pentru că ați dezactivat unul.
Ce rămâne pe mașina dvs.
Înregistrările dvs., atât audio, cât și I/Q brut, imaginile construite de decodoarele SSTV și de sateliți meteo, tot ce decodează decodoarele, marcajele, planurile de benzi, setările, poziția receptorului și pluginurile instalate sunt fișiere pe propriul disc. Nimic nu le încarcă, iar nicio frecvență pe care o acordați nu părăsește mașina dvs.
Verificarea actualizărilor
O dată la fiecare pornire, aplicația întreabă acest site dacă există o versiune mai nouă. Întreaga cerere este GET /api/update?v= urmat de versiunea pe care o rulați — niciun identificator, niciun id de instalare, niciun cookie și nimic care ar putea fi legat de o cerere ulterioară. Acest server nu scrie nicio înregistrare statistică pentru ea: sunt înregistrate doar afișările de pagini și descărcările de fișiere, iar punctul de acces pentru actualizări nu este niciuna dintre ele. Dezactivați-o din SISTEM → Actualizări și aplicația nu mai contactează niciodată serviciul.
Răspunsul poate conține și un scurt mesaj din partea noastră pentru cei care rulează o versiune mai veche — de exemplu, că o versiune remediază ceva pentru care merită să actualizați — afișat în același banner de actualizare ca notele versiunii. Pentru aceasta nu se trimite și nu se înregistrează nimic în plus: mesajul vine în aceeași cerere de mai sus, la același interval, controlat de același comutator.
Nimic nu este descărcat sau instalat dacă nu apăsați butonul. Dacă îl apăsați, programul de instalare este adus de pe acest site prin HTTPS, iar SHA-256 al lui este verificat față de rezumatul publicat de server înainte ca fișierului să i se dea un nume pe care l-ar putea rula ceva — iar acea aducere este o descărcare obișnuită de pe acest site, deci este înregistrată ca oricare alta, cu adresa IP, locația aproximativă, browserul și sistemul de operare descrise în partea despre site a acestei note.
O copie instalată din Microsoft Store întreabă în schimb Microsoft Store, niciodată acest site (din FoxSDR 0.99.53). O dată la fiecare pornire, dacă este bifat SISTEM → Actualizări → Întreabă Microsoft Store despre actualizări la pornire, FoxSDR întreabă serviciul Store al Windows dacă există un pachet mai nou pentru această copie. În această cerere nu se trimite nimic de la FoxSDR — nicio versiune, niciun identificator: Windows identifică aplicația față de Microsoft prin identitatea pachetului pe care o deține deja, ca în cazul actualizărilor din fundal ale Store. Răspunsul rămâne în aplicație. Nu se descarcă și nu se instalează nimic decât dacă apăsați Instalează din Microsoft Store și confirmați dialogul afișat de Windows; descărcarea și instalarea sunt apoi ale Microsoft, conform declarației de confidențialitate Microsoft. Debifați caseta și Store nu mai este întrebat.
Raportare utilizare
Începând cu versiunea 0.53.0 există un raport de utilizare anonim, în SISTEM → Raportare utilizare. Este activat implicit și îl puteți dezactiva — debifați acea casetă și raportarea se oprește imediat. Se trimite un raport la fiecare pornire, care descrie sesiunea tocmai încheiată, și acesta este tot conținutul lui:
| Trimis | Exemplu | De ce |
|---|---|---|
| Identificator de instalare | 32 de caractere hexazecimale aleatoare | Deosebește 100 de utilizatori de un singur utilizator care pornește aplicația de 100 de ori. Generat aleator pe mașina dvs. la prima rulare, șters când dezactivați raportarea și niciodată derivat din hardware-ul, rețeaua sau numele dvs. |
| Versiunea aplicației | 0.99.42 | Dacă oamenii actualizează. Versiunea alfa pentru Android își raportează propriul build ca 0.98.1-android.4 — un sufix -android.N adăugat la numărul versiunii din care a fost compilată, astfel încât rapoartele ei să nu fie niciodată confundate cu cele ale programului de instalare Windows. |
| Sistem de operare | Windows 10.0.22631, Linux 6.8.0 sau Android 14 | Ce platforme sunt folosite efectiv. Sistemul de operare și numărul lui de build, de kernel sau de versiune, niciodată numele mașinii dvs. sau contul de utilizator. Build-ul Linux (0.99.42) și versiunea alfa pentru Android (0.98.1-android.4) trimit aceleași câmpuri, sub același comutator. |
| Arhitectură | x64 sau arm64 | Ca mai sus. |
| Cum a fost instalat | installer | Unul dintre store (Microsoft Store), installer (instalatorul Windows), appimage sau tarball (descărcările Linux și Raspberry Pi), sau android. Citit din programul în rulare, niciodată înregistrat la instalare. Nu poate distinge foxsdr.com de GitHub, deoarece ambele servesc aceleași fișiere. |
| Prima rulare | 2026-09-29 | Ziua — niciodată ora — în care a fost creat identificatorul de instalare, în UTC. Se șterge împreună cu identificatorul când dezactivați raportarea. Distinge utilizatorii noi de cei vechi. Gol la copiile al căror identificator este mai vechi decât FoxSDR 0.99.47. |
| Prima versiune | 0.99.47 | Versiunea care a creat identificatorul — de la ce descărcare ați început. Se șterge împreună cu el, la fel ca prima rulare. |
| Număr de porniri | 12 | Dacă software-ul este folosit mai mult de o dată. |
| Număr de prăbușiri | 1 | Cât de des cedează. |
| Închideri anormale după cauză, din FoxSDR 0.99.69 | 1, 0, 0, 0 | Numărul de prăbușiri de mai sus include fiecare sesiune încheiată fără o închidere normală — o prăbușire, dar și o fereastră încheiată din Task Manager sau o pană de curent. Aceste patru numere arată care a fost cazul: căzute (FoxSDR a eșuat: s-a prăbușit sau fereastra lui nu mai desena și a fost apoi încheiată), oprite forțat (încheiate din exterior în timp ce funcționau normal — Task Manager, taskkill, un program de instalare, o fereastră de consolă închisă), încheiate de sistem (deconectare sau oprire) și necunoscute (nu s-a înregistrat nimic: Diagnosticul oprit sau o pană de curent). Fiecare închidere anormală se încadrează exact într-una dintre ele. Sunt simple numere, niciodată resetate, ca numărul de prăbușiri: nu se adaugă text de raport, cod de ieșire, nume de modul sau ora din zi. FoxSdr decide pe computerul dvs., la pornirea următoare, pe baza rapoartelor pe care Diagnosticul le scrie deja acolo; cu Diagnosticul oprit nu se citește nimic și fiecare închidere anormală este numărată ca necunoscută. Momentul în care a început sesiunea anterioară este păstrat în fișierul de setări, astfel încât să fie examinate doar rapoartele scrise de atunci; nu este trimis niciodată. |
| Opriri ale afișării, din FoxSDR 0.99.62 | 0 | De câte ori s-a blocat fereastra pentru că driverul de afișare aștepta, și nu FoxSDR — un monitor oprit, o resetare a driverului grafic, o sesiune Desktop la distanță care se reconectează. Este un simplu număr, fără stivă, fără numele driverului și fără ora din zi: raportul unei asemenea blocări rămâne pe mașina dumneavoastră și nu este trimis niciodată. Este numărat doar cât timp sunt activate atât Raportare utilizare, cât și Diagnostic. Pentru ca o blocare pe care o încheiați din bara de activități să fie totuși numărată, numărul este păstrat într-un fișier mic numit telemetry-stalls, lângă fișierul dvs. de setări, împreună cu identificatorul dvs. de instalare, până când serverul a acceptat un raport care îl conține; dezactivarea raportării utilizării elimină fișierul. |
| Contoare de eșecuri, din FoxSDR 0.99.64 | radio_fail.rtlsdr.busy=2 | De câte ori ceva nu a funcționat în tăcere, ca numărători dintr-o listă fixă de tipuri: un radio care nu s-a deschis (driverul și unul dintre opt motive), nicio ieșire de sunet, o actualizare sau o instalare de plugin eșuată, un plugin refuzat la încărcare, o înregistrare care nu a putut porni — și câte radiouri și ieșiri de sunet s-au deschis, pentru ca un eșec să aibă cu ce fi comparat. Cuvinte din lista aceea și numere, niciodată numele unui dispozitiv, un număr de serie, o cale, o frecvență sau vreun text de mesaj. Sunt numărate doar cât timp sunt activate atât Raportare utilizare, cât și Diagnostic, iar câmpul este gol pentru majoritatea oamenilor. |
| Cadre lente și recuperări, din FoxSDR 0.99.65 | slow.rail.250ms=3,recovered.audio=1 | Același câmp mai conține de câte ori fereastra a fost lentă la desenarea unui cadru și în ce parte a desenării — una dintre cele optsprezece părți ale unei liste fixe — și una dintre trei durate: un sfert de secundă, o secundă sau cinci secunde — și de câte ori FoxSDR a întâlnit o defecțiune și a mers mai departe singur, într-unul dintre cele treisprezece locuri ale unei liste fixe: ieșirea de sunet repornită, un radio redeschis după o defecțiune a driverului, o salvare a setărilor eșuată și așa mai departe. Cuvinte din acele liste și numere, niciodată numele unui dispozitiv, un număr de serie, o cale, o frecvență sau vreun text de mesaj. Sunt numărate doar cât timp sunt activate atât Raportare utilizare, cât și Diagnostic, iar câmpul este gol pentru majoritatea oamenilor. |
| Durata sesiunii | 3600 secunde | Dacă sesiunile durează minute sau ore. |
| Model SDR | uhd b200 | Ce radiouri să aibă prioritate. Numerele de serie sunt eliminate înainte de trimitere. |
| Demodulatoarele folosite și cât timp | WFM: 3000s | Ce moduri justifică lucru suplimentar. |
| Panouri deschise | map, decoded | Ce funcții sunt folosite. |
| Pluginuri instalate | ADS-B 1.0.0 | Ce decodoare justifică lucru suplimentar. Un plugin pe care l-ați instalat dintr-un site de pluginuri pe care l-ați adăugat (începând cu FoxSDR 0.99.74) este un plugin montat ca oricare altul: numele și versiunea sa apar aici, adresa site-ului nu. |
Aceasta este lista completă. Este livrată cu aplicația ca PRIVACY.md, iar un test automat verifică conținutul câmp cu câmp, astfel încât un câmp nou nu poate fi adăugat fără ca acel test să eșueze și fără ca ambele documente să fie actualizate. Dezactivarea raportării șterge identificatorul de instalare, așa că, dacă o reactivați vreodată, primiți unul nou, care nu poate fi legat de cel vechi.
Raportul este trimis la pornire, descriind sesiunea deja încheiată, și niciodată la ieșire — un apel de rețea la plecare poate bloca o aplicație pe care cineva încearcă să o închidă, iar un raport scris la ieșire s-ar pierde tocmai în evenimentul care merită cel mai mult numărat. Nimic din răspuns nu este citit și nu declanșează nicio acțiune.
Contoarele de eșecuri, în întregime (din FoxSDR 0.99.64). Câmpul este un text scurt format din perechi kind=count, de exemplu radio_fail.rtlsdr.busy=2 — un RTL-SDR care nu s-a deschis, de două ori, pentru că un alt program îl folosea. FoxSDR construiește fiecare tip dintr-un tabel fix și nu trimite nimic ce nu se află în el, iar serverul care primește elimină tot ce nu se află în același tabel. Când un motiv este citit din ceea ce a spus un driver, FoxSDR alege un cuvânt dintr-o listă fixă și aruncă propoziția. Pentru ca un eșec dintr-o sesiune care apoi se prăbușește să fie totuși raportat, contoarele așteaptă într-un fișier mic numit telemetry-health, lângă fișierul dvs. de setări, împreună cu identificatorul dvs. de instalare, până când serverul a acceptat un raport care le conține; dezactivarea raportării utilizării elimină fișierul.
Cadrele lente și recuperările, în întregime (din FoxSDR 0.99.65). Se află în același câmp și în aceeași formă kind=count. slow.rail.250ms=3 înseamnă trei cadre ale ferestrei care au durat fiecare un sfert de secundă sau mai mult, în partea desenării care este coloana de meniu. Partea este unul dintre optsprezece cuvinte, events, frame-start, pre-draw, plugin-panels, toolbar, rail, spectrum, patch, status, dialogs, polls, saves, render, present, recorder, plugins-reload, startup, other, iar cât de lent a fost este unul dintre trei: 250ms pentru un sfert de secundă până la sub o secundă, 1s pentru o secundă până la sub cinci secunde și 5s pentru cinci secunde sau mai mult. Timpul în care ați răspuns la o solicitare Windows sau ați tras ori redimensionat fereastra este scos și nu este niciodată numărat. recovered.audio=1 înseamnă o dată când FoxSDR a întâlnit o defecțiune și a mers mai departe singur. Cuvântul este unul dintre treisprezece locuri, audio, reopen, srcthread, vendorcall, ringdrop, dspexc, cfgsave, enumchild, pluginapi, webroute, patchload, sdrenum, sdrlost, în această ordine: ieșirea de sunet s-a oprit și paza a repornit-o; un driver de radio SoapySDR a cedat și FoxSDR a redeschis singur radioul; un driver de radio nu s-a mai întors niciodată dintr-o citire când receptorul a fost oprit, iar FoxSDR a abandonat firul de execuție; un apel către un modul de furnizor SoapySDR nu s-a întors la timp și a fost abandonat; radioul a livrat eșantioane mai repede decât au fost preluate, iar unele au fost eliminate; firul de execuție de procesare a semnalului a aruncat o eroare care a fost prinsă, iar receptorul s-a oprit; fișierul de setări nu a putut fi scris; programul ajutător care listează radiourile SoapySDR s-a oprit brusc și a fost izolat; un apel de plugin către FoxSDR a aruncat o eroare și a primit un răspuns implicit; un handler al interfeței web a aruncat o eroare, iar serverul a răspuns cu un eșec; un patch salvat a fost încărcat cu conexiuni omise; serviciul SDRplay nu a răspuns la o scanare, iar scanarea a fost abandonată; sesiunea SDRplay a fost pierdută, iar SDRplay este închis pentru restul sesiunii. FoxSDR construiește fiecare element dintr-un tabel fix și nu trimite nimic ce nu se află în el, iar serverul care primește elimină tot ce nu se află în același tabel, deci nu există niciodată un nume de dispozitiv, un număr de serie, o cale, o frecvență sau vreun text de mesaj; un raport conține cel mult cele mai grave opt tipuri de cadre lente și opt tipuri de recuperare. Sunt numărate sub aceleași două comutatoare ca contoarele de eșecuri, doar cât timp sunt activate atât Raportare utilizare, cât și Diagnostic, așteaptă în același fișier mic numit telemetry-health, lângă fișierul dvs. de setări, până când serverul a acceptat un raport care le conține, iar dezactivarea raportării utilizării elimină fișierul.
Semnalul „încă rulează”
Un raport care sosește când aplicația pornește poate spune cine a lansat-o, dar niciodată cine o mai are deschisă. Așa că, în timp ce FoxSDR rulează — și doar cât timp raportarea utilizării este activată — trimite și un mesaj foarte mic la fiecare cinci minute, care conține trei câmpuri și nimic altceva:
| Trimis | Exemplu | De ce |
|---|---|---|
| Identificator de instalare | aceleași 32 de caractere hexazecimale ca mai sus | Astfel, douăsprezece semnale de la o copie contează ca o singură copie care rulează, nu douăsprezece. |
| Versiunea aplicației | 0.99.42 | Astfel, „rulează acum” poate fi defalcat pe versiuni. |
| Marcaj de semnal | 1 | Îi spune capătului care primește că acesta este un semnal și nu un raport de sesiune. |
Nimic din sesiune nu este trimis odată cu el: fără moduri, fără panouri, fără model de radio, fără durate, fără contoare. Semnalele sunt scrise într-un set de date separat, ținut deoparte de rapoartele de sesiune, astfel încât nicio cifră de utilizare nu își schimbă sensul. Același comutator le oprește pe amândouă: expeditorul refuză să se activeze fără un identificator de instalare valid, iar dezactivarea raportării utilizării îl șterge, deci dezactivat înseamnă niciun semnal. Un semnal încă în curs de trimitere când urmează următorul este sărit, nu pus în coadă.
Unde ajung rapoartele de utilizare
La un Cloudflare Worker operat de acest proiect la https://telemetry.foxsdr.com, care scrie contoarele de mai sus într-un set de date Cloudflare Workers Analytics Engine. Cloudflare le prelucrează în numele nostru și le stochează timp de trei luni, după care dispar. Nimeni altcineva nu le primește, nu sunt vândute, închiriate sau partajate, iar singurul lucru citit din ele sunt totaluri agregate, prin același panou de control protejat prin parolă descris mai jos. Codul sursă al Worker-ului este publicat împreună cu aplicația, astfel încât puteți citi ce face capătul care primește. Rapoartele de prăbușire nu ajung aici — ele merg la serverul propriu al acestui site, descris în continuare.
Rapoarte de prăbușire și de blocare
Dacă FoxSDR se prăbușește sau nu mai răspunde, scrie un raport care descrie defectul în %LOCALAPPDATA%\FoxSDR\crashes\ pe propria dvs. mașină și trimite textul raportului la pornirea următoare — niciodată din interiorul defectului însuși, pentru că un program care tocmai a cedat nu poate deschide în siguranță o conexiune de rețea. Raportul ajunge la POST /api/crash pe acest site — nu la Cloudflare și nu la vreo terță parte — și este anonim: nu există cont, cheie de licență sau ceva cu care să vă autentificați.
Comutatorul este SISTEM → Diagnostic și controlează în egală măsură scrierea și trimiterea: când este dezactivat, nu se scrie niciun raport, nu se creează niciun director și nu se face niciodată nicio conexiune. Este un comutator diferit de cel pentru raportarea utilizării. Dezactivarea raportării utilizării nu oprește un raport de prăbușire — golește câmpul identificatorului de instalare din el, pentru că atunci nu există niciun identificator, iar un raport de prăbușire nu creează niciodată unul (vedeți ultimul rând al tabelului de mai jos). Până la această versiune, nota de mai sus numea comutatorul greșit; software-ul a folosit întotdeauna Diagnostic, iar acum cele două spun același lucru.
Acesta este tot conținutul unui raport:
| Trimis | Exemplu | De ce |
|---|---|---|
| Ce s-a întâmplat | crash sau hang | O blocare și o prăbușire sunt defecte diferite. |
| Semnătura defectului | cascade.exe+0x1a2b/adsb.dll | Grupează același defect raportat de mulți oameni într-o singură intrare, astfel încât o sută de rapoarte despre o eroare să fie un singur lucru de remediat, nu o sută. |
| Versiunea aplicației, commit și id de build | 0.61.0, 28fa1c2 | În ce build s-a întâmplat și ce simboluri i se potrivesc. |
| Modulul defect și offsetul | cascade.exe, 0x1a2b | Unde anume în program a apărut problema. |
| Sistem de operare și arhitectură | Windows 11, Linux sau Android 14, x64 sau arm64 | Defectele sunt adesea specifice unei platforme. Un raport Linux sau Android conține aceleași câmpuri; cadrele de stivă numesc id-ul de build GNU al bibliotecii defecte în loc de un id PDB, pentru că niciuna dintre aceste platforme nu compilează cu MSVC. |
| Ce fel de defect a fost | access violation, 0xC0000005 | Rândul de motiv al raportului și codul de excepție Windows. În special, acesta este cel care spune că un defect a fost absorbit — aplicația a supraviețuit — și nu o prăbușire; fără el, cele două arată identic. Un cod și o propoziție fixă, niciodată conținut. |
| În ce parte a desenării ferestrei era o blocare, din FoxSDR 0.99.64 | rail | Numai într-un raport de blocare: ce parte a desenării ferestrei era în curs când s-a oprit, ca un singur cuvânt dintr-o listă fixă de nouăsprezece: events, frame-start, pre-draw, plugin-panels, toolbar, rail, spectrum, patch, status, dialogs, polls, saves, render, present, recorder, plugins-reload, startup, user-wait, other. Numește o parte a programului, niciodată un plugin, un fișier, un radio sau o frecvență. Același cuvânt este trimis în motivul raportului, ca propoziția fixă freeze: the frame was in rail; un cuvânt care nu se află în listă este eliminat și nu este trimis. Un raport de blocare nu trimitea înainte niciun motiv. |
| Pluginurile încărcate și versiunile lor | ADS-B 1.1.0 | „Se prăbușește doar cu pluginul ADS-B încărcat” este o descriere a defectului; „se prăbușește uneori” nu este. |
| Stivele firelor de execuție | cascade.exe+0x1a2b pe cadru | Stiva este defectul. Conține doar nume de module, id-uri de build și offseturi numerice — fără căi de fișiere sursă, fără variabile, fără conținut al memoriei. Începând cu FoxSDR 0.99.63, un cadru dintr-un raport de blocare care se află într-un modul încărcat după pornirea FoxSDR (un driver grafic pe care sistemul l-a reîncărcat, un DLL al unui producător, o extensie de shell) este trimis ca numele acelui fișier (niciodată o cale de folder) și ca un offset, în loc să fie trimis, ca înainte, drept o simplă adresă. Numele unui fișier poate arăta ce software este instalat pe mașina dvs.; este același fel de nume pe care aceste rapoarte îl conțineau deja pentru un driver încărcat la pornire. |
| Finalul jurnalului sesiunii | opened rtlsdr | Ultimele rânduri scrise în jurnal de aplicație, care de obicei arată ce făcea când a cedat. Este jurnalul propriu al aplicației: înregistrează schimbări de stare — sursă deschisă, rată setată, plugin pornit — niciodată conținutul semnalului și niciodată numele sau calea unui fișier pe care l-ați deschis. Conține și ce a spus driverul radio și ce au afișat bibliotecile lui în fluxul de erori standard. Înainte ca vreun rând din el să părăsească computerul dvs. — atât rândurile proprii ale aplicației, cât și cele ale driverului —, jurnalul este curățat: numerele de serie și partea specifică dispozitivului din identificatorii dispozitivelor USB sunt înlocuite cu <stripped>, numele contului dintr-o cale de fișier cu <user>, iar orice se află între ghilimele simple, cum ar fi numele pe care le dați nodurilor de patch și difuzoarelor, cu '<name>'; începând cu FoxSDR 0.99.59, fiecare adresă de rețea și fiecare nume de computer sau de gazdă este înlocuit cu <host>, păstrându-se după el numărul portului, iar numărul unui port serial cu # (COM#, /dev/ttyUSB#); pe orice rând care menționează hertzi, o frecvență, acordarea, un centru, un interval, un decalaj, o purtătoare, o presetare sau transmiterea, fiecare număr este înlocuit cu #, cu excepția cazului în care este marcat ca rată de eșantionare, oră, nivel, dimensiune sau număr, este o versiune, un identificator sau un cod de eroare ori face parte dintr-un nume precum R820T; iar rândurile în care driverul USB enumeră dispozitivele conectate la computerul dvs. sunt omise, cu un singur rând care spune câte au fost. Începând cu 0.99.59, aplicația nu mai scrie deloc în jurnal numele unei plăci de sunet, pentru că acel nume este adesea unul ales de o persoană. Începând cu 0.99.61, aplicația scrie în jurnal și când o ieșire audio se deschide sau este refuzată: modelul driverului audio, configurația canalelor și rata de eșantionare, dar niciodată numele dispozitivului audio. |
| Note de context | mode: WFM, sampleRate: 2400000 | Câteva note cheie/valoare pe care le atașează aplicația: modul, sursa (generator, fișier I/Q sau un radio real), rata de eșantionare, dacă era deschis un dispozitiv, modelul SDR cu numerele de serie eliminate, de câte secunde rula aplicația și dacă firul de execuție defect rula codul propriu al FoxSDR sau pe cel al unui driver radio. sampleRate este rata de eșantionare, nu o frecvență acordată. |
| Corecția de frecvență, din FoxSDR 0.99.56 | ppm: +1.5 by retuning | Dacă corecția cristalului radioului este activată, valoarea ei în părți per milion și modul în care este aplicată (in the radio sau by retuning), ori off. Descrie cristalul radioului, nu o frecvență: nu spune nimic despre ce ascultați. |
| DLL-urile altor programe din proces, din FoxSDR 0.99.69 | foreignModules: NahimicOSD.dll, RTSSHooks64.dll | Numele fișierelor — niciodată un folder, o versiune sau altceva despre fișier — componentelor altor programe încărcate în FoxSDR: fiecare modul încărcat care nu aparține Windows, nici FoxSDR (folderul său de program, pluginurile, runtime-ul C++), nici fișierelor de driver ale unui producător SDR pe care FoxSDR le încarcă intenționat. Aceasta dezvăluie numele DLL-urilor altor programe — suprapunerea pe ecran a unui driver audio, un contor de cadre, cârligul unui antivirus sau al unui instrument de intrare — iar un nume de fișier poate arăta ce software este instalat pe computerul dvs., de aceea este menționat aici. Fișierele din folderul Windows sunt omise, pentru ca lista să fie scurtă și relevantă. Există pentru că rapoartele despre încheieri ale FoxSDR în predarea către driverul grafic, unde se atașează programe care se introduc în fiecare proces, nu permiteau să se afle ce altceva se afla în proces. Aceleași nume sunt scrise în jurnalul aplicației (modules: 2 foreign - ... o dată la pornire, module arrived: ... când se încarcă unul mai târziu), deci aceste linii pot apărea la finalul jurnalului sesiunii de mai sus. Valoarea este goală când un raport nu o precizează și aici se păstrează cel mult 520 caractere din ea. |
| The window’s start-up and the graphics adapter, from FoxSDR 0.99.78 | window: GL vendor NVIDIA Corporation; renderer NVIDIA GeForce RTX 4090/PCIe/SSE2; version 4.6.0 NVIDIA 610.88 | Lines the application writes to its log while its window is being created, each beginning window:, which therefore ride in the tail of the session log above: which window systems this build of the window library supports; on Linux, whether DISPLAY and WAYLAND_DISPLAY are set (set or not set — never their values, which can name a computer or a session), the session type when it is one of a fixed list of words, and which window system was chosen; the window library’s own error messages, with the display’s name left out; and the graphics driver’s own vendor, renderer and version strings, which name the make and model of your graphics adapter and its driver — a graphics fault cannot be told apart without them, and they say nothing about you. On Linux, a report of a process that ended before its window appeared now also says how it ended: an exit status, or a signal number whose name comes from a list of twelve (exit code 3 (the process ended itself), killed by signal 11 (SIGSEGV)), written down by FoxSDR itself as it ends, as a number behind a fixed tag; unknown when nothing was written, which is what an ending by SIGKILL leaves. |
| Identificator de instalare | 32 de caractere hexazecimale aleatoare, sau gol | Folosit pentru limitarea ratei, apoi aruncat: identificatorul de instalare nu este stocat. O mașină blocată într-o buclă de prăbușiri nu trebuie să poată inunda serverul, iar a deosebi o mașină de o sută este singurul lucru pentru care este citit vreodată. Nu este scris niciodată pe disc aici. Dacă raportarea utilizării este dezactivată, este trimis gol — atunci nu există niciun identificator, iar un raport de prăbușire nu creează niciodată unul. |
Corectat în FoxSDR 0.99.33. Înainte de 0.99.33, curățarea descrisă mai sus se aplica doar liniilor driverului radioului, nu și celor proprii aplicației, iar câteva dintre liniile proprii ale aplicației puteau ajunge astfel într-un raport de prăbușire sau de blocare conținând frecvența cerută sau pe care emiteați, eticheta unui radio din patch (care poate include numărul lui de serie), numele date componentelor patch-ului, prima linie de text produsă de un decodor din pagina patch-ului și lista dispozitivelor USB afișată de driverul USB, inclusiv numerele lor de serie. Aceasta contrazicea prezenta notificare. Din 0.99.33, fiecare linie este curățată înainte de a părăsi computerul dvs., iar acele linii de jurnal nu mai conțin de la început aceste valori.
Corectat în FoxSDR 0.99.59. Această notă a spus întotdeauna că un raport de prăbușire nu conține niciun nume de mașină și că aplicația nu trimite niciodată adresa dvs. IP, dar până la 0.99.59 curățarea nu căuta adrese de rețea sau nume de gazdă. Prin urmare, câteva rânduri din jurnal puteau ajunge într-un raport de prăbușire sau de blocare ori în jurnalul de diagnosticare al unui raport de eroare, conținând adresa sau numele de gazdă pe care le-ați tastat pentru un radio de rețea precum un ADALM-Pluto, sau o adresă ori o adresă web înregistrată de driverul unui radio de rețea; puteau conține și numărul unui port serial și, pe câteva rânduri de eroare, numele unei plăci de sunet. Asta contrazicea această notă. Începând cu 0.99.59, adresele și numele de gazdă sunt înlocuite, iar numerele porturilor seriale sunt mascate, așa cum este descris mai sus, rândurile proprii ale ADALM-Pluto nu mai afișează adresa acestuia și niciun rând din jurnal nu menționează o placă de sunet.
Un raport de prăbușire nu conține nicio frecvență, nimic decodat, nicio cale de fișier, niciun nume de utilizator, niciun nume de mașină, nicio adresă de rețea și nicio locație. Rapoartele sunt păstrate pe serverul propriu al acestui site, în spatele aceluiași panou de control protejat prin parolă ca tot restul, și sunt păstrate 90 de zile după ultima apariție a defectului, apoi șterse — aceleași trei luni cât sunt păstrate rapoartele de utilizare. Primul raport al oricărui defect este păstrat integral, împreună cu câte un raport suplimentar pentru fiecare build în care defectul persistă, până la trei; orice alt raport al aceluiași defect este numărat, nu stocat. Un test automat leagă atât ce acceptă punctul de acces, cât și ce scrie pe disc de tabelul de mai sus, în ambele direcții, astfel încât un câmp nu poate fi adăugat la niciunul fără ca și acest tabel să se schimbe.
Un dump complet de memorie nu este trimis niciodată, indiferent de setări. Un dump de memorie este o copie a memoriei programului și poate conține nume de fișiere, titluri de ferestre și date de semnal recepționate. Este dezactivat implicit; dacă îl activați din SISTEM → Diagnostic, se scrie un .dmp lângă raportul text, doar local, iar programul de încărcare deschide fișierele numite crash-*.txt și hang-*.txt și nimic altceva.
Un raport al santinelei, din FoxSDR 0.99.64. Unele sfârșituri nu le poate raporta nimic din interiorul FoxSDR: o prăbușire care ocolește toți handlerii, o depășire de stivă, o fereastră blocată atât de tare încât s-a blocat și paza blocărilor. De aceea, într-o sesiune interactivă cu Diagnostic activat, FoxSDR pornește o a doua copie a propriului program, fără fereastră, care doar așteaptă să se termine prima — santinela. Ea poate citi cum s-a încheiat FoxSDR (codul lui de ieșire și când a pornit și s-a oprit), o mică pagină comună de numere pe care FoxSDR o ține la zi (în ce etapă se află, câte cadre a desenat și când a desenat ultimul, ce parte a desenării ferestrei este în curs, dacă un meniu este deschis sau fereastra este trasă) și sfârșitul jurnalului sesiunii, curățat ca în orice alt raport. Nu citește nimic din memoria FoxSDR și nu face nicio imagine de memorie, iar pagina de numere nu are loc pentru text, așa că nu poate conține un nume, o cale, o frecvență sau o adresă. Când FoxSDR se încheie, santinela scrie un raport în același dosar și în același format ca celelalte — niciunul dacă FoxSDR s-a încheiat normal sau scrisese deja unul — al cărui motiv este făcut doar din cuvinte fixe și secunde întregi, iar liniile despre receptor sunt înlocuite cu o propoziție fixă care spune că nu le poate citi. Nu trimite nimic singură: raportul ei pleacă la pornirea următoare, sub același comutator și aceleași limite ca oricare altul, și numai dacă FoxSDR s-a prăbușit, dacă fereastra lui încetase să deseneze sau dacă s-a încheiat înainte de primul cadru. Un sfârșit din exterior (Managerul de activități sau un script) și un sfârșit pentru că Windows a închis sesiunea dvs. rămân pe computerul dvs. și nu sunt trimise niciodată. Cu Diagnostic dezactivat, santinela nu este pornită.
Cât de des. Cel mult cinci rapoarte pe zi de la o mașină și același defect doar o dată pe zi, indiferent de câte ori se produce — ambele limite sunt păstrate în propriul fișier de setări, astfel încât o mașină aflată într-o buclă de prăbușiri se oprește singură din trimis, fără să i se spună, iar un raport care eșuează este reîncercat la pornirile ulterioare de cel mult trei ori și apoi lăsat în pace. Transformarea unui offset dintr-un raport înapoi într-un nume de funcție necesită baza de date de depanare a exact acelui build, care rămâne pe mașinile noastre și nu este încărcată niciodată nicăieri: rezolvarea se face local, nu pe server.
Ce nu trimite niciodată aplicația
- Frecvențele pe care le acordați. Ceea ce ascultă cineva este cel mai sensibil lucru pe care îl știe acest software și nu este colectat niciodată. În Regatul Unit, interceptarea unui mesaj pe care nu sunteți autorizat să-l recepționați sau divulgarea conținutului lui este o infracțiune conform secțiunii 48 din Wireless Telegraphy Act 2006.
- Numele sau căile fișierelor pe care le deschideți. Numele fișierului unei înregistrări este data dvs. — poate numi un serviciu, un loc sau o frecvență. Când un fișier I/Q nu poate fi redeschis, jurnalul înregistrează că nu s-a redeschis; numele rămâne pe ecran, unde îl cunoașteți deja.
- Nimic decodat — mesaje de pager, aeronave, nave, imagini, trafic de sateliți.
- Poziția dvs. sau poziția a orice recepționați — inclusiv poziția receptorului pe care o setați, care nu este transmisă niciodată în niciun raport. Vedeți mai jos.
- Adresa dvs. IP sau vreo locație derivată din ea. O cerere ajunge în mod necesar la un server de la o adresă, pentru că așa funcționează internetul; punctul de acces pentru utilizare nu citește nicio informație despre conexiune și nu scrie jurnale de cereri. Începând cu FoxSDR 0.99.59, o adresă de rețea sau un nume de gazdă din rândurile de jurnal pe care le conține un raport este înlocuit și el cu
<host>. - Numerele de serie ale hardware-ului. Modelul radioului este util; numărul de serie identifică radioul dvs. individual și este eliminat înainte de trimitere.
- Numele dvs., numele mașinii, contul de utilizator, orice cale de fișier sau numele unei plăci de sunet.
- Un dump complet de memorie.
Poziția receptorului și GPS-ul
FoxSDR trebuie să știe unde se află receptorul, pentru că fiecare distanță și fiecare azimut de pe hartă și de pe ecranul radar sunt măsurate de acolo. O puteți tasta, o puteți indica printr-un clic pe hartă sau o puteți citi de la un receptor GPS pe un port serial.
Poziția rămâne pe mașina dvs. Este stocată în propriul fișier de setări și nu este transmisă niciodată — nici în raportul de utilizare, nici în semnal, nici într-un raport de prăbușire, nicăieri. Citirea ei de la un GPS este ceva ce porniți dvs.: numiți portul și apăsați „Citește poziția de la GPS”. Portul este ținut ocupat doar până sosește primul fix și cel mult 60 de secunde. Jurnalul de diagnostic înregistrează numele portului, rata baud, numărul de propoziții și de sateliți și orice eroare — niciodată poziția și niciodată textul unei propoziții NMEA. Un câmp de port care conține ceva ce nu arată ca un port este înregistrat în jurnal doar ca tip și lungime („o cale de dispozitiv tastată, 27 de caractere”), astfel încât o cale de fișier cu numele dvs. de utilizator în ea nu poate ajunge într-un raport. Două teste automate garantează asta: unul pe inelul de jurnal și unul pe fișierul de jurnal scris de aplicația reală.
Catalogul de pluginuri
Catalogul este contactat când deschideți fereastra magazinului de pluginuri (prima dată într-o sesiune, începând cu FoxSDR 0.99.16), ori de câte ori apăsați VERIFICĂ ACUM în ea și când alegeți să instalați ceva. Nimic nu este adus la pornire, fereastra nu se redeschide singură și niciun plugin nu se actualizează singur. Catalogul este un fișier publicat pe GitHub (raw.githubusercontent.com), așa că acea cerere ajunge la serverele GitHub, care — ca la orice cerere web — văd adresa de la care provine. Nu se trimite cu ea niciun identificator al dvs.: niciun id de instalare, niciun cookie, nimic care ar putea fi legat de un raport de utilizare. Fiecare descărcare se face prin HTTPS, cu dimensiune limitată, este refuzată la o redirecționare către alt host și este verificată față de sha256 publicat în catalog înainte de a i se permite să devină fișier. Sursa este o setare: o puteți îndrepta spre un alt catalog sau spre un index.json de pe propriul disc, caz în care nu se face nicio cerere de rețea.
Site-urile de pluginuri pe care le adăugați
Începând cu FoxSDR 0.99.74, puteți adăuga cataloagele de pluginuri ale altor persoane, numite site-uri de pluginuri, iar fiecare pe care îl adăugați este încă o adresă pe care aplicația o contactează. Doar dvs. adăugați unul: apăsați SITE-URI în bara de sus a magazinului de pluginuri, lipiți o adresă și bifați caseta care spune că FoxSDR nu a verificat site-ul. FoxSDR nu adaugă nimic și nu contactează nimic din proprie inițiativă. Un site este citit în aceleași două momente ca și catalogul public — prima dată când deschideți magazinul într-o sesiune și de fiecare dată când apăsați VERIFICĂ ACUM — și are câteva secunde la dispoziție să răspundă. Cererea poartă adresa pe care ați dat-o și nimic altceva de la FoxSDR: niciun identificator, niciun cookie și un nume de client (cascade-plugin-repo/1.0) care este același pentru fiecare copie. Astfel, site-ul vede adresa dvs. IP, ca orice server web.
Fișierele și imaginile unui plugin dintr-un site sunt preluate doar de pe aceeași gazdă ca și catalogul său și doar când apăsați DESCARCĂ sau ACTUALIZEAZĂ la unul dintre pluginurile sale ori îi deschideți pagina. Catalogul fiecărui site este păstrat neschimbat în folderul de pluginuri de pe propriul dvs. disc, recitit la pornire și șters când apăsați ELIMINĂ la site; adresele în sine se află în fișierul dvs. de setări. Contoarele de eșecuri pentru catalogul de pluginuri și pentru instalările de pluginuri (vezi mai sus secțiunea despre rapoartele de utilizare) sunt ale catalogului public: un site care nu poate fi atins sau unul dintre pluginurile sale a cărui instalare eșuează nu este numărat.
Pluginuri oferite doar în anumite țări
Unele pluginuri sunt oferite doar conexiunilor din anumite țări. Când aplicația preia catalogul de pluginuri, cere și acestui site o listă regională scurtă, iar un plugin de pe acea listă este descărcat de pe acest site, nu de pe GitHub. Pentru a decide ce să răspundă, site-ul citește codul de țară din două litere pe care Cloudflare îl transmite împreună cu cererea (CF-IPCountry) și pe care Cloudflare îl deduce din adresa de la care vine cererea. Codul de țară și adresa sunt folosite doar pentru acel răspuns și nu sunt stocate, nu este trimis niciun identificator al dumneavoastră, iar aceste cereri nu sunt înregistrate în statisticile acestui site. O conexiune a cărei țară nu poate fi stabilită, sau una care vine prin Tor, primește o listă goală. Un VPN schimbă țara pe care o vede site-ul. Lista regională nu este cerută dacă ați îndreptat magazinul spre alt catalog.
Un plugin care poate emite
Începând cu FoxSDR 0.99.74, un plugin poate cere să trimită sunet prin emițătorul dvs.; magazinul de pluginuri și fereastra „Module montate” îl afișează atunci drept „Poate emite prin FoxSDR”. Poate declanșa emițătorul doar dacă ați apăsat ACORDĂ EMISIA pe pagina sa și ați armat pagina EMISIE pentru 5, 15 sau 60 minute. Acordul este stocat în propriul dvs. fișier de setări, după numele de fișier al pluginului, și nu este trimis niciodată nicăieri; fereastra de armare nu este stocată deloc. Jurnalul de diagnosticare de pe mașina dvs. înregistrează declanșarea — tx: armed 15 min, tx: plugin <name> keyed, tx: plugin <name> unkeyed (<why>) și tx: disarmed (<why>) — ca numele declarat al pluginului, un motiv dintr-o listă fixă și un număr de minute, niciodată o frecvență, iar aceste rânduri sunt curățate ca orice alt rând din jurnal atunci când se alcătuiește un raport sau un pachet de diagnosticare. Rapoartele proprii ale FoxSDR nu au niciun câmp pentru nimic din toate acestea.
Seturi de elemente orbitale ale sateliților
Pluginul pentru sateliți își menține actuale seturile de elemente orbitale aducându-le din sursele numite în satellite.cfg, la fiecare douăsprezece ore cât timp este încărcat. Acest site păstrează o copie a acelor seturi de elemente la GET /tle/all.tle — grupurile de stații, de amatori și meteo de la CelesTrak, plus NOAA 15, 18 și 19, reîmprospătate aici la fiecare douăsprezece ore — iar Sateliți 1.0.4 și versiunile ulterioare revin singure la acest fișier ori de câte ori eșuează toate sursele din satellite.cfg, astfel încât o mașină pe care CelesTrak o refuză îi poate urmări în continuare. Fișierul nu trebuie să numească acest site pentru ca acest lucru să se întâmple; un rând fallback-url none în el dezactivează această rezervă, iar refresh-hours 0 dezactivează orice aducere. Cererea nu conține niciun identificator, niciun id de instalare și niciun cookie, iar acest server nu scrie nicio înregistrare statistică pentru ea — ca la verificarea actualizărilor, sunt înregistrate doar afișările de pagini și descărcările de fișiere, iar oglinda nu este niciuna dintre ele. Seturile de elemente în sine aparțin CelesTrak (celestrak.org) și fiecare răspuns spune asta.
Căutări în registrul de aeronave
Pluginul opțional Aircraft Info arată cine este fiecare aeronavă de pe hartă — înmatricularea, tipul și operatorul. Aplicația nu face niciodată această cerere; instalarea acelui plugin este cea care o activează. Începând cu versiunea 1.1.0, pluginul întreabă mai întâi acest site, la GET /api/aircraft/<address>, și trimite doar adresa ICAO de șase cifre hexazecimale a aeronavei — numărul pe care aeronava însăși îl emite — fără identificator, fără id de instalare și fără cookie. Despre fiecare aeronavă se întreabă o singură dată, iar răspunsul este păstrat pe propria dvs. mașină, deci nu se mai întreabă din nou. Doar când acest site nu cunoaște o aeronavă sau nu poate fi contactat, pluginul întreabă api.adsbdb.com, un serviciu terț gratuit, așa cum făceau întotdeauna versiunile anterioare. Setul de aeronave pe care le aude un receptor este o indicație aproximativă a locului în care se află, motiv pentru care pluginul este opțional și spune asta înainte să-l instalați.
Ce păstrează acest server despre o căutare: nimic per cerere. Nu se scrie nicio înregistrare statistică și nu se înregistrează în jurnal nici adresa aeronavei, nici adresa de la care a venit cererea. Singura evidență sunt cinci totaluri cumulate de la ultima pornire a serverului — căutări, găsite, negăsite, malformate și limitate ca rată — pe care le arată panoul de control. Pentru a împiedica pe oricine să copieze tabelul în bloc, fiecare adresă care se conectează are o alocare de căutări păstrată în memorie, exact ca la celelalte puncte de acces de aici, și niciodată scrisă pe disc; este uitată când serverul repornește sau când sunt urmărite mai mult de zece mii de adrese, oricare survine mai întâi.
Răspunsurile provin din baza de date de aeronave OpenSky Network (opensky-network.org): pentru fiecare aeronavă, înmatricularea, indicatorul de tip, producătorul, modelul și, acolo unde este înregistrat, operatorul. OpenSky oferă baza de date ca atare și le cere utilizatorilor să citeze: Matthias Schäfer, Martin Strohmeier, Vincent Lenders, Ivan Martinovic și Matthias Wilhelm, „Bringing Up OpenSky: A Large-scale ADS-B Sensor Network for Research”, în Proceedings of the 13th IEEE/ACM International Symposium on Information Processing in Sensor Networks (IPSN), aprilie 2014. Proprietarul înregistrat care figurează acolo nu este copiat pe acest site și nici servit de el, pentru că, în cazul unei aeronave private, acesta este numele unei persoane; doar operatorul, care este o companie aeriană, o forță aeriană sau o firmă, este.
Interfața din browser
FoxSDR își poate servi interfața prin HTTP altor mașini din propria dvs. rețea. Este dezactivată implicit și legată de propria mașină până când schimbați asta; pentru orice legare dincolo de aceasta este necesară o parolă, iar fără ea legarea mai largă este refuzată, nu deschisă. Parolele sunt stocate ca hash (PBKDF2-HMAC-SHA256), iar sesiunile sunt revocate ori de câte ori se schimbă setările. În mod deliberat nu există TLS, pentru că aplicația nu include nicio bibliotecă criptografică și nu va pretinde o securitate a transportului pe care nu o poate oferi — puneți în fața ei un proxy invers sau un tunel privat și nu o expuneți niciodată direct prin port forwarding. Oricine căruia îi dați acces poate vedea și controla ce face receptorul.
Cereri de funcții trimise din aplicație
Aplicația are o casetă „CERE O FUNCȚIE”, pe pagina principală, în care puteți tasta ce ați dori să facă și apăsa TRIMITE. Nimic nu este trimis până nu apăsați acel buton, nu se întâmplă niciodată automat, iar o cerere care nu reușește să ajungă la noi nu este pusă în coadă și nici reîncercată în fundal — ce ați tastat rămâne în casetă, doar în memorie, ca să apăsați din nou TRIMITE, și nu este scris niciodată în fișierul de configurare sau în jurnal. Acesta este tot conținutul unei cereri:
| Trimis | Exemplu | De ce |
|---|---|---|
| Ce ați tastat | Please add a squelch control to the FLEX decoder | Cererea însăși: între 10 și 100000 de caractere. Caracterele de control sunt eliminate înainte de stocare; rândurile noi sunt păstrate. |
| Contactul, dacă l-ați dat | [email protected] sau un indicativ | Opțional, până la 120 de caractere, ca să vă putem pune o întrebare suplimentară. Lăsați-l gol și cererea nu conține nimic care v-ar putea identifica. |
| Versiunea aplicației | 0.99.42 | Din ce build provine cererea. |
| Sistem de operare | windows, linux sau android | Ce platformă a trimis-o. |
| Arhitectură | x64 sau arm64 | Ca mai sus. |
| Numărul schemei | 1 | Versiunea contractului de transmisie, astfel încât o schimbare viitoare a formatului să nu poată fi confundată cu unul dintre câmpurile de mai sus. |
Ajunge la POST /api/feature-request pe acest site. Adresa dvs. IP este folosită doar pentru a menține rata de trimitere la un nivel rezonabil și nu este scrisă niciodată pe disc — înregistrarea păstrată efectiv este mesajul dvs., adresa de contact dacă ați dat-o, versiunea aplicației, platforma, arhitectura și țara dvs. aproximativă, atunci când căutarea noastră o poate determina din conexiune, și nimic altceva. Este citită de persoana care întreține proiectul, în panoul de administrare, în spatele aceleiași parole ca tot restul de aici, și este păstrată până când este ștearsă din acel panou sau până când cereți. O cerere care a fost rezolvată — adăugată în FoxSDR sau căreia i s-a răspuns în alt mod — poate fi arhivată acolo în loc să fie ștearsă, astfel încât proiectul să poată ține evidența a ce s-a cerut și ce s-a construit; o cerere arhivată este în continuare păstrată, cu tot ce este listat mai sus. Dacă ați dat o adresă de contact și vreți ca cererea să fie ștearsă, scrieți la adresa de mai jos și citați suficient din ce ați trimis ca să poată fi găsită.
Rapoarte de erori și nemulțumiri trimise din aplicație
Imediat sub „CERE O FUNCȚIE”, aplicația are o casetă „EROARE / NU-MI PLACE”, în care spuneți fie că ceva nu funcționează, fie că există ceva ce nu vă place, și apăsați TRIMITE. Funcționează exact ca și caseta pentru cereri de funcții: nimic nu este trimis până nu apăsați acel buton, nimic nu este pus în coadă sau reîncercat în fundal, iar ce ați tastat rămâne doar în memorie — niciodată în fișierul de configurare, niciodată în jurnal. Nu este un raport de prăbușire, deși jurnalul de diagnosticare descris mai jos trece prin același filtru și poate conține o parte din ce conține un raport de prăbușire. Acesta este tot conținutul unui raport:
| Trimis | Exemplu | De ce |
|---|---|---|
| Dacă este o eroare sau o nemulțumire | bug sau dislike | Alegerea pe care ați făcut-o în partea de sus a casetei: ceva care nu funcționează sau ceva care funcționează așa cum a fost proiectat, dar pe care ați prefera să nu-l facă. |
| Ce ați tastat | The waterfall freezes when I change the sample rate | Raportul însuși: între 10 și 100000 de caractere. Caracterele de control sunt eliminate înainte de stocare; rândurile noi sunt păstrate. |
| Contactul, dacă l-ați dat | [email protected] sau un indicativ | Opțional, până la 120 de caractere, ca să vă putem pune o întrebare suplimentară. Lăsați-l gol și raportul nu conține nimic care v-ar putea identifica. |
| Versiunea aplicației | 0.99.42 | Din ce build provine raportul, ca o eroare deja remediată să nu fie urmărită din nou. |
| Sistem de operare | windows, linux sau android | Ce platformă a trimis-o. |
| Arhitectură | x64 sau arm64 | Ca mai sus. |
| Numărul schemei | 1 | Versiunea contractului de transmisie, astfel încât o schimbare viitoare a formatului să nu poată fi confundată cu unul dintre câmpurile de mai sus. |
| Jurnal de diagnosticare, din FoxSDR 0.99.43 | 0.99.43 windows x64, Ettus B200 — recent log lines, serials/frequencies/paths scrubbed | Bifată implicit atunci când raportați o eroare, și nebifată implicit pentru o nemulțumire — puteți schimba oricare dintre ele înainte de a apăsa Trimite. Conține versiunea aplicației, sistemul dvs. de operare, ce radio era folosit, un scurt rezumat al setărilor dvs., precum și cele mai recente linii din jurnalul propriu al aplicației, trecute prin același filtru ca sfârșitul jurnalului unui raport de prăbușire: numerele de serie și identificatorii USB sunt înlocuiți, orice număr legat de frecvență este înlocuit, orice se află între ghilimele simple este înlocuit, adresele de rețea și numele de gazdă sunt înlocuite, iar numerele porturilor seriale mascate (începând cu FoxSDR 0.99.59), iar numele contului dintr-o cale de fișier este eliminat. Acest server repetă ultima dintre aceste verificări în cazul în care ceva a fost totuși omis. Este păstrat și șters împreună cu restul raportului, în aceleași condiții ca tot ce este mai sus. Începând cu FoxSDR 0.99.61, rezumatul setărilor dumneavoastră spune și dacă o ieșire audio este deschisă și prin ce model de driver audio, volumul, dacă sunetul este dezactivat și de către cine (de dumneavoastră, de un plugin de decodare sau de tasta de transmisie; un plugin este descris, niciodată numit), precum și nivelul squelch-ului, dacă este deschis și ce nivel de semnal evaluează, care este un nivel și nu o frecvență. Nu conține niciodată numele dispozitivului dumneavoastră audio sau frecvența pe care sunteți acordat. Începând cu FoxSDR 0.99.62, conține și alte trei lucruri: ultimele rânduri (cel mult 80) din jurnalul sesiunii anterioare sau cuvinte care spun că nu există niciunul de citit; un rând pentru fiecare dintre cele mai recente zece rapoarte de prăbușire sau de blocare de pe computerul dumneavoastră, care arată dacă a fost o prăbușire, o blocare sau o oprire a afișării, cu cât timp în urmă a fost scris, versiunea care l-a scris, de cât timp rula sesiunea respectivă, cât timp a rămas fereastra blocată sau motivul și codul prăbușirii, semnătura defectului și ce s-a întâmplat cu trimiterea acestuia, fără stivă, fără rânduri de jurnal, fără listă de module și fără nume sau căi de fișiere luate din acele rapoarte; și un rând care spune câte radiouri rulează pagina de patch și tipul de driver al fiecăruia, niciodată numele, numărul de serie sau adresa unui radio, numele unei înregistrări sau o frecvență. Fiecare rând din jurnalul anterior și din lista de rapoarte trece prin același filtru. Cu Diagnostic dezactivat, jurnalul de diagnosticare nu conține nici jurnalul sesiunii anterioare, nici lista de rapoarte, iar nimic din toate acestea nu face parte din raportul de prăbușire sau de blocare pe care FoxSDR îl trimite singur. |
| Un raport lipit de dvs., din FoxSDR 0.99.69 | sentinel:outside, written by 0.99.66, and the report | Doar când este cazul. Dacă mesajul tastat sau lipit de dvs. conține un raport FoxSDR de prăbușire, blocare sau santinelă — textul dintr-un fișier de raport din folderul de rapoarte, pe care oamenii îl lipesc uneori manual — aplicația îl recunoaște, vă anunță pe pagină înainte de a apăsa Trimite („Un raport a fost recunoscut și atașat ca …”) și îl trimite încă o dată alături de mesaj, cu trei elemente: tipul raportului (prăbușire, blocare, blocare a afișării sau unul dintre cele cinci tipuri de încheiere înregistrate de santinelă), build-ul care l-a scris (linia de versiune din blocul de context al raportului, care poate să nu fie cea pe care o rulați acum) și raportul însuși. Nu este nimic ce nu trimiteți deja: sunt cuvintele mesajului dvs., clasate după tip, ca pagina de administrare să îl poată numi. Se examinează doar textul din casetă; nu se citește niciun fișier. Este curățat aici ca jurnalul de diagnostic (numele contului dintr-o cale de fișier și orice adresă de e-mail sunt eliminate), limitat la 64 KiB și păstrat împreună cu restul raportului, în aceleași condiții ca tot ce este mai sus. |
Din FoxSDR 0.99.69, jurnalul de diagnostic conține și o linie în plus, care numește doar după numele fișierului (niciodată un folder sau o versiune) componentele altor programe încărcate în FoxSDR — o suprapunere sau un cârlig plasat de alt program; este aceeași listă descrisă în tabelul raportului de prăbușire de mai sus și face parte și din raportul de prăbușire sau de blocare pe care FoxSDR îl trimite singur.
Ajunge la POST /api/problem-report pe acest site. Adresa dvs. IP este folosită doar pentru a menține rata de trimitere la un nivel rezonabil și nu este scrisă niciodată pe disc — înregistrarea păstrată efectiv constă în: dacă a fost o eroare sau o nemulțumire, mesajul dvs., adresa de contact dacă ați dat una, versiunea aplicației, platforma, arhitectura, țara dvs. aproximativă când căutarea noastră o poate oferi pe baza conexiunii, jurnalul de diagnostic dacă l-ați lăsat atașat, tipul oricărui raport recunoscut în mesajul dvs. (mai sus) și nimic altceva. Este citită de responsabilul proiectului în panoul de administrare protejat de aceeași parolă ca tot ce se află aici, iar un raport este păstrat până când este șters din acel panou sau până cereți dvs. ștergerea. Un raport tratat — remediat în FoxSDR sau soluționat altfel — poate fi arhivat acolo în loc să fie șters; un raport arhivat este tot păstrat, cu tot ce este enumerat mai sus. Dacă ați dat o adresă de contact și doriți ștergerea raportului, scrieți la adresa de mai jos și citați suficient din ce ați trimis pentru a-l putea găsi.
Site-ul web: ce se înregistrează când îl vizitați
Pentru fiecare afișare de pagină și fiecare descărcare se scrie o înregistrare, indiferent dacă acceptați sau nu cookie-urile. Acestea sunt statistici primare: datele rămân pe serverul care servește acest site, nu sunt partajate cu o rețea de publicitate și nu există niciun script terț pe pagină.
| Înregistrat | De unde provine | Necesită consimțământ |
|---|---|---|
| Data și ora, pagina cerută, metoda și protocolul HTTP | Cererea | Nu |
| Adresa dvs. IP și un hash cu sare al ei | Conexiunea | Nu |
| Locația aproximativă: țara, regiunea, orașul, zona codului poștal, fusul orar și coordonatele acelui oraș — nu ale dvs. | Adresa IP, căutată prin ip-api.com | Nu |
| Rețeaua dvs.: furnizorul de internet, organizația, numărul AS și dacă adresa este un VPN, un centru de date sau o rețea mobilă cunoscută | Aceeași căutare | Nu |
| Browserul și versiunea, sistemul de operare și versiunea, tipul dispozitivului și dacă cererea pare să provină de la un bot | Antetul User-Agent | Nu |
Ce pagină v-a trimis aici și orice etichete de campanie de pe link (utm_source și cele asemănătoare) | Antetul Referer și URL-ul | Nu |
| Limbile preferate | Antetul Accept-Language | Nu |
| Ce fișier ați descărcat, versiunea lui, câți octeți au fost trimiși și dacă transferul s-a încheiat | Descărcarea însăși | Nu |
| Dimensiunea ecranului și a ferestrei, raportul de pixeli, adâncimea de culoare | Browserul dvs., raportat de scriptul acestei pagini | Da |
| Numărul de nuclee CPU și memoria aproximativă a dispozitivului | Același script | Da |
| Fusul orar, lista de limbi, preferința pentru modul întunecat, suportul tactil, platforma | Același script | Da |
| Tipul conexiunii, viteza estimată de descărcare și timpul dus-întors | Același script | Da |
| Cât timp a fost vizibilă pagina, cât de mult ați derulat, câte clicuri și ce butoane ați apăsat | Același script | Da |
Ce nu se face în mod deliberat
- Nicio amprentare a browserului: nicio sondare canvas, audio, a fonturilor sau WebGL și nimic care să încerce să vă reidentifice după ce ați refuzat.
- Niciun instrument de urmărire terț, pixel publicitar, widget social sau serviciu de statistici. Nimic de pe această pagină nu se încarcă de pe alt domeniu.
- Nicio încercare de a vă citi clipboardul, bateria, camera, microfonul, parolele salvate sau istoricul de navigare — niciunul dintre ele nu are ce căuta pe o pagină de descărcare.
- Datele dvs. nu sunt vândute, închiriate sau partajate cu nimeni. Singura cerere externă pe care serverul o face despre dvs. este căutarea IP-locație descrisă mai sus.
Designuri de interfață pe care le publicați
Acest site poate păstra un design de interfață FoxSDR — un pachet .foxui — pe care alegeți să îl publicați. Nu se trimite nimic până nu apăsați Publish, iar trimiterea merge la POST /api/gui/publish. Se păstrează ce conține pachetul: designul propriu-zis, numele, versiunea și descrierea pe care le-ați scris, un nume de autor dacă ați scris unul, momentul publicării și un identificator aleatoriu. Adresa dvs. IP este folosită doar pentru a menține ritmul publicărilor în limite rezonabile și nu este scrisă niciodată pe disc. Un pachet publicat nu apare în nicio listă; oricine are linkul lui îl poate descărca. Este păstrat până când este șters din panoul de administrare sau până când cereți acest lucru — scrieți la adresa de mai jos și indicați linkul lui.
Dacă vă înscrieți ca tester beta
Formularul beta și înscrierea la știri sunt singurele locuri în care acest site vă cere ceva, în afară de publicarea unui design de interfață (vezi mai sus). Trimiterea lui stochează adresa dvs. de e-mail și oricare dintre următoarele ați ales să le dați: un nume sau un indicativ, platforma, radioul pe care intenționați să-l folosiți, notele dvs. și lista de funcții pe care v-ați oferit să le testați. Alături de acestea păstrăm același context al vizitei descris mai sus — locația aproximativă, rețeaua, browserul și sistemul de operare — pentru că un raport de eroare se citește foarte diferit în funcție de configurația din care provine.
- Adresa este folosită pentru un singur lucru: să vă contactăm despre build-urile beta și ce este de testat. Fără newsletter, fără marketing, iar adresa nu este transmisă niciodată altcuiva.
- Nimic nu se întâmplă până nu confirmați. Înscrierea trimite un e-mail cu un cod din șase cifre, pe care îl introduceți în pagină ca să confirmați că adresa vă aparține. Codul este valabil 30 de minute și este refuzat după cinci încercări greșite. Până nu este introdus, înregistrarea este inactivă: nu sunteți pe lista de testeri, nu sunteți numărat și nu vi se mai trimite nimic. Dacă altcineva v-a introdus adresa, ignorați acel e-mail și înregistrarea nu devine niciodată reală — nu există nimic de la care să vă dezabonați și nicio acțiune pe care trebuie să o faceți. Acel mesaj este singurul e-mail automat pe care îl poate produce o înscriere.
- Dacă ne-ați scris, vă putem invita. Cineva care ne-a scris și a lăsat o adresă — prin caseta de funcții a aplicației, de exemplu — poate primi de la noi o singură invitație personală, cu un link de unică folosință care deschide tasta Confirmă a acestui site. Acea invitație este păstrată ca înregistrare în așteptare, exact ca o înscriere neconfirmată: nu sunteți tester și nu sunteți numărat decât dacă apăsați Confirmă, iar dacă o ignorați, nu vă mai scriem. O înregistrare în așteptare nu expiră de la sine; este ștearsă când o eliminăm de pe listă sau când cereți, printr-un e-mail la adresa de mai jos.
- După ce confirmați, primiți linkul privat de administrare, iar noi vă scriem când apare un build care are nevoie de ce v-ați oferit să testați. Vă scrie un om, nu o listă de corespondență. Dacă pierdeți linkul, vă putem emite unul nou: cel vechi nu mai funcționează imediat, cel nou vă este trimis prin e-mail, iar noi păstrăm momentul în care s-a făcut asta și dacă e-mailul a plecat.
- Acel e-mail trece prin Apple. Corespondența pentru
foxsdr.comeste transportată de serviciul iCloud Mail al Apple, așa că adresa dvs. și mesajul trec prin serverele lor în drum spre dvs., conform termenilor lor ca furnizor de e-mail al nostru. Nimic altceva despre dvs. nu le este trimis. - Este ținută separat de statistici. Înscrierile se află într-un fișier propriu, care poate fi citit doar de contul care rulează serverul; jurnalul de statistici înregistrează că a avut loc o înscriere și câte funcții au fost alese, niciodată cine. Un test automat face build-ul să eșueze dacă o adresă ajunge vreodată în jurnalul de statistici.
- O nouă înscriere cu o adresă care este deja pe listă nu modifică acea înregistrare. Modificările se fac din propria dvs. pagină de tester. În schimb, adresei i se trimite un singur e-mail: linkul ei privat dacă a fost confirmată sau un cod nou dacă nu, și niciodată mai des de o dată la 15 minute.
- Păstrăm o copie a ceea ce v-am trimis. Fiecare mesaj pe care acest site îl trimite unui tester — confirmarea și fiecare mesaj despre un build — este păstrat împreună cu textul lui, ca să putem vedea ce s-a spus și dacă a ajuns. Copia este arhivată sub id-ul dvs. intern, nu sub adresă, iar părțile personale din ea (codul sau linkul de confirmare și propriul link de administrare) sunt eliminate înainte de stocare, astfel încât un mesaj păstrat nu poate fi folosit niciodată pentru a acționa în numele dvs. Aceste copii sunt șterse împreună cu restul înregistrării dvs. când plecați.
- Mesajele dintre dvs. și noi sunt păstrate. Caseta Mesaje din portalul dvs. de tester este o conversație cu persoana care dezvoltă FoxSDR: ce vă scriem și ce răspundeți, fiecare cu ora la care a fost scris și, dacă ați ales unul, raportul la care se referă. Este păstrată sub identificatorul dvs. intern, nu sub adresa dvs., și numai dvs. (cu linkul dvs. privat) și noi o putem citi. Notăm și când ați avut mesajele noastre pe ecran, ca să știm că v-au ajuns. Cât timp pagina dvs. este deschisă, ea cere mesaje noi la fiecare câteva secunde, așa că acestea apar de îndată ce sunt scrise, și spune cât timp a trecut de când ați folosit-o ultima dată; cât timp continuă să ceară, și încă o jumătate de minut după aceea, și numai dacă ați folosit-o în ultimele cinci minute, serverul știe că sunteți acolo. Informația este ținută doar în memoria lui și nu este scrisă nicăieri. Nu vă trimitem un e-mail pentru fiecare mesaj: când scriem cât timp nu sunteți aici, primiți un singur e-mail scurt care spune că vă așteaptă un mesaj, cu linkul dvs. și fără mesajul propriu-zis. Cât timp acel mesaj este necitit, nu urmează niciun alt astfel de e-mail timp de până la 12 ore, nici în jumătatea de oră de după cel anterior; iar dacă erați pe pagină când am scris, dar după zece minute încă nu ați văzut mesajul, e-mailul pleacă atunci. O copie a acestuia este păstrată așa cum este descris mai sus; când scrieți dvs., nu se trimite niciun e-mail. Conversația este păstrată până când plecați sau ne cereți s-o ștergem, iar plecarea o șterge în întregime.
- Păstrată până la încheierea programului beta sau până când cereți. Un singur e-mail la adresa de mai jos vă elimină și șterge înregistrarea — nu trebuie să dați niciun motiv.
- Temeiul legal aici este consimțământul dvs., dat prin bifarea casetei; formularul nu se trimite fără el.
Dacă ești tester beta și introduci codul tău de tester în FoxSDR
Pagina ta de tester (de mai sus) îiți oferă un link privat de administrare și, din el, un cod de tester pe care îl poți introduce chiar în FoxSDR, la SISTEM → Cod de tester. Acest lucru diferă de raportarea de utilizare anonimă descrisă mai sus: raportarea de utilizare nu poate fi, intentționat, urmărită până la tine, în timp ce o sesiune raportată cu codul tău de tester este legată intentționat de fișa ta de tester — acesta este exact scopul, ca să putem vedea ce funcții și pluginuri au încercat cu adevărat cei care chiar le testează. Este dezactivată dacă nu introduci un cod, iar câmpul este gol implicit.
Conectează FoxSDR de pe pagina dvs. de tester îi dă lui FoxSDR un cod de aplicație separat, astfel încât linkul dvs. privat să nu trebuiască niciodată introdus în aplicație. Codul de aplicație poate face doar două lucruri: să trimită rapoartele de sesiune descrise mai jos și să trimită și să citească mesajele din caseta dvs. de Mesaje. Nu vă poate vedea adresa, nu vă poate modifica înscrierea și nu vă poate elimina. Este păstrat împreună cu înscrierea dvs. de tester; apăsarea Link nou îl anulează, după care FoxSDR trebuie conectat din nou, iar părăsirea programului îl șterge împreună cu restul înscrierii dvs.
Atâta timp cât un cod este introdus, aproximativ o dată pe sesiune FoxSDR trimite asta, și nimic altceva:
| Trimis | Exemplu | De ce |
|---|---|---|
| Codul dvs. de tester | codul de aplicație din „Conectează FoxSDR” sau tokenul de pe pagina dvs. de tester | Arată cărei intrări de tester îi aparține această sesiune. Este transformat în ID-ul intern de tester și nu este el însuși stocat niciodată — aceeași regulă pe care acest site o aplică identificatorului de instalare dintr-un raport de prăbușire. |
| Versiunea aplicației | 0.99.42 | Ce build testați. |
| Platformă și arhitectură | windows, x64 | Ca mai sus. |
| Când a început sesiunea | 2026-09-25T14:32:00Z | Indică cât de recent a fost folosită efectiv o funcție sau un plugin și cât timp este păstrat un raport — nu momentul în care raportul a ajuns pe acest server, care poate fi mai târziu dacă FoxSDR așteaptă până la următoarea pornire pentru a-l trimite. Este refuzat direct dacă pretinde a fi cu mai mult de câteva minute în viitor, sau mai vechi decât fereastra de păstrare de un an de mai jos. |
| Durata sesiunii | 42 minute | Cât a durat sesiunea, până la o zi. |
| Funcții folosite | spectrum, adsb | Care dintre zonele de pe panoul de plăci al paginii dvs. de tester le-ați folosit efectiv în această sesiune — doar ID-uri pe care acest site le publică deja; orice altceva este respins direct. |
| Pluginuri folosite, versiunea lor și cât timp | adsb-decoder 1.8.0, 30 min | Ce intrări și versiuni din catalogul de pluginuri sunt folosite efectiv. Un plugin instalat de pe un site de pluginuri adăugat de dvs. (din FoxSDR 0.99.74) este raportat prin ID și versiune ca orice alt plugin instalat; adresa site-ului nu este raportată. |
| Radiouri folosite | rtlsdr | Ce tipuri de drivere, nu numere de serie sau alte detalii de identificare. |
- Ceea ce se stochează este ID-ul tău de tester (niciodată codul sau adresa ta), ora la care raportul a fost acceptat, începutul sesiunii menționat mai sus, versiunea, platforma, durata sesiunii, precum și funcțiile, pluginurile și radiourile menționate mai sus — o linie pentru fiecare sesiune acceptată, păstrată până la un an și apoi eliminată automat, calculată de la începutul real al sesiunii, nu de la momentul în care raportul a ajuns pe acest server.
- Ce se afișează public este un număr, niciodată un nume. Cardul unui plugin de pe pagina principală primește o mică notă „testat de N testeri beta” de îndată ce versiunea sa curentă publicată a fost folosită de cel puțin doi testeri distincți timp de cel puțin zece minute în total — sub acest prag nu se afișează nimic, și nicio pagină nu menționează cine sunt acești testeri. Numerele de pe propria ta pagină de tester și din panoul de administrare sunt aceleași cifre, doar văzute mai detaliat; testerii nu sunt niciodată numiți unii altora.
- Adresa dvs. IP este folosită doar pentru a menține rata de trimitere la un nivel rezonabil și nu este niciodată scrisă pe disc.
- Cum să oprești asta: elimină codul de tester din setările FoxSDR, și nu se mai trimite nimic. Nu trebuie să părăsești programul beta pentru asta.
- Părăsirea programului șterge asta. Eliminarea fișei tale, de pe pagina ta de tester sau cerându-ne, șterge fiecare raport de sesiune deja înregistrat pentru tine împreună cu restul fișei tale — aceeași ștergere descrisă în restul acestei secțiuni, aplicată și acestor date.
- Temeiul legal este același consimțământ care acoperă restul fișei tale de tester: introducerea codului este o acțiune pe care o întreprinzi tu, și nimic nu se trimite fără ea.
Dacă vă abonați la știri prin e-mail
Pagina de știri cere un singur lucru: adresa dvs. de e-mail. Este păstrată ca să vă putem scrie când apare o versiune nouă de FoxSDR și, din când în când, despre ce se construiește. Nu este folosită pentru nimic altceva și nu este transmisă niciodată nimănui.
- Nimic nu se întâmplă până nu confirmați. Abonarea trimite un e-mail cu un cod din șase cifre de introdus în pagină. Până nu este introdus, nu se trimite nimic altceva, iar o adresă care nu a fost confirmată în decurs de o săptămână este ștearsă - de un cod care rulează zilnic pe server. Dacă altcineva v-a introdus adresa, ignorați acel e-mail.
- Fiecare e-mail conține un link care vă scoate de pe listă cu o singură apăsare. Plecarea șterge adresa din fișierul serverului, împreună cu copiile păstrate de noi ale mesajelor care i-au fost trimise; nu se păstrează nimic despre ea.
- Este o listă separată. Un abonat la știri nu este tester beta: adresa este păstrată într-un fișier separat, care poate fi citit doar de contul care rulează serverul, și nu este numărată sau afișată ca tester. Dacă sunteți și tester, primiți fiecare mesaj o singură dată.
- Păstrăm o copie a ceea ce v-am trimis, arhivată sub un id intern în loc de adresă, cu codul de confirmare și linkul de dezabonare eliminate, exact ca la testeri.
- Acel e-mail trece prin Apple, așa cum este descris mai sus pentru testeri.
- Jurnalul de statistici înregistrează că a avut loc o abonare, niciodată cine.
- Temeiul legal este consimțământul dvs., dat prin bifarea casetei; formularul nu se trimite fără el.
Cookie-uri
| Cookie | Scop | Durată |
|---|---|---|
fox_consent | Reține dacă ați acceptat sau ați refuzat, ca să fiți întrebat o singură dată | 1 an (acceptat) / 6 luni (refuzat) |
fox_vid | Un identificator aleator, astfel încât o vizită repetată să fie recunoscută ca provenind de la același browser. Setat doar dacă acceptați. | 400 de zile |
fox_sid | Grupează o vizită într-o sesiune. Setat doar dacă acceptați. | 30 de minute de inactivitate |
fox_beta | Păstrează linkul dvs. de tester beta, ca să puteți reveni la propria înregistrare. Setat doar dacă vă înscrieți ca tester și doar pentru că acesta este lucrul pe care l-ați cerut — nu măsoară nimic, deci nu face parte din alegerea privind statisticile de mai sus. Eliminarea dvs. de pe listă îl șterge. | 400 de zile |
foxsdr_lang | Reține limba pe care ați ales-o pentru acest site, astfel încât și pagina următoare să fie în ea. Setat doar când alegeți singur o limbă — cu selectorul de limbă sau cu un link care conține ?lang= — și nu păstrează nimic altceva decât codul acelei limbi, de exemplu es. Nu măsoară nimic, deci nu face parte din alegerea privind statisticile de mai sus. | 1 an |
fox_news_joined | Nu este un cookie: un indicator în spațiul de stocare propriu al browserului, care nu ne este trimis niciodată. După o descărcare, site-ul vă întreabă dacă doriți știrile prin e-mail; după ce v-ați abonat și ați confirmat din acest browser, nu mai întreabă. Nu păstrează nimic altceva decât 1 și doar dacă v-ați abonat. | Până când ștergeți datele acestui site |
Dacă refuzați, nu se setează niciun cookie de identificare. Vizitele sunt atunci grupate după un hash al adresei și al browserului, care se schimbă zilnic, care deosebește vizitatorii în scopul numărării și nu poate fi folosit pentru a vă urmări de la o zi la alta sau de la un site la altul. Vă puteți răzgândi ștergând cookie-urile acestui site și reîncărcând pagina.
Ce limbă vedeți
Paginile pot fi afișate și în alte limbi decât engleza. Limba primită se decide pe server, pentru fiecare pagină cerută, în această ordine: o limbă pe care ați ales-o singur (cookie-ul foxsdr_lang de mai sus sau ?lang= în link); altfel, limbile pe care browserul spune că le preferați, din antetul lui Accept-Language; altfel, limba principală a țării din care provine conexiunea, pe care Cloudflare, rețeaua din fața acestui site, o transmite împreună cu cererea sub forma unui cod de țară din două litere (CF-IPCountry); altfel, engleza. Nu se stochează nimic pentru a face această alegere: antetul și codul de țară sunt citite pentru acel singur răspuns și nu sunt păstrate în acest scop. Sunt aceleași două lucruri pe care tabelul de mai sus le listează deja ca fiind înregistrate la fiecare afișare de pagină, unde codul de țară este folosit când propria noastră căutare a adresei nu are un răspuns. Traducerile sunt făcute automat, iar pentru această notă și pentru licențe textul în engleză este cel obligatoriu.
De ce și pe ce temei
Scopul este restrâns: să știm câți oameni găsesc acest proiect, aproximativ unde se află, pe ce îl rulează și câți ajung să-l descarce. Asta decide dacă munca continuă și ce se construiește în continuare.
Înregistrările de pe server sunt păstrate în temeiul interesului legitim de a înțelege și de a securiza site-ul. Detaliile raportate de browser și cookie-urile de identificare sunt păstrate în temeiul consimțământului dvs., motiv pentru care se află în spatele bannerului și pentru care refuzul nu vă costă nimic pe acest site.
Cât timp sunt păstrate și cine le vede
Înregistrările sunt păstrate 24 de luni și apoi șterse. Se află într-un fișier pe server, în spatele unui panou de control protejat prin parolă pe care îl poate deschide doar persoana care întreține proiectul. Nu există alți destinatari și niciun transfer către o țară terță în afara căutării IP deja descrise.
Două lucruri sunt păstrate mai puțin timp. Rapoartele de prăbușire și de blocare sunt șterse la 90 de zile după ultima apariție a defectului pe care îl descriu, iar rapoartele de utilizare prelucrate de Cloudflare sunt șterse după trei luni. Fiecare dintre aceste perioade este impusă de un cod care rulează zilnic pe server, nu de cineva care își amintește să o facă.
Drepturile dvs.
Dacă vă aflați în Regatul Unit sau în UE, puteți cere o copie a datelor deținute despre dvs., puteți cere corectarea sau ștergerea lor ori vă puteți opune colectării lor — inclusiv în cazul înregistrărilor de pe server care nu depind de consimțământ. Identificatorul practic pentru găsirea înregistrărilor dvs. este adresa IP pe care o aveați în momentul vizitei, așa că vă rugăm să o includeți, împreună cu momentul aproximativ al vizitei.
Pentru aplicație, comenzile se află chiar în software și sunt trei:
- SISTEM → Raportare utilizare oprește raportul de utilizare și semnalul de la cinci minute și șterge identificatorul de instalare. Dacă o reactivați mai târziu, primiți un identificator nou, care nu poate fi legat de cel vechi.
- SISTEM → Diagnostic oprește scrierea și trimiterea rapoartelor de prăbușire și de blocare.
- SISTEM → Actualizări oprește verificarea actualizărilor (într-o copie din Microsoft Store, întrebarea adresată Microsoft Store).
Rapoartele nu conțin nimic care să poată fi legat de dvs., deci nu există nimic la care să cereți acces; dacă doriți ca un identificator de instalare să fie eliminat din rapoartele deja trimise, scrieți la adresa de mai jos și citați-l, iar acesta va fi șters.
Copii. FoxSDR este un instrument tehnic pentru pasionații de radio. Nu se adresează copiilor, nu colectează informații personale de la nimeni și, prin urmare, nu colectează niciuna de la copii.
Scrieți la [email protected]. Puteți depune și o plângere la Information Commissioner's Office (ico.org.uk) dacă considerați că acest lucru a fost gestionat necorespunzător.
Ultima actualizare: 28 septembrie 2026, pentru FoxSDR 0.99.42 — build-ul oferit în prezent de acest site și cel cu a cărui sursă a fost verificată fiecare afirmație de mai sus. FoxSDR este publicat de Steven Fox; scrieți la adresa de mai sus pentru orice întrebare despre această notă sau pentru a cere ștergerea unui identificator de instalare din rapoartele deja trimise. Dacă această notă nu mai corespunde vreodată cu ce face software-ul, software-ul este cel greșit — colectarea site-ului este implementată în store.go și app.js, ambele lizibile în sursa proprie a site-ului, iar lista proprie a aplicației este livrată împreună cu ea ca PRIVACY.md, cu un test care leagă conținutul trimis de ea.