加入您最喜歡的IRC客戶端的矩陣
Matrix2051(或簡稱M51)是由Matrix支持的IRC服務器。您還可以將其視為連接到矩陣家庭服務器而不是IRC服務器的IRC保鏢。換句話說:
IRC client
(eg. weechat or hexchat)
|
| IRC protocol
v
Matrix2051
|
| Matrix protocol
v
Your Homeserver
(eg. matrix.org)
目標:
非目標:
此屏幕截圖的兩個註釋:
sudo apt install elixir erlang erlang-dev erlang-inets erlang-xmerlmix deps.getmix testmix run matrix2051.exslocalhost:2051 ,並具有以下配置:user:homeserver.example.org )有關與Web客戶端合作的額外說明,請參見下文。
有關更面向生產的指南,請參見INSTALL.md 。
matrix2051.exs啟動M51.Application,啟動M51.Supervisor,該監督:config.ex :全局配置代理irc_server.ex :一種DynamicSupervisor ,從IRC客戶端接收連接。每次irc_server.ex收到連接時,它都會催生irc_conn/supervisor.ex ,以監督:
irc_conn/state.ex :存儲連接的狀態irc_conn/writer.ex :Genserver握住套接字並允許向其寫線(將來的行批次)irc_conn/handler.ex :讀者從傳入命令上忙於培訓的任務,對簡單的命令回答並派遣更複雜的命令matrix_client/state.ex :保持連接到矩陣Homeserver的狀態matrix_client/client.ex :作為一個用戶,處理與矩陣Homeserver的一個連接matrix_client/sender.ex :將事件發送到Matrix Homeserver並在失敗時重試matrix_client/poller.ex :反復向矩陣Homeserver詢問新事件(包括初始同步)irc_conn/reader.ex :任務忙於在傳入的行上待致,並將其發送到處理程序公用事業:
matrix/raw_client.ex :圍繞http請求的低級矩陣客戶端 /薄包裝器irc/command.ex :IRC線路操作,包括為不支持某些功能的客戶“降低”它們。irc/word_wrap.ex :通用行包裝format/ :在IRC格式和org.matrix.custom.html之間轉換matrix_client/chat_history.ex :當IRC客戶端請求時,請從Matrix獲取消息歷史記錄有很多很棒的IRC客戶端,但是我找不到我喜歡的矩陣客戶端。但是,一些社區正在從IRC到矩陣,所以我寫了這篇文章,以便我可以與舒適的客戶一起加入。
這也是一種典型的ircv3功能,也是我學習矩陣協議的一種方法。
從理論上講,任何IRC客戶都應該起作用。特別是,我與Gamja,Irccloud,Lounge和Weechat進行了測試。
如果您的客戶有任何問題,請打開問題。
從理論上講,任何通過閱讀矩陣規格寫的,任何人。實際上,這僅通過突觸進行測試。
一個值得注意的例外是註冊,它使用特定於突觸的API作為矩陣本身並未指定註冊。
如果您對HomeServer有任何問題,請打開問題(我可以用來連接的虛擬登錄/密碼將不勝感激)。
在撰寫本文時,如果矩陣和IRC/IRCV3都支持它們,則Matrix2051可能會。看看開放的“增強”問題列表。
直接消息是一個值得注意的例外,因為矩陣的模型與IRC的模型有很大不同。
要連接Web客戶端,您需要一個Websocket網關。使用Kiwiirc的Webircgateway測試了Matrix2051(如果需要在舊的GO版本上運行它,請嘗試此補丁)。
這是您可以將其配置為使用Gamja連接到Matrix2051的方法:
[ fileserving ]
enabled = true
webroot = " /path/to/gamja "
[ upstream . 1 ]
hostname = " localhost "
port = 2051
tls = false
# Connection timeout in seconds
timeout = 20
# Throttle the lines being written by X per second
throttle = 100
webirc = " "
serverpassword = " "這是對XKCD 1782的引用:
在irc.interlinked.me上加入#matrix2051。 (不,我不是在吃自己的狗食,我仍然喜歡“本地” IRC。)