Talk Android - UnifiedPush

Sisällys
  1. Mikä on UnifiedPush?
  2. Vaatimukset
  3. Käyttöönotto
  4. Palvelinpään asetukset omien palvelimien ylläpitäjille

Mikä on UnifiedPush?

Normaalisti Android-järjestelmät käyttävät reaaliaikaisten push-ilmoitusten vastaanottamiseen Googlen Firebase Cloud Messaging -palvelua. Tämä systeemi on kehitetty akunsäästön takia, ainakin hyväntahtoisesti ajatellen. Karvalakkimallin vaihtoehto olisi toteuttaa jokaisessa sovelluksessa oma tarkkailu ilmoituksille. Tähän todennäköisimmät vaihtoehdot ovat joko ajoittainen ilmoitusten tarkistus palvelimilta, tai pysyvän yhteyden pitäminen auki kyseisiin palvelimiin. Kun nykyälypuhelimen käyttäjällä on todennäköisesti asennettuna usein toistakymmentä eri ilmoituksia vastaanottavaa sovellusta, näiden erillisten ilmoitusten hakujen virrankulutus nousee äkkiä suureksi, ja akku tyhjenee nopeasti.

Lisäksi nyky-Android on todella vastahakoinen antamaan sovellusten toimia taustalla, ja syykin on sama akunkesto, edelleen sinisin silmin katsellen. Samalla iso G saa kätevästi dataa ihmisten elämästä, kun kaikki tieto pikaviesteistä pitsan toimituksiin kulkee heidän palvelimiensa kautta.

Yksityisyyttään arvostaville tämä on hieman harmillista, koska esimerkiksi avoimen lähdekoodin viestisovellusten kuten Element (Matrix) vaativat reaaliaikaisiin ilmoituksiin edelleen isojen firmojen välikäden. Vaikka suurin osa nykysovelluksista toimiikin siten, että ilmoituspalvelun kautta välitetään ainoastaan tieto uudesta ilmoituksesta ilman varsinaista sisältöä, voi siitäkin päätellä jo yhtä ja toista - IP-osoitteen kautta käyttäjän sijainnin, vastaanottavan sovelluksen, ilmoituksen ajankohdan, ilmoitusten määrän jne. Näistä data-analyytikot voivat keksiä kaikenlaista kivaa mainosten kohdentamiseksi.

Applen laitteissa vastaavana välikätenä toimii Apple, ja valitettavasti iOS:lle ei ole varteenotettavaa vaihtoehtoa olemassa.

UnifiedPush taas on avoin protokolla, joka astuu tämän kaupallisen ilmoitusmallin tilalle. Systeemi toimii siten, että asiakaslaiteella on yksi sovellus, joka vastaanottaa ilmoituksia sovellusten puolesta erilliseltä palvelimelta. Näitä ovat esimerkiksi tässä artikkelissa käytetty ntfy ja Gotify, lisäksi juuri Talkiin liittyen on olemassa Nextcloudin omissa artikkeleissaan käyttämä Sunup.

UnifiedPushia tukevat sovellukset, kuten Talk, tunnistavat että tällainen ilmoitusjakelija on puhelimella asennettuna, ja kertovat omalle palvelimelleen (tässä tapauksessa Pilviboksin Nextcloud), että toimitappas minulle ilmoitukset tämän palvelimen kautta Googlen sijasta.

Tässä esimerkissä Pilviboksin palvelimet ilmoittavat siis ntfy-palvelimelle uniikin ID:n omaavalle kanavalle, että nyt olisi luettavaa Talkissa, josta käyttäjän puhelimelle asennettu ntfy taas tunnistaa ilmoituksen ja ilmoittaa puolestaan puhelimelle asennetulle Talk-sovellukselle. Sovellus sitten hakee Pilviboksilta ilmoituksen sisällön ja näyttää ilmoituksen.

Vaatimukset

  • Nextcloudin palvelin vähintään versiossa 34, ts. kaikki Pilviboksin Nextcloudit sopivat
  • Talk Android-sovelluksen versio 24.0.2 (sekä F-Droid että Play kauppa ovat jo tässä versiossa)
  • UnifiedPush-sovellus asennettuna sekä siihen liittyvä palvelin

Esimerkissä käytetään ntfy:ä ja Pilviboksin palvelinta, mutta mikä tahansa palvelu pitäisi toimia samalla periaatteella

Käyttöönotto

Asenna ensin ntfy-sovellus ja vaihda oletuspalvelimen URL haluaamasi:

Ntfy oletuspalvelimen asetus sovelluksessa

Avaa sen jälkeen Talk-sovelluksen asetukset ja laita sieltä Enable UnifiedPush -asetus päälle:

UnifiedPush-asetus Talk Android-sovelluksessa

Huom! voit joutua käynnistämään sovelluksen uudelleen, jotta UnifiedPush-jakelija havaitaan

Myönnä Talkille lisäksi lupa näyttää ilmoituksia sekä oikeus toimia taustalla ilman rajoituksia. Taustatoimintarajoituksen poistaminen vaihtelee puhelinmalleittain.

Varmista vielä ntfy-sovelluksesta, että Talk rekisteröityi siihen vastaanottamaan ilmoituksia:

com.nextcloud.talk2 ntfy-topikeissa

Ja valmista tuli! Nyt voit viesteillä Talkilla luovuttamatta ilmoitusten tietoja mainostajien käyttöön! UnifiedPush-tuki Talkissa on loistava askel Nextcloudilta oikeaan suuntaan. Mielenkiinnolla odotetaan, saadaanko Files-sovellukseen myös UP-tuki, tällä hetkellä sen ilmoitukset kulkevat edelleen Googlen palvelimien kautta.

Apple-käyttäjät valitettavasti ovat toistaiseksi jumissa Applen kanssa, iOS ei ilmeisesti salli vastaavaa ilmoituspalvelua.

Tämän kakun pohja on toki karrelle palanut Googlen siirtyessä yhä enemmän ja enemmän suljetun ympäristön suuntaan aiemmin niin avoimesta Androidista. Vielä voi kuitenkin taistella tuulimyllyjä vastaan, onhan meillä edelleen mm. /e/OS, GrapheneOS ja LineageOS vaihtoehtona kaupan Androidille.

Palvelinpään asetukset

Loppuun vielä tiedoksi myös omaa Nextcloudiaan ylläpitäville, UnifiedPush vaatii Nextcloud-palvelimelta Web Push -tuen, joka on lisätty versiossa 34. Päivitettyäsi palvelimen, löydät Web Push -asetuksen admin-käyttäjällä osiosta Ylläpitäjän asetukset -> Ilmoitukset:

Nextcloud-palvelinpään Web Push -asetus

Asetus on oletuksena pois päältä, ja Talk-sovelluksen UnifiedPush-kytkin ei näy ennen asetuksen päälle laittamista. Asetuksen ilmaantuminen voi vaatia Talk-sovelluksen lopettamisen ja uudelleenkäynnistyksen.

« Takaisin ohjeiden etusivulle