2017-07-11 54 views
0

我正在嘗試使用quickblox和swift開發一個非常簡單的聊天應用程序。如何開始使用QuickBlox API和Swift?

知道,有一些在線教程,嘗試解釋的過程中,我開始創建應用程序儀表板用戶,並獲取其憑據來啓動連接。 (我敢肯定的是,用戶憑據是正確的,儀表盤設置正確,因爲我跟了這tutorial

這裏是應用程序的視圖控制器:

 import UIKit 
     import Quickblox 

     class ViewController: UIViewController { 



      override func viewDidLoad() { 
       super.viewDidLoad() 


       let user = QBUUser() 
       user.id = 29777469 
       user.password = "tahrisqalli" 




       QBChat.instance().connect(with: user) { (error) in 
        if error != nil { 
         print("error: \(error)") 
        } 
        else { 
         print("login to chat succeeded") 

        } 
       } 

      } 

     } 

和下面是我得到告訴我的錯誤我沒有成功連接。

2017-07-11 11:33:50.837 QuickbloxTutorial[1045:24701] [ChatService] Connecting to Chat, host: chat.quickblox.com, user JID: [email protected]/DCB0A1F4-3A56-49AD-9639-8C2A6BBE7B08 
    2017-07-11 11:33:52.042 QuickbloxTutorial[1045:24711] [ChatService] Stream isSecure: YES 
    2017-07-11 11:33:52.658 QuickbloxTutorial[1045:24722] [ChatService] Stream did connect, supportsStartTLS: YES 
    2017-07-11 11:33:52.824 QuickbloxTutorial[1045:24722] [ChatService] Did not authenticate, error: <failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure> 
    error: Optional(Error Domain=com.quickblox.chat Code=401 "<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>" UserInfo={NSLocalizedDescription=<failure xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><not-authorized/></failure>}) 
    2017-07-11 11:33:52.842 QuickbloxTutorial[1045:24722] [ChatService] Did disconnect 

回答

1

首先,您必須先登錄一個用戶。

在此之後,你可以用聊天連接,它是最適合你使用ServicesManager類自動管理會話。

let loginUser = QBUUser() 
loginUser.id = 29777469 
loginUser.password = "tahrisqalli" 

ServicesManager.instance().authService.logInWithUser(loginUser, completion: { (response, qbUser) in 
if qbUser != nil { 
    ServicesManager.instance().chatService.connectWithCompletionBlock { (error) in 
      if error != nil { 
      print("user not connected error: ",error?.description) 
      } else { 
      //user connect successfully 
      } 
    } 
    print(qbUser) 
} else { 
    print(response.error?.description) 
    } 
}) 
+0

我可以知道我創建的用戶qbUser和loginUser之間的區別,以及如何獲取每個用戶的憑據? – user1680944

+0

在那裏我有「})」我得到一些語法錯誤告訴我的路線「預期的表達」 – user1680944

+0

我得到「使用未解決的標識符ServicesManager的」,我應該進口什麼? – user1680944