iOS,XMPP本地環境搭建和架構使用

來源:互聯網
上載者:User

標籤:

1.XMPP的MySQL和openfire環境配置

2.XmppFramework架構匯入和介紹 

 

XMPP的MySQL和openfire環境配置

1.下載mysql安裝mysql下載

開啟MySQL安裝包如下

   先後分別安裝 mysql-5.6.12-osx10.7-x86_64.pkg:MySQL的主要程式包; MySQL_StartupItem.pkg:MySQL的啟動項; MySQL.prefPane:MySQL的喜好設定,主要用來啟動MySQL服務。2.修改MySQL密碼   *進入喜好設定中停止mysql服務  *預設安裝的MySQL的賬戶是root  密碼為空白在終端通過下面命令登陸MySql,(初始密碼為空白直接點斷行符號)mysql -u root -p 修改密碼:mysqladmin -u root password "123456"

 

3.安裝MySQL圖形化管理工具mysql-workbench mysql-workbench下載  安裝 *建立新資料庫   4.安裝Java環境  *openfire伺服器是基於Java語言寫的。 JDK下載 安裝 安裝好後再終端輸入java -version就可以查看是否已經安裝了Java環境  

5.下載安裝openfire

openfire下載 安裝 *回到mysql_workbench來設定資料庫  開啟Finder, command+shift+G 有個紅色的標記說明沒有許可權訪問,只需要右鍵顯示簡介,將鎖開啟,設定一下就行了  許可權都改為讀寫  *mysql workbench中,雙擊"openfire",處於選中狀態,然後點擊功能表列的"File",將剛才的指令碼匯入執行 點擊??按鈕  安裝好後重新開啟系統喜好設定,找到openfire,點擊開啟跳轉到瀏覽器,進行openfire設定選擇簡體中文 下面本機可以用127.0.0.1,應該預設就可以 繼續 繼續 使用者名稱和密碼填mysql裡設定的使用者名稱和密碼。注意圖中支出的配置 設定完成後,會要求重新設定openfire的密碼,然後就可以用使用者名稱和密碼登陸了 安裝上述完成MySQL的使用者名稱和密碼是   root   123456openfire的使用者名稱和密碼是 admin 123456

 

下載測試用用戶端sparkspark下載可以用openfire建立的使用者名稱和密碼登陸,也可以自己在用戶端註冊  註:mac系統下openfire非常不穩定,只做練習使用 

XmppFramework架構匯入和介紹 

 1.網上下載XmppFramework架構匯入


   2.添加架構依賴 3.修改Build SettingsHeader Search Paths    添加    /usr/include/libxml2       Library Search Paths  添加  $(PROJECT_DIR)/douniwanxia/Libs/XMPPFramework/Vendor/libidn上述$(PROJECT_DIR)是整個項目路徑;douniwanxia/Libs是我在該項目下放xmppframework的路徑 

 

架構內的大致介紹

Authentication    授權,身分識別驗證

Categories        分類

Core              核心

Extensions        擴充

Utilities         工具

Vendor            第三方庫

在Extensions中:

CoreDataStorage   coreData儲存

Reconnect    重新串連

Roster    好友管理

    有資料表 XMPPRoster 用來系統管理使用者

    系統管理使用者的類 XMPPUserCoreDataStorageObject

SystemInputActivityMonitor     系統輸入的活動監控

常用的模組:

XEP - 0009    RPC(類似駭客技術)

XEP - 0012    最後的活動(判斷上線,離開斷開)

XEP - 0045    多人聊天

XEP - 0054    名片-個人資訊設定

XEP - 0065    sockets5位元組流

XEP - 0066    位元據傳輸(特殊資訊的發送)

XEP - 0085    聊天狀態通知

XEP - 0136    聊天記錄歸檔

  其中有資料表 XMPPMessageArchiving

  取出當前資訊的類 XMPPMessageArchiving_Message_CoreDataObject 

XEP - 0153    基於名片的頭像

XEP - 0199    xmpp ping (用來ping伺服器和ping自己)

XEP - 0335    json容器(可能以後某些資訊傳輸將用json格式)

 

在core中:

XMPPElement 是一個基類 ,延展出三個子類

XMPPIQ    請求 (使用者登入,使用者註冊,添加好友等)

XMPPMessage    訊息(用來發各種訊息等)

XMPPPresence    展現(使用者上線下線提示等)

      XMPPStream    流,非常常用,大部分類的載入都在寫在流的懶載入裡

在vender中:

kissXML 用於xml的主要解析架構 

 

XMPP中常用對象們

  • XMPPStream:xmpp基礎服務類

  • XMPPRoster:好友名單類

  • XMPPRosterCoreDataStorage:好友名單(使用者帳號)在core data中的操作類

  • XMPPvCardCoreDataStorage:好友名片(暱稱,簽名,性別,年齡等資訊)在core data中的操作類

  • XMPPvCardTemp:好友名片實體類,從資料庫裡取出來的都是它

  • xmppvCardAvatarModule:好友頭像

  • XMPPReconnect:如果失去串連,自動重連

  • XMPPRoom:提供多使用者聊天支援

  • XMPPPubSub:發布訂閱

iOS,XMPP本地環境搭建和架構使用

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.