Один MaxCode вместо десятка ключей: как PushMeld добавляет уведомления туда, где их не было
Один MaxCode вместо десятка ключей: как PushMeld добавляет уведомления туда, где их не было
Kuvitellaan kotitietokone, joka jokainen yö tekee varmuuskopion tärkeistä tiedostoista. Tulokset tallentuvat järjestelmä lokiin: operaation onnistunut suoritus tai virhe.
Teknisesti kaikki toimii. Epämukavuutta aiheuttaa aamulla se, että käyttäjän on itse avattava loki ja tarkistettava tulos. Ohjelmalla ei ole mobiilisovellusta, ilmoituksia ei ole kehittäjien suunniteltu lähettävän, eikä yhden ominaisuuden vuoksi haluta rakentaa erillistä infrastruktuuria.
Kautta PushMeld tällaisiin prosesseihin voi lisätä yksinkertaisen pyynnön. Varmuuskopioinnin jälkeen puhelimeen tulee viesti: varmuuskopio luotu tai operaatio päättyi virheeseen. Tarvittaessa sama ilmoitus voidaan saada myös sähköpostitse.
Tämän idean ytimessä on MaxCode — yhtenäinen suojattu koodi, jonka kautta PushMeld saa kaiken tarvittavan tiedon ilmoituksen toimitusta varten.
Kun tutustuin projektiin, juuri MaxCode vaikutti kiinnostavimmalta osalta. Push-ilmoitukset ja sähköposti eivät ole uusi keksintö. Tärkeämpää on se, että alkuperäinen ohjelma lopettaa hallinnan niiden toimituksesta. Se vain ilmoittaa PushMeldille tapahtumasta, ja kaiken muun hoitaa jo järjestelmä itse.
Kerron nyt kontekstin: PushMeld kuuluu MELD®-järjestelmään ja DigiMeld UG on sen kehittäjä tai kehitysyhtiö.
Lähde tietää vain tapahtuman
Yleinen ilmoitusten integrointi kaventuu nopeasti teknisiin yksityiskohtiin. Tarvitaan projekti, käyttöoikeuksien määrittäminen, avainten säilytys, laite-tokenit, sähköpostin toimittaminen ja erilaisten mobiilialustojen vaatimusten huomiointi.
PushMeld siirtää kaiken tämän alkuperäisestä järjestelmästä erilliseen hallittavaan konttiin.
Varmuuskopiointiohjelma tietää vain sen, että operaatio on onnistunut tai päättynyt virheeseen. Se lähettää MaxCode:n, viestin otsikon ja tekstin.
Sen ei tarvitse tietää:
kuinka monta laitetta on projektiin liitetty;
mikä puhelin on aktiivinen;
-
kautta minkä palveluntarjoajan pushin tulisi kulkea;
onko sähköpostilähetys käytössä;
onko käyttäjällä uusi älypuhelin;
oliko vanha tabletti poistettu käytöstä;
kenen tulisi saada tietty ilmoitus.
Kaikki tämä määritellään jo PushMeldin sisällä.
Minun mielestäni tämän projektin pääarkkitehtuurinen idea on siinä, että MaxCode siirtää hallinnan ilmoitusten osalta ohjelmasta, jossa tapahtuma on käsitelty, siihen järjestelmään, joka hoitaa toimituksen.
Yksi MaxCode rakentamien avainten sijaan
Yleensä ulkoisen palvelun liittäminen vaatii useiden entiteettien määrittämistä. Yksi on projektin tunniste, toinen pääsytunnus, lisäksi tarvitaan salaisuuksia, laitetokenit ja paikallisten palveluntarjoajien asetukset.
MaxCode kokoaa kaiken välttämättömän turvallisesti yhteen koodiin.
Jokaiselle projektille luodaan oma MaxCode. Siihen sisältyvät projektin tunniste, lähetysoikeus ja tiedot, jotka mahdollistavat PushMeldille ajantasaisen toimituskonfiguraation käytön.
Välittävä järjestelmä ei tarvitse säilyttää erikseen:
projektin tunnistetta;
API-avainta ja salaista avainta;
liitettyjen laitteiden tunnuksia;
kunkin vastaanottajan parametreja;
erilaisia push-palveluntarjoajien avaimia;
erillisiä asetuksia push- ja sähköpostilähetykselle.
Yksi MaxCode lisätään ohjelmaan, sivustolle tai skriptiin. Kun se saadaan viestin mukana, PushMeld itse tunnistaa projektin, tarkistaa pyynnön, löytää liitetyt laitteet ja valitsee käytettävät kanavat.
Siksi MaxCode ei ole enää yksi avain muiden joukossa. Sen tarkoitus on korvata kaikki epätäydelliset avainset yhdellä koodilla.
Ilmoitus siitä, missä ei ole odotettu
MaxCodea voi käyttää missä tahansa järjestelmässä, joka voi suorittaa HTTP-pyynnön itsenäisesti tai pienen apu-koodin kautta.
Esimerkiksi PushMeld voi ilmoittaa, kun:
kodin palvelin lakkaa vastaamasta;
varmuskopiointi on päättynyt tai virhe tapahtunut;
oma skripti suorittaa pitkän aikaisen tehtävän;
3D-tulostin on lopettanut tulostamisen;
anturi havaitsee vuodon;
ovi avautui tai hälytys hälyttää;
sivulla on nähtävissä tietty tieto;
tuotteen hinta muuttuu;
-
paikka tallennukselle vapautuu;
vanha ohjelma on valmis käsitellyt suuren tiedoston;
pienessä verkkokaupassa on uusi tilaus.
Jokaisella näistä lähteistä ei välttämättä ole omaa sovellusta. Jotkut laitteet voivat vain tehdä pyyntöjä tiettyyn osoitteeseen, toiset voivat käynnistää käyttäjän määrittämän komennon, ja kolmannet voidaan täydentää lyhyellä automaatiokäsikirjoituksella.
Tämä riittää tapahtuman välittämiseen PushMeldiin.
Lähteellä itsellään ei kuitenkaan ole tarvetta toimia ilmoituspalveluna. Se vain kirjaa tapahtuman ja lähettää viestin MaxCode kanssa. Muuta, kuten vastaanottajat, laitteet, kanavat ja tekniikan reitti, pysyvät PushMeldin hallinnassa.
Ei vain push vaan myös sähköposti
Nimen PushMeld kutsuu ensisijaisesti mobiili-ilmoituksia, mutta projektin toimintamahdollisuudet eivät tähän lopu.
Tarvittaessa ilmoitukset voidaan lähettää pushina, sähköpostina tai molempina — projektin asetusten ja käytettävissä olevien mahdollisuuksien mukaan.
Esimerkiksi varmuuskopioinnin onnistumisviesti riittää näytettäväksi puhelimella. Vakavan virheen voi lisäksi lähettää sähköpostitse.
Alkuperäinen ohjelma tekee kummassakin tapauksessa saman pyynnön MaxCode:n kanssa. Sen ei tarvitse erikseen liittää sähköpostipalvelinta, säilyttää asetuksia tai luoda toista itsenäistä skriptiä.
Toimituskanavat päättää itse PushMeld. Jos myöhemmin käyttäjä lisää sähköpostin olemassa olevaan projektiin, varmuuskopiointiohjelman ei tarvitse muuttaa itsestään.
Sähköpostia käytetään tässä ei massapostituksena, vaan lisäkeinona tapahtuman ilmoittamiseen, joka on tullut liitetyltä projektilta.
Yksi projekti — yksi tapahtumien lähde
Projekti mahdollistaa ilmoitusten jakamisen niiden käyttötarkoituksen mukaan.
Yleinen käyttäjä voi esimerkiksi luoda:
HomeServer— kotipalvelimen tila;Backups— varmuuskopioiden tulokset;SmartHome— anturit ja kotiautomaatio;PriceMonitor— hinnan muutokset;Website— sivuston uudet yhteydenotot.
Jokaisella projektilla on oma MaxCode. Näin kotiautomaatio ei käytä verkkosivuston koodia, eikä hintojen seuranta sekoitu varmuuskopioihin.
Sovelluksessa näkee heti, mistä viesti on tullut ja mihin projektiin se liittyy.
Such a division is especially useful when the sources increase. Instead of one common stream, the user receives several independent channels, each with its own delivery settings.
Tämä tekee hallinasta selkeämpää, koska jokainen lähde ja kanava voidaan räätälöidä omiin tarpeisiin.
Uusi puhelin ei vaadi ohjelman muokkausta
Yleinen push-tunnus liittyy tiettyyn sovelluksen asennukseen määritetylle laitteelle.
Jos käyttäjällä on kaksi puhelinta ja tabletti, tämä tarkoittaa useampaa tunnusta. Sovelluksen uudelleenasennus tai laitevaihto voivat muuttaa tokenin tai tehdä siitä käyttökelvottoman.
MaxCode sijaitsee tätä korkeammalla. Se liittyy projektiin, ei vain yhteen puhelimeen.
Käyttäjä itse määrittää, mitkä laitteet kuuluvat projektiin ja saavat ilmoituksia. Esimerkiksi kotipalvelimen ilmoitukset voidaan ohjata henkilökohtaiseen puhelimeen ja tablettiin, kun taas työverkkosivun tapahtumat vain viransijoittajalle.
Jos käyttäjä ostaa uuden puhelimen tai poistaa vanhan, alkuperäinen skripti käyttää edelleen samaa MaxCodea. Ajantasainen vastaanottajalista päivittyy PushMeldissä.
Samoin tapahtuu, kun lisäämällä sähköpostin tai muut muuttujat toimitustuelle.
MaxCode ei siis ole pelkkä avain, vaan rajapinta tapahtuman ja toimitusreitin välillä. Kaikki tämän rajapinnan jälkeen oleva voi muuttaa ilman, että alkuperäistä ohjelmaa tarvitsee muuttaa.
Ilmainen tavallisiin tehtäviin
Infrastruktuurituotteet mielletään usein yrityssovelluksiksi, palvelinkomentoiksi ja suureksi dataksi. Tämä voi johtaa käsitykseen, että PushMeld on tarkoitettu vain ammattilaisille ja yrityksille.
Käytännössä voi aloittaa helposti tavallisella kotikäytöllä.
Sovellus itsessään on ilmainen. MaxCode:n päätoiminnot toimivat myös ilman maksua, kun käytetään saatavilla olevia ilmaisia rajapintoja. Käyttäjä voi luoda projektin, liittää laitteen ja vastaanottaa ilmoituksia omalta palvelimelta, verkkosivulta, skriptiltä tai kotiautomaatiojärjestelmästä.
Kyseessä ei ole rajoitettu demo, joka lakkaa toimimasta, kun tutustuu tuotteeseen. Arkiarkikäytössä ilmaisten toimintojen käyttö voi riittää.
Lisäominaisuuksia tarvitaan, kun kyselyt lisääntyvät, tai tarvitaan uusia toiminnallisuuksia tai järjestelmää käytetään suuremmassa mittakaavassa.
Sama periaate ihmiselle ja yritykselle
MaxCoden toimintaperiaate ei muutu, riippumatta tehtävän laajuudesta.
Käyttäjä saa ilmoituksen varmuuskopiosta. Pienempi työpaja tietää, että 3D-printteri on lopettanut pitkän tulostuksensa. Verkkokauppa saa uuden tilauksen. Tietohenkilöstö saa ilmoituksen palvelimen virheestä.
Tehtävien volyymi ja projektien määrä vaihtelee, mutta periaate säilyy samana.
Esimerkkinä organisaatio, jolla on kolme lähdettä tapahtumille:
Orders— uudet tilaukset;Payments— tulot ja palautukset;ServerStatus— tekniset virheet.
Kullekin luodaan oma MaxCode ja määritellään laitteet. Tilausten saantia voi olla oikeutettu ns. omistaja ja esimiehenä, taloustilanteisiin vastuuhenkilö, ja palvelinvirheisiin tekninen henkilö.
Järjestelmä kukin tekee lähes saman: se välittää tapahtuman sisällön ja projektin MaxCoden.
Jos työntekijät, laitteet tai toimitustavat muuttuvat, alkuperäistä järjestelmää ei tarvitse uudelleenkouluttaa. Hallinta pysyy PushMeldissä.
APNs, FCM ja HMS jäävät ulkopuolelle
Push-ilmoitusten toimittamiseen eri laitteille käytetään APNs:ää, FCM:ää tai HMS:ää. Jokaisella palveluntarjoajalla on omat sääntönsä, tunnuksensa ja tekniset erityispiirteensä.
Nämä erot on yleensä otettava huomioon lähetystä suunniteltaessa. PushMeldin tapauksessa ne jäävät MaxCode:n ulkopuolelle.
Kodin palvelin, verkkosivusto tai skripti ei määrittele, mitä laitetta vastaanottaja käyttää tai millä infrastruktuurilla viestin tulisi kulkea. Se tekee yhden pyynnön, ja PushMeld valitsee oikean reitin.
MaxCode ei korvaa Apple-, Google- tai Huawei-infrastruktuuria, vaan toimii yhtenäistä sisäänkäyntiä sen edessä.
Näin alkuperäinen järjestelmä ei tarvitse muutos kohteina olevien laitteiden takia. Tänään viesti voidaan lähettää FCM:n kautta, huomenna APNs:n ja mahdollisesti myöhemmin projektiin tulee vielä yksi puhelin tai sähköposti. Tapahtuman lähettäjä ei näihin muutoksiin reagoi.
MaxCode ja tavallinen API-avain eivät ole sama asia
Tavallinen API-avain mahdollistaa pääsyn palveluun, mutta ei kerro mitään muusta kuin sen, että käyttäjä on oikeutettu käyttämään palvelua. Eteenpäin on jatkettava vielä projekti, vastaanottajat ja toimitustapa.
MaxCode yhdistää tämän kaiken yhteen koodiin.
Se sallii PushMeldin tunnistaa projektin, tarkistaa pyynnön ja käyttää asianmukaista ajantasaista asetusta. Ulkoinen järjestelmä välittää vain MaxCoden ja tapahtumatiedon, mutta ei hallitse reittiä.
Lyhyesti: API-avain avaa pääsyn toimintoihin, mutta MaxCode määrittelee, missä kontekstissa ja mihin näistä toiminnoista tulee suorittaa.
Ilmoitus liitettävänä ominaisuutena
Kun tutustuin PushMeldiin, en olisi kutsunut sitä vain push-ilmoitussovellukseksi.
Vähemmän on oikeasti enemmän: tämä on tapa lisätä ilmoituksia sinne, missä niitä aiemmin ei ollut, ja hallita niitä riippumatta alkuperäisestä ohjelmasta.
Lähteenä voi olla kotipalvelin, anturi, vanha sovellus, verkkosivusto, skripti tai yrityksen sisäinen järjestelmä. Jos se pystyy tekemään HTTP-pyynnön itsenäisesti tai pienellä apuohjelmalla, tapahtuman voi siirtää PushMeldiin.
Sitten MaxCode muodostaa rajapinnan tapahtuman ja toimitusreitin välille. Toisella puolella on ohjelma, joka kertoo tapahtuneesta. Toisella PushMeld, joka tunnistaa projektin, laitteet, kanavat ja teknisen reitin.
Siten tärkeintä ei ole pelkästään se, että MaxCode korvaa useita avaimia yhdellä. Se siirtää ilmoitusten hallinnan alkuperäisen järjestelmän ulkopuolelle.
Puhelin voi vaihtua, sähköposti lisätä, vanha laite poistaa, ja toimitusreitti päivittää. Ohjelma jatkaa yhtä asiaa: ilmoittaa tapahtuman.
\"\n \",\n \"seo_title\": \"MaxCode sijasta avainten joukko: kuinka PushMeld hallitsee ilmoituksia\",\n \"seo_description\": \"PushMeld käyttää MaxCodea yksinkertaistaakseen ilmoitusten toimitusta laitteille ja sähköposteihin, erottaen hallinnan alkuperäisestä järjestelmästä ja laajentaen mahdollisuuksia.\",\n \"og_title\": \"Yksi MaxCode monien avainten sijaan: kuinka PushMeld lisää ilmoituksia sinne, missä niitä ei aiemmin ollut\",\n \"og_description\": \"PushMeld käyttää MaxCodea yksinkertaistaakseen ilmoitusten hallintaa ja toimitusta, eriyttäen tämän alkuperäisestä järjestelmästä ja laajentaen mahdollisuuksia.\"\n}"}