即時通信之服務端篇Tigase.

摘要

xmpp是一個應用層協議,主要作網頁版即時通信,是基於RFC3920和RFC3921實現,服務端常見的框架有openfire,tigase,prosody等,這三個都親自踩過坑,惟有tigase8.0相對牛逼(完善)一些,客戶端主要就是strophejs了。tigase是Java基於maven作的,openfire是netty框架,固然這塊對於我也是比較難入手,大可能是從配置入手。html

tigase8.0官方資料mysql

下載安裝

官方安裝教程linux

6. Quick Start Guide

tigase支持多平臺,windows相對簡單,源碼下載執行便可,固然配置jre以及jdk那是必須的了,這裏着重介紹linux的配置運行以及查看log。sql

  • 安裝mysql
    tigase-8.0依賴mysql版本5.7以上,固然,也能夠在安裝導向界面選擇內置數據庫。

    CentOs Installing MySQL
    shell> sudo yum install mysql-community-servershell

  • 下載源碼包到/home數據庫

  • 解壓 tar -zxvf tigase-server-8.0.0-b10083-dist-max.tar.gz
  • 進入解壓目錄cd tigase-server-<version>
  • 配置jdk(JAVA_HOME) 1.8.0以上
  • 啓動服務scripts/tigase.sh start etc/tigase.conf
    檢查端口8080是否開啓 netstart -apnl|grep 8080
  • 瀏覽器地址欄運行,好比:127.0.0.1:8080
    默認採起http摘要認證,帳號密碼是admin tigase, 成功登錄之後根據提示設置後臺,組件以及數據庫。
  • 重啓服務vim

    ./scripts/tigase.sh stop
    ./scripts/tigase.sh start etc/tigase.conf

配置

  • 歸檔配置windows

    message-archive {
        archive-repo-uri = 'jdbc:mysql://localhost/tigasedb7?user=root&password=root&useUnicode=true&characterEncoding=UTF-8',
        msg-archive-paths = [ '-/message/result[urn:xmpp:mam:1]' '/message/body', '/message/subject' ],
        tags-support = true
    }
    //session manager
    sess-man {
        message-archive {
            default-store-method = 'message',
            required-store-method = 'body'
        },
        'urn:xmpp:mam:1' () {}
        
    }
  • 羣聊MUC配置瀏覽器

    muc {
        //不設置羣密碼
        'muc-lock-new-room' = false
         default_room_config {
            maxhistoryfetch = 0
            roomconfig_membersonly = false
            roomconfig_persistentroom = true
        }   
    }
  • 查詢服務lsof -i -P
  • 查看日誌vim logs/tigase-console.log

添加帳號及測試

  • psi粉墨登場

升級

Upgrading to v8.0.0 from v7.1.0
親測7.1如下版本也是能夠的。session

數據庫表分析

參考文獻

  • 《XMPP The Definitive Guide》
相關文章
相關標籤/搜索