Gå til indholdet

Hvad jeg samler ind

Frivillig, anonym statistik. Her er alt, hvad der sendes, og alt, der aldrig gør.

Hjælp mig med at forbedre Nielix. Jeg vil meget gerne have lidt tal fra din server. Jeg bruger dem udelukkende til at udvikle Nielix videre og til at se, hvilke funktioner der bruges, og hvilke der ikke gør.

Jeg får aldrig noget privat: ingen titler, filnavne, mapper, brugernavne, mails, kanaladresser eller hvad du ser. Kun grove tal, fx hvilken version du kører, og om du bruger eksterne kanaler. Jeg gemmer ikke din IP-adresse. Det er slået til fra start, og du kan slå det fra, når du vil.

Serveren sender højst én besked om ugen. Siden her beskriver beskeden felt for felt, og listen er den samme liste, som serveren og min modtager bruger. Et felt, der ikke står her, kan min modtager slet ikke tage imod.

Felterne, ét for ét

Beskeden har præcis disse felter. Alle er påkrævede. Findes der et felt i beskeden, som ikke står her, afviser jeg hele beskeden, og der gemmes intet.

schema

Hvilken udgave af beskedens opbygning, der bruges. Så jeg kan ændre formatet uden at fortolke gamle beskeder forkert.

Mulige værdier:Altid 1

install_id

Et tilfældigt UUID, din server selv laver første gang og gemmer lokalt. Det er ikke knyttet til din konto, dit server-id eller andet. Det bruges kun til at tælle den samme installation én gang pr. uge, og til at du kan få dine data slettet.

Mulige værdier:Et tilfældigt UUID (version 4)

version

Hvilken version af Nielix serveren kører.

Mulige værdier:Versionsnummer, højst 40 tegn, fx 0.9.1 eller 0.9.1-rc.1

os

Operativsystemet serveren kører på: linux, windows, darwin (macOS) eller other.

Mulige værdier:linux | windows | darwin | other

arch

Processortypen: amd64, arm64, arm eller other.

Mulige værdier:amd64 | arm64 | arm | other

runtime

Om serveren kører i en Docker-container (docker) eller på anden måde (other).

Mulige værdier:docker | other

hw_transcode

Om serveren bruger hardwareaccelereret omkodning: none, vaapi, qsv, nvenc eller other.

Mulige værdier:none | vaapi | qsv | nvenc | other

features_enabled

Hvilke funktioner der er slået til i serveren, som ja/nej. Intet om, hvad de bruges til.

Indeholder disse 11 ja/nej-felter (samme liste i begge grupper): (ja eller nej)

external_channels
Eksterne kanaler (live-tv fra kanalkilder, du selv har sat op).
downloads
Hentning af indhold fra serveren.
syncplay
Synkron afspilning, hvor flere ser det samme på samme tid.
guest_links
Gæstelinks, hvor andre kan se noget uden egen bruger.
recordings
Optagelser af kanaler.
dlna
DLNA, så fx et tv kan finde serveren.
push
Pushbeskeder til telefoner.
screensaver
Pauseskærmen.
mcp
MCP-serveren, så en AI-assistent kan styre serveren.
own_channels
Egne kanaler, du selv sammensætter af dine medier.
offline_downloads
Offline-downloads til appen.

features_used_30d

Hvilke funktioner der faktisk er blevet brugt de seneste 30 dage, som ja/nej. Det er den vigtigste: en funktion kan være slået til uden at blive brugt.

Indeholder disse 11 ja/nej-felter (samme liste i begge grupper): (ja eller nej)

external_channels
Eksterne kanaler (live-tv fra kanalkilder, du selv har sat op).
downloads
Hentning af indhold fra serveren.
syncplay
Synkron afspilning, hvor flere ser det samme på samme tid.
guest_links
Gæstelinks, hvor andre kan se noget uden egen bruger.
recordings
Optagelser af kanaler.
dlna
DLNA, så fx et tv kan finde serveren.
push
Pushbeskeder til telefoner.
screensaver
Pauseskærmen.
mcp
MCP-serveren, så en AI-assistent kan styre serveren.
own_channels
Egne kanaler, du selv sammensætter af dine medier.
offline_downloads
Offline-downloads til appen.

counts

Grove antal i serveren, kun som interval og aldrig som præcist tal.

Indeholder disse 4 felter, alle som interval: (Et interval: 0, 1, 2-3, 4-10, 11-30, 31+)

users
Antal brugere på serveren.
libraries
Antal biblioteker.
channels
Antal kanaler.
devices
Antal enheder, der er logget ind.

client_kinds

Hvor mange af hver slags afspiller, der er parret, kun som interval.

Indeholder disse 5 felter, alle som interval: (Et interval: 0, 1, 2-3, 4-10, 11-30, 31+)

androidtv
Antal Android TV-enheder.
web
Antal browsere.
android
Antal Android-telefoner og tablets.
ios
Antal iPhones og iPads.
other
Alle andre slags enheder.

license_state

Serverens licenstilstand: free (gratis), premium, grace (i frist efter udløb) eller expired (udløbet). Ingen nøgle og ingen konto.

Mulige værdier:free | premium | grace | expired

uptime_days

Hvor mange dage serveren har kørt uden genstart. Siger noget om, om den er til at stole på i hverdagen.

Mulige værdier:Et helt tal mellem 0 og 36500

update_check_enabled

Om serveren selv tjekker efter nye versioner.

Mulige værdier:ja eller nej

language

Sproget serveren er sat til: da, en, sv, nb eller de.

Mulige værdier:da | en | sv | nb | de

Et eksempel på en besked

Sådan ser en hel besked ud. Værdierne er opfundne.

{
    "schema": 1,
    "install_id": "4f1c2a9e-7b3d-4e58-9a6c-2d1e0b7f5a43",
    "version": "0.9.1",
    "os": "linux",
    "arch": "amd64",
    "runtime": "docker",
    "hw_transcode": "vaapi",
    "features_enabled": {
        "external_channels": true,
        "downloads": true,
        "syncplay": true,
        "guest_links": true,
        "recordings": true,
        "dlna": true,
        "push": true,
        "screensaver": true,
        "mcp": true,
        "own_channels": true,
        "offline_downloads": true
    },
    "features_used_30d": {
        "external_channels": false,
        "downloads": true,
        "syncplay": false,
        "guest_links": false,
        "recordings": false,
        "dlna": false,
        "push": false,
        "screensaver": true,
        "mcp": false,
        "own_channels": false,
        "offline_downloads": false
    },
    "counts": {
        "users": "2-3",
        "libraries": "4-10",
        "channels": "11-30",
        "devices": "4-10"
    },
    "client_kinds": {
        "androidtv": "1",
        "web": "2-3",
        "android": "1",
        "ios": "0",
        "other": "0"
    },
    "license_state": "free",
    "uptime_days": 42,
    "update_check_enabled": true,
    "language": "da"
}

Hvad der aldrig sendes

Der er ingen plads til det i beskeden, så det kan ikke sendes, hverken ved en fejl eller med vilje.

  • Titler på film, serier, musik eller andet
  • Filnavne og stier
  • Navne på biblioteker
  • Brugernavne og e-mailadresser
  • Kanalnavne og kanaladresser
  • Lister over IP-adresser
  • Serverens adresse eller domæne
  • Navnet på maskinen eller containeren
  • Afspilningshistorik, og hvad nogen har set eller lyttet til
  • Serverens id og fingeraftryk

Sådan slår du det fra

Første gang du sætter serveren op, spørger guiden. Du kan slå statistikken fra dér.

Senere kan du slå den fra eller til under Indstillinger i serveren, og se præcis, hvad der sendes.

Vil du være sikker på, at serveren aldrig sender noget, så sæt miljøvariablen NIELIX_TELEMETRY=off. Så er den slået fra, uanset hvad indstillingerne siger.

NIELIX_TELEMETRY=off

Slet mine data

Under Indstillinger i serveren er der en knap, Slet mine data. Den sletter alt, jeg har gemt fra din installation, med det samme. Bag knappen ligger et enkelt kald, DELETE /api/v1/telemetry/ efterfulgt af dit install_id. Dit install_id er beviset, så jeg kan slette uden at vide, hvem du er.

