package protocol import "time" type RunCapacityReport struct { MaxJobs int `json:"maxJobs"` RunningJobs int `json:"runningJobs"` QueuedJobs int `json:"queuedJobs"` Summary string `json:"summary,omitempty"` } type RunCapabilityReport struct { Capabilities []string `json:"capabilities"` Fingerprint string `json:"fingerprint"` } type RunHelloRequest struct { RegistrationToken string `json:"registrationToken"` RunEndpointID string `json:"runEndpointId"` DisplayName string `json:"displayName"` Version string `json:"version"` Status string `json:"status"` Platform string `json:"platform,omitempty"` CapabilityReport RunCapabilityReport `json:"capabilityReport"` Capacity RunCapacityReport `json:"capacity"` } type RunHelloResponse struct { Accepted bool `json:"accepted"` RunEndpointID string `json:"runEndpointId"` SessionToken string `json:"sessionToken"` ServerTime time.Time `json:"serverTime"` HeartbeatIntervalSeconds int `json:"heartbeatIntervalSeconds"` FeatureFlags []string `json:"featureFlags,omitempty"` } type RunHeartbeatRequest struct { RunEndpointID string `json:"runEndpointId"` SessionToken string `json:"sessionToken"` Version string `json:"version"` Status string `json:"status"` CapabilityFingerprint string `json:"capabilityFingerprint"` Capacity RunCapacityReport `json:"capacity"` } type RunHeartbeatResponse struct { Accepted bool `json:"accepted"` RunEndpointID string `json:"runEndpointId"` NextHeartbeatSeconds int `json:"nextHeartbeatSeconds"` RefreshCapabilities bool `json:"refreshCapabilities"` ServerTime time.Time `json:"serverTime"` }