上一篇文章先簡單寫了一點 matrix這個用於網頁聊天與語音視訊通訊標準,這篇文章則會針對利用matrix技術的應用riot作介紹。

在電腦上要使用riot,當然得先到它們的官網: https://riot.im,然後請點選畫面右上角最右邊那一個門半開狀況的入口,以進入登入畫面。

在登入畫面中可選擇要在riot.im這台機器上建立個人用戶帳號(Default server)或是先以訪客身份guest登入來體驗RiotChat的環境與功能。至於另一個客制個人伺服器登入選項,我猜大概是指其它人也建置了一台Matrix 功能的服務器(假設為alice.com),你在alice.com已擁有一個Matrix帳號(ex. alice:matrix.alice.com),也可以一樣利用這個帳號來登入https://riot.im 。不過此刻我們先不管這個custom server,先在https://riot.im上註冊一個帳號吧。

首次登入riot.im時,因為尚未加入任何聊天室,所以應該是先看到大廳中(directory)列出了目前riot.im這台機器上所有願意公開在目錄列表上的聊天室。而在directory畫面中間上方出現的二個狀態列,左邊較長的那行是讓使用者可以輸入關鍵字來找聊天室的「搜尋列」,而右邊較短的「All networks」則是下拉式選單,它代表的應是連結到riot.im這台機器的其它matrix伺服器或支援整合matrix標準的網頁訊息服務器。如果進入其它的聊天室,但想要再回到directory大廳,可以按畫面左邊淺色背景列(姑且先將此左手邊稱之為「個人帳戶區」)最底下左邊第二個像「資料夾」的小圖示,就會讓你回到directory區。

同一個「個人帳戶區」最底下右邊那個小圖示,則是讓用戶進行個人帳戶各種選項設定的地方。

假設我們從directory搜尋找到#test這個功能測試的聊天室,決定先加入來簡單地測試riot簡單的發訊息傳檔案等功能。只要點擊該聊天室主題,再加入之前,會出現聊天室當中的預覧畫面,以再次確認你要加入此聊天的紅色訊息。正式加入後,則左手「個人帳戶區」的ROOMS也會顯示出你目前已加入的聊天室列表。

進入到某個聊天室後,畫面中間當然就是目前聊天室的發言狀態,用過IRC者想必知道,新加入的使用者並無法看到未加入前該聊天室之前的訊息記錄,但在riot.im上則有點類似slack.com,晚到的加入者,仍然可以在進入聊天室之後去回溯觀看更早之前的參與者到底聊了什麼內容。至於聊天室的一些功能,中間右上方那個放大鏡的圖示就是讓使用者可利用關鍵字來搜尋該聊天室的訊息記錄(似乎未支援中文搜尋)。 而放大鏡圖示右邊設定圖示則是可進行對此聊天室的相關設定,若你是此聊天室的管理員則此處設定會出現更多的功能選項。至於聊天室區塊最下方,則是讓你輸人打文字訊息的地方, 但它的右手邊還有三個小圖示,分別代表了:上傳檔案、進行語音通話、視訊通話的功能,後二者我還沒(找到其它人)測試過。至於畫面右手邊的一行多個用戶小圖像區塊,當然是代表目前在此聊天室裏面的用戶,如果點擊某一個用戶圖像,就會顯示她/他/它的基本資訊,也可以「私下」邀請對方進行個別一對一的聊天,據稱riot也支援用戶端對端之間的通訊加密(end-to-end encryption)。而私人之間一對一的聊天對象也會顯示在左手邊的「個人帳戶區」底下,以方便查找。

除入選擇自己可能感興趣主題,隨機加入某聊天室外,riot.im 目前對於用戶自行開設聊天室的權限也很寬鬆,只要註冊者都可以任在其上開一間聊天室。要自行開設聊天室,則在左側「個人帳戶區」最下方左邊第三個「+」圖示,即為開啟新聊天室(create room)功能。之前提到,如果自己是某個聊天室的管理者,則在聊天室設定上會擁有更多的權力,包括這個聊天室要不要公開登錄在大廳的名冊上,是否任何人都可以加入等等。聊天室的管理者也可以透過橋結方法bridges,將slack, gitter, irc 訊息同步到這個聊天室當中,或是利用機器人bot將github, giphy訊息送到這裏。前者橋結功能不但會把slack, gitter, irc送到riot.im的聊天室,也會將riot.im用戶在此聊天室的訊息傳送回slack, gitter, irc。例如下方是我設定好了slack webhook 之後,riot.im / slack 二個聊天室之間的訊息傳送狀況


我之前曾介紹過的freecodecamp,這個免費提供專案型程式訓練的線上學習社群,也在matrix.org上開了一間聊天室,其透過gitter將雙邊訊息串起來

以上是對riot.im網頁版的簡單介紹,因為是利用瀏覧器介面當然是跨平台(windows/ linux/Apple)支援,另外它還有iOS/Andriod app支援。以我下載了安卓版試用起來,覺得它的用戶體驗UX設計得還不錯,用戶應該可以很直覺地掌握它的使用,故我在此不多廢話。

 

Riot.im 的優勢
Riot是利用matrix所建構網頁聊天室應用,開發者已釋出來安裝原始碼,理論上也可以自行安裝在自己的機器上面。換言之,它不但可以用來替代早期的IRC網路聊天室,也不輸近年興起的slack小組式團隊式溝通平台。先不批評slack本身封閉式系統、使用者聊天記錄與用戶訊息資料保留應用等問題,它的語音視訊功能僅開放給付費型用戶,這點可以判Riot多得一分。不過新興的Riot目前所支援的整合服務不多,如果不想用slack,又不想太早跳入Riot/ Matrix的坑,不妨考慮使用我之前曾經簡單介紹過其它款替代Slack的開源團隊協作溝通平台軟體(Rocket.ChatMattermost)。至於riot.im與Rocket.Chat或Mattermost之間的比較,我覺得可能是前者更接近某一種連結生態系的感覺,所謂生態系是指Rocket.Chat/Mattermost把另一種替代slack的開源工具安裝在自已的機器上,保留了通訊資料自我掌握管理。但是我自己機器上裝的Rocket.Chat/Mattermost卻無法和另一台機器上的Rocket.Chat/Mattermost之間進行訊息交流,我若想知道/參與另一台機器(小組)的協作討論,就得在別的機器上註冊登入後參與其它機器上的某個聊天頻道。這樣的系統,當然對於某個有特定目標、興趣任務取向的團隊溝通已經足夠,但不免有幾分「同溫層」之感。而Matrix則改善了這樣的麻煩與遺憾,不同的機器彼此之因為都有安裝Matrix,故不同機器的用戶可以加入某個共通的聊天室,讓訊息可以在各自的機器設備上串連記錄,換句話說,Matrix把個別的機器生物串連成一個生物社群,當然如果能再結合其它整合進來的網路應用服務,就會是一個更完整豐富的生態系,而這樣的隨機性開放特色,一如早年的IRC聊天頻道,或許能在今日這個高度色彩標籤化、group polarization的網路年代,它多少較可能提高一點我們與不同觀點和意見交流的機會吧?(好吧,又是我自己天真的一廂情願)

下圖是我針對這四款協作式網頁聊天平台的粗淺比較。