Svaret er det samme, hvad enten jeg havde noget eller ej. De samlede tal pr. uge, hvor din installation er én blandt mange og ikke kan genkendes, ændres ikke.

Hvor længe jeg gemmer det

Den enkelte installations beskeder gemmer jeg i 13 måneder efter sidste besked. Derefter sletter jeg dem automatisk, og kun de samlede tal pr. uge bliver tilbage.

I mit eget overblik vises ingen gruppe på færre end 5 installationer. Er en gruppe mindre, står der kun, at den er under 5.

Jeg gemmer ikke din IP-adresse

Din IP-adresse og din browser- eller programtype gemmes ikke, hverken i databasen eller i mine logs. Adgangslogfilen for netop denne adresse er slået fra.

Beskeden går gennem min omvendte proxy (Traefik). Dens adgangslog er sat op til at udelade klientens adresse, og webserverens egen log gemmer heller ikke adressen.

Jeg slår kun et landekode op ud fra adressen, når beskeden ankommer (fx DK), ved hjælp af et datasæt, der ligger hos mig og ikke kalder nogen tredjepart. Adressen smides væk med det samme, og kun landekoden gemmes.

IP-geolokation: DB-IP Lite Country, fra db-ip.com, under Creative Commons Attribution 4.0.

Om install_id

Dit install_id er et tilfældigt UUID, som serveren laver lokalt. Det er ikke afledt af noget på din server og ikke knyttet til din konto hos mig, dit server-id, din licens eller dit navn. Det betyder, at jeg ikke ud fra statistikken kan se, hvem du er.

Samme id følger dog samme installation fra uge til uge, så jeg kan se, om installationer bliver ved. Det gør beskederne pseudonyme frem for helt uden mulighed for genkendelse, og derfor kan du altid få dem slettet.

Hvad serveren modtager fra mig

Serveren sender ikke kun. Ved den daglige synkronisering af licens, hvis serveren er forbundet til en konto, kan jeg svare med beskeder til serverens administrator: en sikkerhedsrettelse, en ny version eller en kort information. De vises som et banner i serverens administration og som en liste under Indstillinger.

Der er ingen reklame i dem, og der er ingen sporing. Jeg registrerer kun, at en besked er leveret til en server. Jeg kan ikke se, om den er læst eller afvist, og serveren melder det ikke tilbage.

En kritisk sikkerhedsbesked står også i opdateringsfeedet (latest.json) som securityAdvisory, så en server uden konto kan se den. Serveren sammenligner selv med versionen i beskeden, så kaldet til feedet fortæller mig ikke, hvilken version du kører.

Valgfrit, kun med konto: serveroversigt og sikkerhedskopi

Serveroversigt er slået fra som standard. Slår du den til under Licens i serverens administration, sender serveren ved synkroniseringen: version, hvor længe den har kørt, ledig diskplads i procent, hvor mange åbne punkter sundhedssiden har (kun et tal), om der findes en ny version, og licenstilstanden. Intet om indhold. Det knyttes til din konto, så du kan se status og få alarmer, og historikken slettes efter 30 dage.

Sikkerhedskopi af indstillinger i skyen er også slået fra som standard. Slår du den til, krypterer serveren kopien med en nøgle fra din adgangsfrase, før den sendes. Jeg kan ikke læse den og har ingen bagdør. Glemmer du frasen, kan kopien ikke åbnes. Jeg gemmer de 5 nyeste pr. server.

Hvad jeg bruger det til

Udelukkende til at udvikle Nielix videre: hvilke versioner der kører, hvilke funktioner der bruges og hvilke ikke, og om der er platforme, jeg bør tage mig mere af. Jeg sælger ikke tallene, deler dem ikke med andre og bruger dem ikke til reklamer.

En ærlig note

Tallene dækker kun dem, der har statistikken slået til og kører en version, der kan sende den. Der er mange, jeg ikke ser, og mine tal er derfor altid et minimum.

Se også: Privatlivspolitik, Fair use