• Apprise 1.13 blir slutstationen för 1.x-serien

    Apprise 1.13 har släppts med stöd för fler meddelandetjänster, krypterade Bark-notiser och rikare Telegram-meddelanden. Samtidigt markerar versionen slutet för Apprise 1.x. Nästa större utvecklingssteg blir Apprise 2.x, som kommer att innehålla förändringar som kan bryta befintliga integrationer.

    Apprise är ett verktyg med öppen källkod som gör det möjligt för ett program att skicka meddelanden genom ett stort antal olika tjänster. I stället för att utvecklaren behöver skriva en separat integration för exempelvis Telegram, e-post och andra meddelandetjänster kan Apprise fungera som ett gemensamt lager mellan programmet och mottagarna.

    Verktyget används bland annat i servrar, övervakningssystem och automatiserade skript. Ett program kan exempelvis använda Apprise för att meddela administratören när en säkerhetskopiering är klar, en hårddisk börjar rapportera fel eller en tjänst har slutat fungera.

    Tre nya meddelandetjänster

    Apprise 1.13 lägger till stöd för tjänsterna Pinglet, Trigv och Pingram. Pingram ersätter den tidigare integrationen med NotificationApi, som nu har tagits bort.

    För den vanliga användaren betyder detta att ännu fler meddelandetjänster kan anslutas genom samma system. För utvecklare minskar behovet av att själva underhålla flera olika API-integrationer.

    Det är en av Apprises viktigaste idéer: programmet som skapar meddelandet behöver inte känna till alla tekniska detaljer hos mottagartjänsten. Apprise översätter i stället meddelandet till ett format som den aktuella tjänsten förstår.

    Telegram får rikare meddelanden

    Telegram-integrationen har förbättrats med stöd för rikformaterade meddelanden. Det gör det möjligt att skicka mer lättlästa och strukturerade notifieringar än tidigare.

    Ett övervakningssystem kan exempelvis framhäva ett allvarligt fel, dela upp informationen i tydliga avsnitt eller skicka länkar som är enklare att öppna. Det kan verka som en mindre förändring, men tydlig formatering är viktig när många automatiska meddelanden skickas till samma kanal.

    Även Matrix har fått en förbättring. Långa meddelanden delas nu upp på ett bättre sätt, vilket minskar risken för att information kapas eller blir svår att läsa.

    Bark får kryptering med AES-GCM

    En annan viktig nyhet är att Bark-notiser nu kan skyddas med AES-GCM-kryptering.

    AES är en välkänd standard för symmetrisk kryptering. Det innebär att samma hemliga nyckel används för att kryptera och dekryptera informationen. GCM-läget skyddar inte bara innehållet från obehörig läsning, utan kan även upptäcka om den krypterade informationen har förändrats på vägen.

    För meddelanden som innehåller känslig information ger detta ett bättre skydd än att enbart förlita sig på transporten mellan avsändaren och tjänsten.

    Flera fel har rättats

    Version 1.13 innehåller också en rad rättningar. Webhooks för Microsoft Workflows med så kallad CU-dirigering ska nu fungera korrekt. Ett fel som hindrade vissa e-postbilagor som lagrades direkt i minnet har också åtgärdats.

    Utvecklarna har dessutom rättat problem med bland annat:

    • hantering av identitetsnummer för Splunk-entiteter
    • tolkning av felaktigt utformade URL-adresser
    • URL-koordinater för D-Bus och GLib
    • fler säkra sökvägstecken enligt RFC 3986
    • varningar i projektets automatiska tester

    Dokumentationen har samtidigt förbättrats. Kommandoradsverktygets hantering av bifogade filer förklaras tydligare, och information om proxyinställningar har lagts till i manualsidan. Projektet har även fått en italiensk översättning.

    Sista versionen i 1.x-serien

    Den största nyheten handlar egentligen inte om någon enskild funktion. Apprise 1.13 blir enligt utvecklaren den sista funktionsversionen i hela 1.x-serien.

    Den fortsatta utvecklingen flyttas till Apprise 2.x. Den nya huvudversionen kommer att innehålla förändringar som inte är fullt kompatibla med äldre installationer. Program som bäddar in Apprise kan därför sluta fungera om de automatiskt uppgraderar till version 2 utan att först anpassas.

    Utvecklare som behöver ligga kvar på den nuvarande serien rekommenderas därför att begränsa vilken version som får installeras:

    apprise>=1.0.0,<2.0.0
    

    Detta betyder att pakethanteraren får installera nya versioner inom 1.x-serien, men inte automatiskt byta till Apprise 2.0 eller senare.

    Säkerhetsstöd fortsätter

    Att Apprise 1.13 är den sista 1.x-versionen betyder inte att serien omedelbart överges. Utvecklaren räknar med att fortsätta publicera säkerhetsrättningar under ungefär ett till två år.

    På längre sikt blir Apprise 2.x däremot den rekommenderade grenen. Organisationer och utvecklare som använder Apprise bör därför kontrollera sina installationer, låsa versionsberoendet där det behövs och börja planera för en framtida övergång.

    Apprise 1.13 fungerar därmed både som en vanlig funktionsuppdatering och som en tydlig vägskylt inför framtiden. Versionen förbättrar dagens meddelanden, men gör det samtidigt klart att nästa stora steg kommer att kräva mer noggranna förberedelser.

    https://github.com/caronc/apprise/releases/tag/v1.13.0

    Apprise 1.13 – fakta

    Program: Apprise

    Version: 1.13

    Licens: Öppen källkod

    Användning: Skickar notifieringar genom många olika meddelandetjänster.

    Nya tjänster: Pinglet, Trigv och Pingram

    Nyheter: Telegram-meddelanden med rik formatering och AES-GCM-kryptering för Bark.

    Viktigt: Apprise 1.13 är den sista funktionsversionen i 1.x-serien.

    Rekommenderat versionskrav: apprise>=1.0.0,<2.0.0

  • En ringklocka utan sladdar – när webben ringer på dörren

    En QR-kod på dörren, en webbsida som “ringer”, och en konsol inomhus som plingar till via en egen ntfy-server – kan det verkligen fungera som ringklocka? I praktiken visade det sig vara oväntat stabilt och snabbt, även om det knappast ersätter en klassisk installation permanent. Här publicerar vi den testade koden och visar vilka få inställningar du behöver ändra för att komma igång.

    Tänk dig en ringklocka som inte sitter i väggen, inte kräver någon särskild hårdvara och inte ens behöver vara i samma byggnad som du själv. I stället består den av en QR-kod, en webbsida och en notifieringstjänst. Det låter som ett experiment – och det är det också – men ett förvånansvärt fungerande sådant.

    I en tidigare artikel beskrev vi hur man kan bygga en mjukvarubaserad ringklocka med hjälp av QR-kod, egen domän och en självhostad ntfy-server. Nu har lösningen testats i praktiken, och dessutom publiceras den kod som faktiskt användes. Den skiljer sig något från den som visades i det första inlägget.

    Resultatet? Inte något man installerar som permanent ersättning för en vanlig ringklocka, men absolut ett intressant och lärorikt bygge.

    Två delar som tillsammans bildar ett “pling”

    Systemet är uppdelat i två tydliga delar som samverkar via webben.

    Den första delen är webbsidan som QR-koden pekar på. QR-koden sitter exempelvis på dörren eller porten. När någon skannar den öppnas en enkel webbsida där besökaren kan ”ringa på”. Ett klick räcker för att ett meddelande ska skickas vidare.

    Den andra delen är konsolen på insidan. Det kan vara en dator, surfplatta eller mobil som har en webbsida öppen i webbläsaren. Den sidan lyssnar på notifieringar från ntfy-servern. När någon ringer på hörs ett ljud och ett meddelande visas direkt på skärmen.

    All kommunikation sker i realtid, helt via webbläsaren.

    Hur fungerade det i praktiken?

    Överraskande bra.

    Notiserna dök upp snabbt, ljudsignalen fungerade stabilt och hela lösningen kändes oväntat robust så länge nätverket var tillförlitligt. Samtidigt märks det tydligt att detta inte är tänkt som en långsiktig hushållsprodukt. Det är mer ett tekniskt experiment än en färdig konsumentlösning.

    Men som koncept och demonstration är det mycket lyckat.

    Den testade koden och nödvändiga ändringar

    När du laddar ner och packar upp arkivet med koden hittar du två mappar, en för webbsidan bakom QR-koden och en för konsolen.

    I filen index.html för webbdelen behöver du ändra adressen till din egen ntfy-server:

    const NTFY_URL = ”https://ntfy.exempel.se/ringklocka-Ringer”;

    Sätt adressen till den domän där din ntfy-server faktiskt finns.

    I konsolens index.html gör du motsvarande ändring:

    const NTFY_BASE = ”https://ntfy.exempel.se”;

    Även här ska adressen peka på din egen ntfy-domän.

    Vad krävs för att lösningen ska fungera?

    För att systemet ska fungera pålitligt behöver du några grundläggande förutsättningar. Du bör ha en egen domän, både för stabilitet och för att kunna använda HTTPS. Du behöver också tillgång till en ntfy-server, helst självhostad. Slutligen krävs en enhet som är igång och har konsolsidan öppen i webbläsaren.

    I övrigt behövs inga appar, inga användarkonton och ingen specialutrustning.

    Installera ntfy

    För att installera en ntfy-server på Ubuntu är det en fördel att ta det steg för steg. Börja med att se till att systemet är uppdaterat och att du har grundläggande verktyg som curl och gpg installerade. Därefter lägger du till ntfy-projektets officiella paketkälla. Det görs genom att hämta GPG-nyckeln och registrera arkivet i systemets APT-konfiguration. När paketkällan är på plats uppdaterar du paketlistan och installerar ntfy med systemets vanliga pakethanterare.

    När programmet är installerat skapar du en konfigurationsfil, vanligtvis /etc/ntfy/server.yml. Där anger du grundläggande inställningar, till exempel vilken extern adress servern ska använda, som https://ntfy.dindomän.se, samt vilken lokal port tjänsten ska lyssna på. Konfigurationsfilen behöver inte vara avancerad till att börja med, utan kan hållas mycket enkel.

    Nästa steg är att köra ntfy som en systemtjänst. Genom att aktivera tjänsten med systemd ser du till att den startar automatiskt vid omstart av servern. När tjänsten väl är igång kan du kontrollera att den fungerar genom att skicka ett testmeddelande till ett valfritt ämne.

    För praktisk och säker användning placeras ntfy normalt bakom en webbserver som Apache. Webbservern fungerar då som en omvänd proxy och vidarebefordrar HTTPS-trafik till ntfy-tjänsten som kör lokalt. Slutligen säkrar du uppkopplingen med ett TLS-certifikat, till exempel via Let’s Encrypt och Certbot.

    När dessa delar är på plats har du en stabil och självhostad ntfy-server som kan användas för allt från notifieringar till den mjukvarubaserade ringklockan till andra typer av realtidsmeddelanden.

    Varför är detta intressant?

    För att det visar hur långt man kan komma med enkla webbtekniker och öppna standarder. Med bara HTML, JavaScript och en notifieringstjänst går det att koppla samman den fysiska världen med webben på ett mycket direkt sätt.

    Samma idé kan användas för andra ändamål, till exempel enkla larmsystem, interna notifieringar, hjälpknappar eller tillfälliga installationer på mässor och evenemang.

    Det är kanske inte framtidens ringklocka, men det är ett tydligt exempel på hur kreativ mjukvara kan ersätta hårdvara – åtminstone ibland.

    Texten ovan bör ses som en övergripande beskrivning. Ett tips är att ta hjälp av en lämplig AI för att få allt att fungera.

    Länk för att ladda hem koden

    https://www.linux.se/kod/ringkloocka.tar

    Fakta: Mjukvaruringklocka med QR-kod och ntfy
    En experimentell ringklocka som använder en QR-kod på dörren och en webbsida som skickar en notifiering till en konsol via en egen ntfy-server.
    Består av:
    • Webbsida som QR-koden pekar på (”ring på”-knapp)
    • Konsolvy i webbläsaren som spelar ljud och visar meddelanden
    • ntfy-server som förmedlar notifieringar i realtid
    Du behöver:
    • Egen domän och HTTPS
    • En ntfy-server (helst självhostad på Ubuntu)
    • En enhet som är igång och har konsolsidan öppen
    Filer att ändra i koden:
    index.html: NTFY_URL
    consol/index.html: NTFY_BASE
    Tips: Se texten i artikeln som en övergripande beskrivning. Ta gärna hjälp av en lämplig AI för att få detaljerna rätt i din egen miljö.

Etikett: Notifieringar

  • Apprise 1.13 blir slutstationen för 1.x-serien

    Apprise 1.13 har släppts med stöd för fler meddelandetjänster, krypterade Bark-notiser och rikare Telegram-meddelanden. Samtidigt markerar versionen slutet för Apprise 1.x. Nästa större utvecklingssteg blir Apprise 2.x, som kommer att innehålla förändringar som kan bryta befintliga integrationer. Apprise är ett verktyg med öppen källkod som gör det möjligt för ett program att skicka meddelanden genom…

  • En ringklocka utan sladdar – när webben ringer på dörren

    En QR-kod på dörren, en webbsida som “ringer”, och en konsol inomhus som plingar till via en egen ntfy-server – kan det verkligen fungera som ringklocka? I praktiken visade det sig vara oväntat stabilt och snabbt, även om det knappast ersätter en klassisk installation permanent. Här publicerar vi den testade koden och visar vilka få…