// // IMChatSetting.swift // Crush // // Created by Leon on 2025/8/26. // struct IMChatSetting: Codable { var aiId: Int? // ai的Id var nickname: String? // 昵称 var sex: Sex? // 0,男;1,女;2,自定义 var birthday: Int64? // 出生日期,时间戳格式 var whoAmI: String? // 我是谁 var modelCode: String? // 对话模型code var modelName: String? // 对话模型名称 /// 聊天气泡code,CB0001 var bubbleCode: String? var bubbleName: String? // 聊天气泡名称 var backgroundImg: String? // 聊天背景图片 var isAutoPlayVoice: Int? // 自动播放语音开关 1:开 0:关 /// 是否是默认背景图 var isDefaultBackground: Bool? } // MARK: - 解锁类型 enum UnlockType: String, Codable { case member = "MEMBER" // 会员 case heartbeatLevel = "HEARTBEAT_LEVEL" // 心动等级 } // MARK: - 聊天气泡 struct IMChatBubble: Codable{ var id: Int? // id var code: String? // code var name: String? // 名称 var color: String? // 颜色 ? /// Android use var imgUrl: String? // 图片url /// ⬇️ iOS Use var webImgUrl: String? var unlockType: UnlockType? // 解锁类型 var unlockHeartbeatLevel: HeartbeatLevel? // 解锁心动等级 var isUnlock: Bool? /// 是否默认 var isDefault: Bool? func canUseTheBubble()->Bool{ return isUnlock.boolValue || isDefault.boolValue } } struct IMChatBackground: Codable{ var backgroundId: Int? // 背景图片id var imgUrl: String? // 图片地址 /// "720" var width: String? // 图片宽 /// "1024" var height: String? // 图片高 var isDefault: Bool? // 是否默认图片 var isSelected: Bool? // 是否选中图片 }