2026-06-11 13:33:44 +08:00

35 lines
1.4 KiB
Go

package roomapi
// roomShareData 是 App 获取房间分享资料的外部 JSON 契约。
// 文案、落地页和深链统一由 gateway 生成,客户端只负责选择平台和调用系统分享能力。
type roomShareData struct {
RoomID string `json:"room_id"`
RoomShortID string `json:"room_short_id,omitempty"`
Title string `json:"title"`
Description string `json:"description"`
CoverURL string `json:"cover_url,omitempty"`
LandingURL string `json:"landing_url"`
DeepLink string `json:"deep_link"`
ShareText string `json:"share_text"`
InviteCode string `json:"invite_code,omitempty"`
Owner roomShareOwnerData `json:"owner"`
Preview roomSharePreviewData `json:"preview"`
ServerTimeMS int64 `json:"server_time_ms"`
}
type roomShareOwnerData struct {
UserID string `json:"user_id,omitempty"`
DisplayUserID string `json:"display_user_id,omitempty"`
Username string `json:"username,omitempty"`
Avatar string `json:"avatar,omitempty"`
CountryFlag string `json:"country_flag,omitempty"`
}
type roomSharePreviewData struct {
Type string `json:"type"`
Title string `json:"title"`
Description string `json:"description"`
ImageURL string `json:"image_url,omitempty"`
URL string `json:"url"`
}