查看多媒体文件速度优化升级

来源:互联网 发布:java第三方服务器ftp 编辑:程序博客网 时间:2024/04/20 10:52

通过文本的消息进行发送(文件、图片、视频)

文本的默认内容

  • 当前版本不支持此类型消息,请升级查看

环信的消息的扩展字段

  • key
    类型为String,内容为“extend_message_body”
    • value
      类型为JSONObject

消息的版本

  • key
    类型为String,内容为“extend_message_version”
  • value
    类型为String,“1”

value的数据结构:

public class MessageInfo {    private String msgId;    /**     * 聊天消息的时间戳     */    private long timeStamp;    /**     * 消息类型     */    private String type;    /**     * 文件名称(带后缀)     * <p>     * 例如:test.png     */    private String fileName;    /**     * 文件大小:B     */    private long fileSize;    /**     * 文件的本地路径     */    private String localPath;    /**     * 远程服务器地址     */    private String remoteUrl;    /**     * 消息中的相关图片     */    private ImageInfo imageInfo;    /**     * 下载状态     */    private String downloadState;    /**     * 语音消息、视频消息的时间长度     */    private long duration;    private String desc;    private Map<String,JSONObject> extention;    public String getMsgId() {        return msgId;    }    public void setMsgId(String msgId) {        this.msgId = msgId;    }    public long getTimeStamp() {        return timeStamp;    }    public void setTimeStamp(long timeStamp) {        this.timeStamp = timeStamp;    }    public String getType() {        return type;    }    public void setType(@MessageType String type) {        this.type = type;    }    public String getFileName() {        return fileName;    }    public void setFileName(String fileName) {        this.fileName = fileName;    }    public long getFileSize() {        return fileSize;    }    public void setFileSize(long fileSize) {        this.fileSize = fileSize;    }    public String getLocalPath() {        return localPath;    }    public void setLocalPath(String localPath) {        this.localPath = localPath;    }    public String getRemoteUrl() {        return remoteUrl;    }    public void setRemoteUrl(String remoteUrl) {        this.remoteUrl = remoteUrl;    }    public ImageInfo getImageInfo() {        return imageInfo;    }    public void setImageInfo(ImageInfo imageInfo) {        this.imageInfo = imageInfo;    }    public String getDownloadState() {        return downloadState;    }    public void setDownloadState(@DownloadState String downloadState) {        this.downloadState = downloadState;    }    public long getDuration() {        return duration;    }    public void setDuration(long duration) {        this.duration = duration;    }    public String getDesc() {        return desc;    }    public void setDesc(String desc) {        this.desc = desc;    }    public Map<String, JSONObject> getExtention() {        return extention;    }    public void setExtention(Map<String, JSONObject> extention) {        this.extention = extention;    }    public static class ImageInfo {        /**         * 缩略图的服务器地址         */        private String thumbnailRemoteUrl;        /**         * 图片的预览图服务器url         */        private String previewRemoteUrl;        /**         * 原图的服务器地址         */        private String originalRemoteUrl;        /**         * 原图的本地路径         */        private String originalLocalPath;        /**         * 缩略图的本地路径         */        private String thumbnailLocalPath;        /**         * 图片的预览图本地路径         */        private String previewLocalPath;        /**         * 图片的宽         */        private int width;        /**         * 图片的高         */        private int height;        public String getThumbnailRemoteUrl() {            return thumbnailRemoteUrl;        }        public void setThumbnailRemoteUrl(String thumbnailRemoteUrl) {            this.thumbnailRemoteUrl = thumbnailRemoteUrl;        }        public String getOriginalRemoteUrl() {            return originalRemoteUrl;        }        public void setOriginalRemoteUrl(String originalRemoteUrl) {            this.originalRemoteUrl = originalRemoteUrl;        }        public String getThumbnailLocalPath() {            return thumbnailLocalPath;        }        public void setThumbnailLocalPath(String thumbnailLocalPath) {            this.thumbnailLocalPath = thumbnailLocalPath;        }        public String getOriginalLocalPath() {            return originalLocalPath;        }        public void setOriginalLocalPath(String originalLocalPath) {            this.originalLocalPath = originalLocalPath;        }        public String getPreviewRemoteUrl() {            return previewRemoteUrl;        }        public void setPreviewRemoteUrl(String previewRemoteUrl) {            this.previewRemoteUrl = previewRemoteUrl;        }        public String getPreviewLocalPath() {            return previewLocalPath;        }        public void setPreviewLocalPath(String previewLocalPath) {            this.previewLocalPath = previewLocalPath;        }        public int getWidth() {            return width;        }        public void setWidth(int width) {            this.width = width;        }        public int getHeight() {            return height;        }        public void setHeight(int height) {            this.height = height;        }        @Override        public String toString() {            return "ImageInfo{" +                    "thumbnailRemoteUrl='" + thumbnailRemoteUrl + '\'' +                    ", previewRemoteUrl='" + previewRemoteUrl + '\'' +                    ", originalRemoteUrl='" + originalRemoteUrl + '\'' +                    ", originalLocalPath='" + originalLocalPath + '\'' +                    ", thumbnailLocalPath='" + thumbnailLocalPath + '\'' +                    ", previewLocalPath='" + previewLocalPath + '\'' +                    ", width=" + width +                    ", height=" + height +                    '}';        }    }    @Override    public String toString() {        return "MessageInfo{" +                "msgId='" + msgId + '\'' +                ", timeStamp=" + timeStamp +                ", type='" + type + '\'' +                ", fileName='" + fileName + '\'' +                ", fileSize=" + fileSize +                ", localPath='" + localPath + '\'' +                ", remoteUrl='" + remoteUrl + '\'' +                ", imageInfo=" + imageInfo +                ", downloadState='" + downloadState + '\'' +                ", duration=" + duration +                ", desc='" + desc + '\'' +                ", extention=" + extention +                '}';    }}

文件类型:

/** * @Description: 消息的类型 * <p> * Created by wanghaitao on 2017/5/11 16:03. * <p> * Email:wanghaitao01@hecom.cn */@StringDef({MessageType.UNKNOW,        MessageType.TEXT,        MessageType.FILE,        MessageType.IMAGE,        MessageType.VOICE,        MessageType.VIDEO,        MessageType.NOTICE,        MessageType.FORWARD_MERGE,        MessageType.LINK,        MessageType.EMOJI,        MessageType.CARD,        MessageType.LOCATION})@Retention(RetentionPolicy.SOURCE)public @interface MessageType {    /**     * 未知     */    String UNKNOW = "-1";    /**     * 文本     */    String TEXT = "0";    /**     * 文件     */    String FILE = "1";    /**     * 图片     */    String IMAGE = "2";    /**     * 语音     */    String VOICE = "3";    /**     * 视频     */    String VIDEO = "4";    /**     * 位置     */    String LOCATION = "5";    String NOTICE = "6";    String FORWARD_MERGE = "7";    String LINK = "8";    String EMOJI = "9";    String CARD  = "10";
原创粉丝点击