package app import ( "context" "encoding/json" "time" "github.com/geo-platform/tenant-api/internal/shared/messaging/rabbitmq" ) type DesktopTaskEvent struct { Type string `json:"type"` TaskID string `json:"task_id"` JobID string `json:"job_id"` WorkspaceID int64 `json:"workspace_id"` TargetClientID string `json:"target_client_id"` Status string `json:"status"` Kind string `json:"kind"` UpdatedAt time.Time `json:"updated_at"` } func publishDesktopTaskEvent(ctx context.Context, client *rabbitmq.Client, event DesktopTaskEvent) error { if client == nil { return nil } payload, err := json.Marshal(event) if err != nil { return err } return client.PublishDesktopTaskEvent(ctx, payload) }