In order to connect to Stringee Server, you will need access to the authentication credential: access_token. In production, the access_token should be generated by your server as described in Client authentication. Sample code is available in the access token examples.
But to speed things up we will just hard code the value for now:
private String token;To do this, go to Dashboard -> Tools -> Generate Access token and generate an access_token.
Next, we will connect to Stringee Server. You must do this before you can send or receive a message
Add a StringeeClient property to your Activity
private StringeeClient client;
private final StringeeConnectionListener connectionListener = new StringeeConnectionListener() {
@Override
public void onConnectionConnected(StringeeClient stringeeClient, boolean isReconnecting) {
}
@Override
public void onConnectionDisconnected(StringeeClient stringeeClient, boolean isReconnecting) {
}
@Override
public void onIncomingCall(StringeeCall stringeeCall) {
}
@Override
public void onIncomingCall2(StringeeCall2 stringeeCall2) {
}
@Override
public void onConnectionError(StringeeClient stringeeClient, StringeeError stringeeError) {
}
@Override
public void onRequestNewToken(StringeeClient stringeeClient) {
}
@Override
public void onCustomMessage(String from, JSONObject msg) {
}
@Override
public void onTopicMessage(String from, JSONObject msg) {
}
};
The StringeeClient class is defined in Stringee SDK. It includes methods interacting with Stringee Server.
Instantiate StringeeClient, register a StringeeConnectionListener, then call connect(token).
client = new StringeeClient(this);
client.addConnectionListener(connectionListener);
client.connect(token);
To listen for Conversation and Message changes, register a ChangeEventListener:
private final ChangeEventListener changeEventListener = new ChangeEventListener() {
@Override
public void onChangeEvent(StringeeChange change) {
}
};
client.addChangeEventListener(changeEventListener);
Before connecting the same StringeeClient with a token for another user, disconnect it and clear the local chat database:
client.disconnect();
client.clearDb();
client.connect(newUserToken);