Matrix-IRC

Linux.fista
Versio hetkellä 21. lokakuuta 2024 kello 15.38 – tehnyt 193.209.168.1 (keskustelu) (→‎Sillan purkaminen)
(ero) ← Vanhempi versio | Nykyinen versio (ero) | Uudempi versio → (ero)
Siirry navigaatioon Siirry hakuun

Tarvisiko sillata IRCNet-kanava Matrixiin "paremmalla tavalla" eli plumbaamalla? Plumbaamalla saat kanavalle admin-oikeudet Matrixin puolelle josta on riemua joissain tilanteissa.

Homma on vähän kimuranttia mutta näillä ohjeilla pitäisi onnistua.

Ennakkotiedot

Tarvitset seuraavat tiedot:

  • IRC-siltabotin mxid - IRCNetissä @ircnet:irc.snt.utwente.nl
  • Oma mxid - @sina:palvelin.org
  • IRC-kanavan nimi - #esimerkki
  • IRC-käyttäjän nick, jolla on opit #esimerkki -kanavalla - opin_nick
  • Matrix-kanavan id - Alkaa huutomerkillä ja löytyy Element Webistä kanavan asetuksista Advanced | Internal room ID: !paLjOnKirJAimiA:palvelin.fi

Valmistelu

  • Luo Matrix-huone ellei ole jo. ÄLÄ laita päästä päähän -salausta päälle.
  • Luo IRC-kanava, ellei ole jo liittymällä siihen. Huolehdi että sinulla (tai avustajallasi) on op-status kanavalla.
  • Kutsu IRC-siltabotti Matrix-huoneeseen - Matrixissa /invite @ircnet:irc.snt.utwente.nl
  • Botti EI liity huoneeseen vielä. Voit silti tehdä seuraavan kohdan.
  • Aseta IRC-siltabotille riittävät oikeudet Matrixissa (PL99 riittää): /op @ircnet:irc.snt.utwente.nl 99
  • Aseta Matrix-huoneelle "Change permissions"-oikeus vaatimaan tason 99, jos haluat että silta voi asettaa IRC-puolen opit moderaattoreiksi.
  • JOS IRC-kanava on invite only (+i), kutsu IRC-siltabotti sinne: IRCissä /invite SNTMatrixBot

Siltaus

Työkalu, jolla siltaus onnistuu löytyy sivulta https://l4mrh4x0r.me/plumb-irc/ (lähdekoodi)

Anna työkalulle IRC-kanava, Matrix-kanavan ID, IRC-opin nick ja oma Matrix-tunnuksesi. Työkalu sanoo "Link request posted" jos tiedot ovat oikein.

Vaihtoehto: Siltaus JSON-pyynnöllä

Voit vaihtoehtoisesti tehdä siltauspyynnön curlilla jos se tuntuu hauskemmalta tai työkalu ei jostain syystä toimi.

Tee seuraavanlainen curl-komento (kirjoita vaikka tekstieditorissa ja copypastea terminaaliin):

curl --location --request POST 'https://matrix-irc.snt.utwente.nl/ircnet/provision/link' --header 'Content-Type: application/json' --data-binary '{
 "remote_room_server": "irc.snt.utwente.nl",
 "remote_room_channel": "#esimerkki",
 "matrix_room_id": "!paLjOnKirJAimiA:palvelin.fi",
 "op_nick": "opin_nick",
 "user_id": "@sina:palvelin.fi"
}'

Valmistelu

Kutsu siltabotti kanavalle (IRCNetissä @ircnet:irc.snt.utwente.nl)

Anna botille vähintään moderaattorin oikeudet.

Suorita CURL-pyyntö.

Vahvistus

Siltabotti kysyy nyt opin_nick-käyttäjältä IRC:ssä yksityisviestissä:

<SNTMatrixBot> @sina:palvelin.org has requested to bridge 'Kanavan nimi' (https://matrix.to/#/#kanava:palvelin.org) with #esimerkki on this IRC network. Respond with 'yes' or 'y' to allow, or simply ignore this message to disallow. You have 600 seconds from when this message was sent.

Vastaa: yes

Silta on nyt valmis! Jos on ongelmia, kysele IRCNet-sillan kanavalla #ircnet:utwente.io

Lopuksi

Tässä vaiheessa on varsinkin uudella kanavalla hyvä varmistaa että kanava on salainen +s ja vain opit voivat vaihtaa topicin +t. Lisäksi kannattaa asettaa reop-lista +R jotta opit eivat katoa IRCin puolella. Huomaa että Matrix-sillan luomilla IRCNet-käyttäjillä on uniikki pysyvä IPv6-osoite, eli sitä voi käyttää reop-listalla.

Sano IRC-käyttäjänä:

/mode #esimerkki +st +R *!matrixuuser@2001:xxx:yyy:zzz:0:0:0:xxxx +R *!ircuuseri@palvelin.fi

Kanavan päivitys

IRC-silta OSAA seurata kanavapäivitystä. Jos päivität kanavan uuteen versioon, silta tunnistaa sen ja käyttäjät tulevat automaattisesti kanavalle. Tämä tosin tapahtuu vasta kun käyttäjä sanoo jotakin tai silta käynnistetään uudelleen.

Portaalikanavan muuttaminen plumbatuksi

Tee näin ja tässä järjestyksessä:

  • Hanki opit IRC-kanavalla oikealla IRC-käyttäjällä.
  • Perusta uusi Matrix-kanava
  • Pura silta (katso kohta Sillan purkaminen)
  • Siltaa uusi kanava
  • Tee tombstone vanhalle kanavalle osoittamaan uuteen

Huom! Jos et pura siltaa ennen plumbausta, silta jää elämään kahdelle kanavalle eikä sitä saa vanhalta omatoimisesti pois. Tämä lienee bugi IRC-sillassa.

Sillan purkaminen

Sillan pitäisi purkautua kun viimeinen Matrix-käyttäjä poistuu kanavalta.

Jos haluat purkaa sillan ja säilyttää Matrix-kanavan, tee seuraavasti (Esimerkki IRCNetissä). Huom: tämä vaatii että olet saanut admin (PL100) -statuksen kanavalla.

  • Selvitä Matrix-kanavan ID (Advanced | Internal room ID)
  • Selvitä IRC-kanavan nimi IRC-verkossa
  • Varmista että sinulla on admin-status IRC-kanavalla.
  • Avaa viestiyhteys integraatiobotille (IRCNetissä @ircnet:irc.snt.utwente.nl) ja katso sen kotipalvelin (IRCNetissä irc.snt.utwente.nl)
  • Anna komento integraatiobotille:
!unlink !kanavanIdJossaPaljonKirjaimia:palvelin.fi irc.snt.utwente.nl #kanava

Heisenbridge

Heisenbridge on vaihtoehtoinen IRC-silta, jota käytetään joko henkilökohtaisena puppet-siltana tai relaybottina.

Heisenbridgejä EI ole julkisesti käytettävissä, se käytännössä pitää asentaa omalle kotipalvelimelle.

Relaysillan plumbaus

  • Lisää kyseessä oleva IRC-verkko Heiseniin
  • Luo uusi Matrix-kanava tarvittaessa, ei salausta
  • Selvitä Matrix-kanavan ID (Advanced | Internal room ID)
  • Sano verkon huoneessa: plumb !kanavanIdJossaPaljonKirjaimia:palvelin.fi #kanava

Portaali-IRC-kanavan muuttaminen Heisenbridgelle

IRC-sillan luomaa portaalikanavaa ei voi epäsillata !unlink-komennolla, vaan täytyy tehdä uusi kanava:

  • Perusta uusi Matrix-huone, ei salausta
  • Siirrä kaikki muut sillat uuteen huoneeseen
  • Kutsu vanhan huoneen Matrix-käyttäjät uuteen huoneeseen (ÄLÄ käytä tombstonea!)
  • Poista vanhan huoneen aliakset ja lisää ne uuteen huoneeseen
  • Poista vanha huone spaceista joissa se on, lisää uusi tilalle
  • Merkkaa vanha huone jotenkin vanhaksi. Vaihda huoneen nimi vaikka Vanha: (Huoneen nimi)
  • Plumbaa uusi huone Heisenbridgellä (kts ylempi otsikko)

Huomaa että vanhalle kanavalle pääsee liittymään yhä toisen IRC-sillan kautta. Näin liittyvät käyttävät näkyvät irkkaajina Matrixin kautta.

Helpotusta irkkaajille

Heisenbridge on ns. relaybot, eli sillä on yksi yhteys irkkiin ja se välittää usean käyttäjän viestit tämän yhden botin kautta:

<botti> <kayttaja> Morjensta!

IRC-clientteihin saa skriptejä, joilla botin osuus kadotetaan näkyvistä: