Skip to content

Commit 1e40113

Browse files
author
Jaesung
authored
Merge pull request #40 from sendbird/feature/jaesung/deprecated-authenticate
Separate Registering Push Token from Authentication in Sample
2 parents eb26656 + a892d9c commit 1e40113

File tree

2 files changed

+35
-20
lines changed

2 files changed

+35
-20
lines changed

QuickStart/SignIn/SignInViewController.swift

Lines changed: 17 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -67,30 +67,37 @@ extension SignInViewController {
6767
func signIn(userId: String) {
6868
// MARK: SendBirdCall.authenticate()
6969

70-
let params = AuthenticateParams(userId: userId, accessToken: nil, voipPushToken: UserDefaults.standard.voipPushToken, unique: false)
70+
let authParams = AuthenticateParams(userId: userId, accessToken: nil)
7171
self.indicator.startLoading(on: self.view)
7272

7373

74-
SendBirdCall.authenticate(with: params) { user, error in
75-
DispatchQueue.main.async { [weak self] in
76-
guard let self = self else { return }
77-
self.indicator.stopLoading()
78-
self.resetButtonUI()
79-
}
74+
SendBirdCall.authenticate(with: authParams) { user, error in
8075
guard let user = user, error == nil else {
76+
// Handling error
8177
DispatchQueue.main.async { [weak self] in
8278
guard let self = self else { return }
79+
self.indicator.stopLoading()
80+
self.resetButtonUI()
8381
let errorDescription = String(error?.localizedDescription ?? "")
8482
self.presentErrorAlert(message: "Failed to authenticate\n\(errorDescription)")
8583
}
8684
return
8785
}
86+
87+
// Save data
8888
UserDefaults.standard.autoLogin = true
8989
UserDefaults.standard.user = (user.userId, user.nickname, user.profileURL)
9090

91-
DispatchQueue.main.async { [weak self] in
92-
guard let self = self else { return }
93-
self.performSegue(withIdentifier: "signIn", sender: nil)
91+
// register push token
92+
SendBirdCall.registerVoIPPush(token: UserDefaults.standard.voipPushToken, unique: false) { error in
93+
if let error = error { print(error) }
94+
95+
DispatchQueue.main.async { [weak self] in
96+
guard let self = self else { return }
97+
self.indicator.stopLoading()
98+
self.resetButtonUI()
99+
self.performSegue(withIdentifier: "signIn", sender: nil)
100+
}
94101
}
95102
}
96103
}

QuickStart/SignIn/SignInWithQRViewController.swift

Lines changed: 18 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -105,32 +105,40 @@ extension SignInWithQRViewController {
105105
let userId = UserDefaults.standard.user.id
106106
let accessToken = UserDefaults.standard.accessToken
107107
let voipPushToken = UserDefaults.standard.voipPushToken
108-
let authParams = AuthenticateParams(userId: userId, accessToken: accessToken, voipPushToken: voipPushToken, unique: false)
108+
let authParams = AuthenticateParams(userId: userId, accessToken: accessToken)
109+
109110
self.indicator.startLoading(on: self.view)
110111

111112
SendBirdCall.authenticate(with: authParams) { user, error in
112-
DispatchQueue.main.async { [weak self] in
113-
guard let self = self else { return }
114-
self.indicator.stopLoading()
115-
self.resetButtonUI()
116-
}
117-
118113
guard let user = user, error == nil else {
114+
// Handling error
119115
DispatchQueue.main.async { [weak self] in
120116
guard let self = self else { return }
117+
self.indicator.stopLoading()
118+
self.resetButtonUI()
121119
let errorDescription = String(error?.localizedDescription ?? "")
122120
self.presentErrorAlert(message: "\(errorDescription)")
123121
}
124122
UserDefaults.standard.clear()
125123
return
126124
}
125+
126+
// Save data
127127
UserDefaults.standard.autoLogin = true
128128
UserDefaults.standard.user = (user.userId, user.nickname, user.profileURL)
129129

130-
DispatchQueue.main.async { [weak self] in
131-
guard let self = self else { return }
132-
self.performSegue(withIdentifier: "signInWithQRCode", sender: nil)
130+
// register push token
131+
SendBirdCall.registerVoIPPush(token: voipPushToken, unique: false) { error in
132+
if let error = error { print(error) }
133+
134+
DispatchQueue.main.async { [weak self] in
135+
guard let self = self else { return }
136+
self.indicator.stopLoading()
137+
self.resetButtonUI()
138+
self.performSegue(withIdentifier: "signInWithQRCode", sender: nil)
139+
}
133140
}
141+
134142
}
135143
}
136144
}

0 commit comments

Comments
 (0)