消息收发

客服会话过程由一条一条的消息组成,SDK中消息模型由 Message 类表示。
消息包含消息体,消息体由 MessageContent 类及其子类表示,不同类别的消息包含相应的消息体对象。

发送消息

常用消息类型的发送可以直接调用 BotLibClient 中的封装方法

文字消息
BotKitClient.getInstance().askQuestion("Hello world")
图片消息
// 生成临时文件
File imgFile = File.createTempFile("photo", ".jpg", getCacheDir());
......
BotKitClient.getInstance().askQuestionImage(imgFile);
音频消息
// 生成临时文件
File imgFile = File.createTempFile("record", ".mp3", getCacheDir());
......
BotKitClient.getInstance().askQuestionAudio(file);

接收消息

接收消消息监听器 BotLibClient.MessageListener 中的回调方法实现。
通过 contentType 属性可以判断消息类型,然后使用相应的消息体类进行解析。

@Override
public void onAppendMessage(Message message) {
    switch (message.getContentType()) {
        case Message.ContentTypeText:
            MessageContentText contentText = (MessageContentText)message.getContent();
            ......
            break;
        case Message.ContentTypeImage:
            MessageContentImage contentImage = (MessageContentImage)message.getContent();
            ......
            break;
        case Message.ContentTypeAudio:
            MessageContentAudio contentAudio = (MessageContentAudio)message.getContent();
            ......
            break;
        case Message.ContentTypeMenu:
            MessageContentMenu contentMenu = (MessageContentMenu)message.getContent();
            ......
            break;
    }
}

results matching ""

    No results matching ""