Nadav
Nadav

Reputation: 21

Sending message though Quickblox android sdk 2

I have tried to implement the quickblox new api for android. I got a session and started a chat instance and not I'm trying to send a message to specific id. using the code bellow, I get no errors, but no message is sent. Thank you for quick help

public void startNewChat(final ServerListener<Boolean> listener, Contact contact, String msg){
    QBPrivateChatManager manager = QBChatService.getInstance().getPrivateChatManager();

    QBPrivateChat chat = manager.createChat(Integer.parseInt(contact.getTripleD_user().getId()), new QBMessageListener<QBChat>() {

        @Override
        public void processError(String arg0, QBChatMessage arg1) {
            listener.getResult(false, arg0);

        }

        @Override
        public void processMessage(QBChat arg0, QBChatMessage arg1) {
            listener.getResult(true, null);

        }
    });
    try{

        chat.sendMessage(msg);          
    }
    catch(Exception e){
        listener.getResult(false, msg);
    }
}

Upvotes: 0

Views: 320

Answers (1)

serfed
serfed

Reputation: 61

Try it:

    private QBPrivateChat createChat(int opponentId) throws QBResponseException {
            boolean notNull = Utils.validateNotNull(privateChatManager);
            if (!notNull) {
                ErrorUtils.logError(TAG, " privateChatManager is NULL");
                throw new QBResponseException(context.getString(R.string.dlg_fail_create_chat));
            }
            QBPrivateChat privateChat = privateChatManager.getChat(opponentId);
            if (privateChat == null) {
                privateChat = privateChatManager.createChat(opponentId, privateChatMessageListener);
            }
            return privateChat;
    }

And your listener:

    private class PrivateChatMessageListener implements QBChatStateListener<QBPrivateChat> {

        @Override
        public void processMessage(QBPrivateChat privateChat, QBChatMessage chatMessage) {
            // do something
        } 
    }

Upvotes: 1

Related Questions