Login Listeners
The CometChat SDK provides you with real-time updates for the login
and logout
events. This can be achieved using the LoginListener
class provided. LoginListener consists of 4 events that can be triggered. These are as follows:
Callback Method | Information |
---|---|
loginSuccess(User user) | Informs you that the login was successful and provides you with a user object containing the data for the user that logged in |
loginFailure(CometChatException e) | Informs you about the failure while logging in the user and provides you with the reason for the failure wrapped in an object of the CometChatException class |
logoutSuccess() | Informs you about the user being logged out successfully. |
logoutFailure(CometChatException e) | Informs you about the failure while logging out the user. The reason for the failure can be obtained from the object of the CometChatException class provided. |
To add the LoginListener
, you need to use the addLoginListener()
method provided by the SDK which takes a unique identifier for the listener and of the the LoginListener
class itself.
- Java
- Kotlin
CometChat.addLoginListener("UNIQUE_ID", new CometChat.LoginListener() {
@Override
public void loginSuccess(User user) {
Log.d("LoginListener", "loginSuccess " + user.toString());
}
@Override
public void loginFailure(CometChatException e) {
Log.d("LoginListener", "loginFailure " + e.getMessage());
}
@Override
public void logoutSuccess() {
Log.d("LoginListener", "logoutSuccess ");
}
@Override
public void logoutFailure(CometChatException e) {
Log.d("LoginListener", "logoutFailure ");
}
});
CometChat.addLoginListener("UNIQUE_ID", object : LoginListener() {
override fun loginSuccess(user: User) {
Log.d("LoginListener", "loginSuccess $user")
}
override fun loginFailure(e: CometChatException) {
Log.d("LoginListener", "loginFailure " + e.message)
}
override fun logoutSuccess() {
Log.d("LoginListener", "logoutSuccess ")
}
override fun logoutFailure(e: CometChatException) {
Log.d("LoginListener", "logoutFailure ")
}
})
In order to stop receiving events related to login and logout you need to use the removeLoginListener()
method provided by the SDK and pas the ID of the listener that needs to be removed.
- Java
- Kotlin
CometChat.removeLoginListener("UNIQUE_ID");
CometChat.removeLoginListener("UNIQUE_ID")