Latest newsNederlands
Back to feedTechnologieNewsMeld Editorial

Один MaxCode вместо десятка ключей: как PushMeld добавляет уведомления туда, где их не было

Один MaxCode вместо десятка ключей: как PushMeld добавляет уведомления туда, где их не было

{"text": "{\n \"title\": \"Odin MaxCode in plaats van een dozijn sleutels: hoe PushMeld meldingen toevoegt waar ze vroeger ontbraken\",\n \"slug\": \"odin-maxcode-vmesto-desyatka-klyuchey-kak-pushmeld-dobavlyaet-uvedomleniya-tuda-gde-ih-ne-bylo\",\n \"excerpt\": \"Hoe MaxCode het beheer van push- en e-mailmeldingen verplaatst van websites, servers, scripts en apparaten naar PushMeld.\",\n \"body_markdown\": \"

Stel je een thuiscomputer voor die elke nacht een back-up maakt van belangrijke bestanden. Het resultaat wordt geregistreerd in het systeemlogboek: de operatie is succesvol voltooid of er is een fout opgetreden.

Technisch gezien werkt alles. Het ongemak ontstaat 's ochtends: de gebruiker moet zelf het logboek openen en de resultaten controleren. De toepassing heeft geen mobiele app, meldingen worden niet door de ontwikkelaars verzonden, en het opzetten van een aparte infrastructuur voor één functie is geen optie.

Met PushMeld kan een eenvoudige aanvraag aan dat proces worden toegevoegd. Na het voltooien van de back-up ontvangt de gebruiker een bericht: back-up gemaakt of operatie beëindigd met fout. Indien nodig kan hetzelfde bericht ook per e-mail worden ontvangen.

De kern van dit idee is MaxCode — een universele beveiligde code via welke PushMeld alle informatie ontvangt die nodig is voor verdere levering van de melding.

Toen ik tijdens mijn kennismaking met het project MaxCode zag, was dat voor mij de meest interessante component. Pushmeldingen en e-mail zijn geen nieuwe concepten. Veel belangrijker is dat de oorspronkelijke applicatie niet langer de levering ervan beheert. Ze meldt enkel het gebeurtenis, terwijl alles verdere buiten die applicatie wordt afgehandeld.

Ter verduidelijking: PushMeld behoort tot het systeem MELD®, en DigiMeld UG is het bedrijf dat het ontwikkelt.

De bron weet alleen dat er een gebeurtenis heeft plaatsgevonden

Een standaard integratie van meldingen groeit snel uit tot een complex geheel van technische details. Er moet een project worden ingesteld, toegang worden geconfigureerd, sleutels worden opgeslagen, device-tokens worden beheerd, e-maildiensten worden gekoppeld en verschillende mobiele platformeisen worden in acht genomen.

PushMeld verplaatst al deze stappen uit de oorspronkelijke systemen in een afzonderlijke, beheerde kringloop.

De back-upsoftware weet alleen dat de operatie succesvol is afgerond of dat er een fout is opgetreden. Ze geeft de MaxCode, en de kop- en berichttekst door.

Ze hoeft niet te weten:

  • Hoeveel apparaten aan het project gekoppeld zijn;

  • Welke telefoon momenteel actief is;

  • Door welke provider de push moet worden gestuurd;

  • Of de e-mail wordt verzonden;

  • Of de gebruiker een nieuwe smartphone heeft;

  • Of een oude tablet is uitgeschakeld;

  • Wie de specifieke melding moet ontvangen.

Dit wordt allemaal binnen PushMeld geregeld.

Volgens mij ligt hier de belangrijkste architectonische gedachte van het project: MaxCode verplaatst de meldingsbeheer van de applicatie waar de gebeurtenis plaatsvindt naar het systeem dat verantwoordelijk is voor de levering.

Een MaxCode in plaats van een set sleutels

Meestal moet je bij het koppelen van een externe service werken met meerdere entiteiten. Een project-ID, een toegangssleutel, mogelijk geheime tokens, device-tokens en provider-specifieke instellingen worden apart gebruikt.

MaxCode combineert alles dat nodig is voor verzending in één beveiligde code.

Voor elk project wordt een eigen MaxCode aangemaakt, waarin de projectidentificatie, verzendrecht en gegevens voor het toepassen van de juiste configuratie zijn samengevoegd.

De verzendende systemen hoeven niet apart op te slaan:

  • Project-ID;

  • API-sleutel en extra geheim;

  • Tokens van verbonden apparaten;

  • Parameters van elke ontvanger;

  • Sleutels van verschillende push-providers;

  • Specifieke instellingen voor push en e-mail.

Door het toevoegen van één MaxCode aan de toepassing, website of script kan PushMeld zelfstandig het project identificeren, de aanvraag verifiëren, verbonden apparaten vinden en de beschikbare kanalen selecteren.

Daarom moet MaxCode niet worden gezien als nog een sleutel extra; het vervangt de gebruikelijke bundel van losse sleutels, tokens en identifiers met één code.

Een melding daar waar het niet voorzien is

MaxCode kan worden gebruikt in elke systeem dat zelfstandig HTTP-verzoeken kan uitvoeren of via een kleine helper-script.

Bijvoorbeeld, PushMeld kan rapporteren wanneer:

  • De thuisserver niet meer reageert;

  • De back-up klaar is of een fout heeft veroorzaakt;

  • Een eigen script een langdurige taak heeft uitgevoerd;

  • Een 3D-printer klaar is met printen;

  • Een sensor een lekkage detecteert;

  • Een deur opengaat of alarm wordt geactiveerd;

  • Op de website nieuwe informatie wordt gepost;

  • De prijs van een product wijzigt;

  • Er ruimte vrij komt voor nieuwe gegevens;

  • Een oude applicatie een groot bestand heeft verwerkt;

  • Een kleine webwinkel een nieuwe bestelling ontvangt.

Voor elk van deze bronnen kan er een eigen app ontbreken. Sommige apparaten kunnen alleen een adres aanspreken, anderen kunnen een eigen commando uitvoeren, weer anderen kunnen worden uitgebreid met een kort automatisatiescript.

Het volstaat om het event te sturen naar PushMeld.

De bron wordt zo niet een onafhankelijk meldingssysteem, maar registreert enkel dat het event heeft plaatsgevonden en zendt een bericht met MaxCode. Al het andere — ontvangers, apparaten, kanalen en technische routes — blijft binnen PushMeld.

Niet alleen push, maar ook e-mail

Hoewel PushMeld vooral bekend staat voor push-meldingen op telefoons, beperkt de functionaliteit zich hier niet toe.

Voor het versturen kunnen push- en e-mailkanalen worden gebruikt — afhankelijk van de projectinstellingen en beschikbare opties.

Bijvoorbeeld, een bericht over een succesvolle back-up kan op de telefoon worden getoond. Ernstige fouten kunnen daarnaast per e-mail worden verstuurd.

De oorspronkelijke applicatie voert telkens hetzelfde verzoek uit met MaxCode. Ze hoeft geen e-mailserver te configureren, geen instellingen op te slaan en geen tweede scripts te maken.

De keuze van het kanaal wordt binnen PushMeld gemaakt. Als een gebruiker later een e-mailadres toevoegt aan een bestaand project, hoeft de back-upsoftware niet te worden aangepast.

Hier wordt e-mail niet gebruikt als massale distributiemethode, maar als aanvullende manier om een event dat door het gekoppelde project is gegenereerd, te melden.

Een project — één bron van gebeurtenissen

Projecten maken het mogelijk meldingen te scheiden op basis van hun doel.

Een gewone gebruiker kan bijvoorbeeld een project aanmaken zoals:

  • HomeServer — status van de thuisserver;

  • Backups — resultaten van back-ups;

  • SmartHome — sensoren en huisautomatisering;

  • PriceMonitor — prijswijzigingen;

  • Website — nieuwe berichten van de website.

Elk project krijgt een eigen MaxCode. Zo worden huisautomatisering en prijsmonitoring gescheiden, en kunnen verschillende plannings- en kanaalinstellingen worden toegepast.

Het is meteen duidelijk uit welk project een bericht komt en op welke taak het betrekking heeft.

Deze scheiding is vooral nuttig wanneer er meer bronnen bijkomen. In plaats van één stroom ontvangt men meerdere onafhankelijke kanalen, elk met eigen instellingen.

Een nieuwe telefoon zonder wijzigingen aan de software

Een standaard push-token is gekoppeld aan een specifieke installatie op een bepaald apparaat.

Heeft iemand twee telefoons en een tablet, dan zijn dat meerdere tokens. Na herinstallatie of vervanging kan een token veranderen of niet meer werken.

MaxCode opereert op een hoger niveau. Het is projectgebonden, niet toestelgebonden.

De gebruiker bepaalt zelf welke apparaten aan het project gekoppeld worden en meldingen ontvangen. Meldingen van de thuisserver kunnen bijvoorbeeld naar persoonlijke telefoons en tablets, terwijl bedrijfsmeldingen enkel naar een werk-smartphone worden gestuurd.

Wanneer iemand een nieuwe telefoon koopt of een oud apparaat uitschakelt, blijft de basis-sceen schrift hetzelfde MaxCode gebruiken. De actuele lijst van ontvangers wordt binnen PushMeld bijgewerkt.

Dit geldt ook voor het toevoegen van een e-mailadres of andere bezorgingsparameters.

Daarom is MaxCode niet zomaar een snelkoppeling of extra sleutel: het vormt een grens tussen het event en de route ernaartoe. Alles na die grens kan worden gewijzigd zonder de oorspronkelijke programma- of systeembron aan te passen.

Gratis voor eenvoudige opdrachten

Infrastructuurproducten worden vaak beschreven via bedrijfssystemen, servercommando's en grote hoeveelheden data. Hierdoor kan de indruk ontstaan dat PushMeld uitsluitend voor professionele ontwikkelaars en bedrijven is bedoeld.

In de praktijk kan je zomaar beginnen met een simpele thuisopdracht.

De applicatie zelf is gratis. De kernfuncties van MaxCode werken ook zonder betaling, binnen de beschikbare gratis limieten. Je kunt een project aanmaken, een apparaat koppelen en meldingen ontvangen van je server, website, script of huisautomatisering.

Dit is geen tijdelijke demonstratie-stand die stopt nadat je het product hebt leren kennen. Voor dagelijkse scenario's volstaat de gratis versie meestal.

Abonnementen zijn alleen nodig bij toenemend gebruik, meer functies of in grotere schaal inzet.

Eén principe voor individueel en zakelijk gebruik

De werking van MaxCode verandert niet met de omvang van de taak.

Een gebruiker krijgt een melding over een back-up. Een kleine werkplaats ontvangt een bericht dat een 3D-printer klaar is. Een e-commerce winkel ziet een nieuwe order. De technische ploeg wordt op de hoogte gesteld van een fout op de server.

De volumes en het aantal projecten verschillen, maar het principe blijft hetzelfde.

Stel je een organisatie voor met drie bronnen:

  • Orders — nieuwe bestellingen;

  • Payments — betalingen en terugbetalingen;

  • ServerStatus — technische foutmeldingen.

Voor elk wordt een eigen MaxCode gemaakt en worden apparaten ingesteld. Bestellingen kunnen naar eigenaar en manager; financiële gebeurtenissen naar de verantwoordelijke; en technische fouten naar de systeembeheerder.

De systemen van het bedrijf sturen in alle gevallen hetzelfde: de inhoud van het event en de MaxCode van het juiste project.

Als personeel, apparaten of bezorgkanalen wijzigen, hoeven de originele systemen niet te worden aangepast. Het beheer blijft binnen PushMeld.

APNs, FCM en HMS blijven buiten het systeem

Voor push-notificaties op verschillende apparaten worden doorgaans APNs, FCM of HMS gebruikt. Elke provider heeft zijn eigen regels, tokens en technische details.

Ontwikkelaars moeten hier meestal rekening mee houden, maar bij PushMeld blijven deze details buiten MaxCode.

De thuisserver, website of script bepaalt niet via welke infrastructuur de ontvanger berichten ontvangt. Ze doen een enkel verzoek, en PushMeld bepaalt de route.

MaxCode vervangt niet de infrastructuur van Apple, Google of Huawei, maar creëert een universele ingang daarvoor.

Het systeem hoeft dus niet mee te veranderen met gebruikersapparaten: vandaag via FCM, morgen via APNs, overmorgen nog een telefoon of e-mail toegevoegd. Voor de gebeurtenis zelf blijft alles hetzelfde.

MaxCode en gewone API-sleutel — niet hetzelfde

Een gewone API-sleutel geeft meestal enkel toegang tot een service. Daarna moet de gebruiker het project, de ontvangers en het kanaal apart aangeven.

MaxCode combineert die context in één code.

Het geeft PushMeld de mogelijkheid om het project te herkennen, de aanvraag te controleren en de juiste instellingen toe te passen. De externe applicatie verzendt MaxCode en de gebeurtenis, zonder verdere routes te specificeren.

Praktisch betekent dit dat een API-sleutel enkel toegang geeft tot een functie, terwijl MaxCode ook de context ervan definieert.

Melding als uitbreidbare mogelijkheid

Na kennismaking met PushMeld zou ik het niet enkel een push-notificatie-app noemen.

Meer een manier om meldingen toe te voegen op plaatsen waar ze eerder niet waren, en deze onafhankelijk van de oorspronkelijke applicatie te beheren.

De bron kan een thuisserver, sensor, oud-app, webshop, script of interne bedrijfssysteem zijn. Als die zelf HTTP-verzoeken kan doen, kan het event worden doorgegeven aan PushMeld.

Hierdoor brengt MaxCode de grens tussen het event en de levering; aan de ene kant de applicatie die meldt dat iets gebeurt, aan de andere kant PushMeld dat het project, de apparaten, kanalen en routes bepaalt.

Daarom is de belangrijkste kracht van MaxCode niet alleen in het vervangen van veel sleutels door één code. Het verschuift het beheer van meldingen buiten de oorspronkelijke systemen.

Het apparaat kan worden vervangen, een e-mail worden toegevoegd, een oud apparaat worden uitgeschakeld of de route worden gewijzigd. De applicatie blijft gewoon doen waar hij goed in is: het melden van een event.

\n \",\n \"seo_title\": \"MaxCode in plaats van meerdere sleutels: hoe PushMeld meldingen beheert\",\n \"seo_description\": \"PushMeld gebruikt MaxCode voor het vereenvoudigen van notificaties op apparaten en e-mail, losgekoppeld van de oorspronkelijke systemen en met uitgebreide opties.\",\n \"og_title\": \"Odin MaxCode in plaats van een dozijn sleutels: hoe PushMeld meldingen toevoegt waar ze vroeger ontbraken\",\n \"og_description\": \"Hoe MaxCode het beheer van push- en e-mailmeldingen verplaatst van systemen, servers, scripts en apparaten naar PushMeld voor meer flexibiliteit en controles.\"\n}"}