/* eslint-disable */ import { SetScreenResponse, GetScreenResponse, ListScreensResponse, GetVisibleCamerasResponse, SetIrColormapResponse, GetIrColormapResponse, SetIrMeterOverlayResponse, SetScreenRequest, GetScreenRequest, ListScreensRequest, GetVisibleCamerasRequest, SetIrColormapRequest, GetIrColormapRequest, SetIrMeterOverlayRequest, } from "./compositor"; import { SetStreamParamsResponse, GetStreamParamsResponse, EnableCongestionControlResponse, SetStreamParamsRequest, GetStreamParamsRequest, EnableCongestionControlRequest, } from "./streamquality"; import { SetPowerStatusResponse, GetPowerStatusResponse, CyclePowerResponse, SetPowerStatusRequest, GetPowerStatusRequest, CyclePowerRequest, } from "./power"; import { SetLEDBrightnessResponse, GetLEDBrightnessResponse, SetLEDBrightnessRequest, GetLEDBrightnessRequest, } from "./LED"; import { StoreResponse, GetStatusResponse, TagResponse, DebugResponse, ListCamerasResponse, RetrieveRawDataResponse, RetrieveResponse, DeleteResponse, ListLogpointsResponse, SetPassphraseResponse, StoreRequest, GetStatusRequest, TagRequest, DebugRequest, ListCamerasRequest, RetrieveRawDataRequest, RetrieveRequest, DeleteRequest, ListLogpointsRequest, SetPassphraseRequest, } from "./logging"; import { Observable } from "rxjs"; import { map } from "rxjs/operators"; import { SetPtzPositionResponse, GetPtzPositionResponse, SetPtzVelocityResponse, GetPtzVelocityResponse, ListPtzResponse, InitializeLensResponse, SetPtzPositionRequest, GetPtzPositionRequest, SetPtzVelocityRequest, GetPtzVelocityRequest, ListPtzRequest, InitializeLensRequest, } from "./ptz"; import { PlaySoundResponse, LoadSoundResponse, DeleteSoundResponse, ListSoundsResponse, SetVolumeResponse, GetVolumeResponse, SetAudioCaptureChannelResponse, GetAudioCaptureChannelResponse, SetAudioCaptureGainResponse, GetAudioCaptureGainResponse, PlaySoundRequest, DeleteSoundRequest, ListSoundsRequest, SetVolumeRequest, GetVolumeRequest, SetAudioCaptureChannelRequest, GetAudioCaptureChannelRequest, SetAudioCaptureGainRequest, GetAudioCaptureGainRequest, LoadSoundRequest, } from "./audio"; import { GetTemperatureResponse, GetBITStatusResponse, ClearBITEventsResponse, GetSystemLogResponse, GetTemperatureRequest, GetBITStatusRequest, ClearBITEventsRequest, GetSystemLogRequest, } from "./health"; import { SetICEConfigurationResponse, GetICEConfigurationResponse, SetICEConfigurationRequest, GetICEConfigurationRequest, } from "./network"; import { GetSoftwareVersionResponse, GetSoftwareVersionRequest, } from "./version"; import _m0 from "protobufjs/minimal"; export const protobufPackage = "bosdyn.api.spot_cam"; /** Change the layout of of the video stream between available presets. */ export interface CompositorService { /** SetScreen changes the current view that is streamed over the network */ SetScreen(request: SetScreenRequest): Promise; /** GetScreen returns the currently-selected screen */ GetScreen(request: GetScreenRequest): Promise; /** ListScreens returns a list of available screens */ ListScreens(request: ListScreensRequest): Promise; /** GetVisibleCameras returns a list of currently visible windows, with any available metadata */ GetVisibleCameras( request: GetVisibleCamerasRequest ): Promise; /** set the mapping between radiometric IR samples to color, for video */ SetIrColormap(request: SetIrColormapRequest): Promise; /** get the mapping between radiometric IR samples to color, for video */ GetIrColormap(request: GetIrColormapRequest): Promise; /** apply settings for the 'ir meter overlay' */ SetIrMeterOverlay( request: SetIrMeterOverlayRequest ): Promise; } export class CompositorServiceClientImpl implements CompositorService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetScreen = this.SetScreen.bind(this); this.GetScreen = this.GetScreen.bind(this); this.ListScreens = this.ListScreens.bind(this); this.GetVisibleCameras = this.GetVisibleCameras.bind(this); this.SetIrColormap = this.SetIrColormap.bind(this); this.GetIrColormap = this.GetIrColormap.bind(this); this.SetIrMeterOverlay = this.SetIrMeterOverlay.bind(this); } SetScreen(request: SetScreenRequest): Promise { const data = SetScreenRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "SetScreen", data ); return promise.then((data) => SetScreenResponse.decode(new _m0.Reader(data)) ); } GetScreen(request: GetScreenRequest): Promise { const data = GetScreenRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "GetScreen", data ); return promise.then((data) => GetScreenResponse.decode(new _m0.Reader(data)) ); } ListScreens(request: ListScreensRequest): Promise { const data = ListScreensRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "ListScreens", data ); return promise.then((data) => ListScreensResponse.decode(new _m0.Reader(data)) ); } GetVisibleCameras( request: GetVisibleCamerasRequest ): Promise { const data = GetVisibleCamerasRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "GetVisibleCameras", data ); return promise.then((data) => GetVisibleCamerasResponse.decode(new _m0.Reader(data)) ); } SetIrColormap(request: SetIrColormapRequest): Promise { const data = SetIrColormapRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "SetIrColormap", data ); return promise.then((data) => SetIrColormapResponse.decode(new _m0.Reader(data)) ); } GetIrColormap(request: GetIrColormapRequest): Promise { const data = GetIrColormapRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "GetIrColormap", data ); return promise.then((data) => GetIrColormapResponse.decode(new _m0.Reader(data)) ); } SetIrMeterOverlay( request: SetIrMeterOverlayRequest ): Promise { const data = SetIrMeterOverlayRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.CompositorService", "SetIrMeterOverlay", data ); return promise.then((data) => SetIrMeterOverlayResponse.decode(new _m0.Reader(data)) ); } } /** Set quality parameters for the stream, such as compression and image postprocessing settings. */ export interface StreamQualityService { SetStreamParams( request: SetStreamParamsRequest ): Promise; GetStreamParams( request: GetStreamParamsRequest ): Promise; EnableCongestionControl( request: EnableCongestionControlRequest ): Promise; } export class StreamQualityServiceClientImpl implements StreamQualityService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetStreamParams = this.SetStreamParams.bind(this); this.GetStreamParams = this.GetStreamParams.bind(this); this.EnableCongestionControl = this.EnableCongestionControl.bind(this); } SetStreamParams( request: SetStreamParamsRequest ): Promise { const data = SetStreamParamsRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.StreamQualityService", "SetStreamParams", data ); return promise.then((data) => SetStreamParamsResponse.decode(new _m0.Reader(data)) ); } GetStreamParams( request: GetStreamParamsRequest ): Promise { const data = GetStreamParamsRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.StreamQualityService", "GetStreamParams", data ); return promise.then((data) => GetStreamParamsResponse.decode(new _m0.Reader(data)) ); } EnableCongestionControl( request: EnableCongestionControlRequest ): Promise { const data = EnableCongestionControlRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.StreamQualityService", "EnableCongestionControl", data ); return promise.then((data) => EnableCongestionControlResponse.decode(new _m0.Reader(data)) ); } } /** Turn hardware components' power on or off. */ export interface PowerService { /** * Turn components' power on or off. This should not be used to power cycle a component * Turning PTZ power off for too long will cause the video stream to fail */ SetPowerStatus( request: SetPowerStatusRequest ): Promise; /** Get current status of a component */ GetPowerStatus( request: GetPowerStatusRequest ): Promise; /** Cycle power for a component */ CyclePower(request: CyclePowerRequest): Promise; } export class PowerServiceClientImpl implements PowerService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetPowerStatus = this.SetPowerStatus.bind(this); this.GetPowerStatus = this.GetPowerStatus.bind(this); this.CyclePower = this.CyclePower.bind(this); } SetPowerStatus( request: SetPowerStatusRequest ): Promise { const data = SetPowerStatusRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PowerService", "SetPowerStatus", data ); return promise.then((data) => SetPowerStatusResponse.decode(new _m0.Reader(data)) ); } GetPowerStatus( request: GetPowerStatusRequest ): Promise { const data = GetPowerStatusRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PowerService", "GetPowerStatus", data ); return promise.then((data) => GetPowerStatusResponse.decode(new _m0.Reader(data)) ); } CyclePower(request: CyclePowerRequest): Promise { const data = CyclePowerRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PowerService", "CyclePower", data ); return promise.then((data) => CyclePowerResponse.decode(new _m0.Reader(data)) ); } } /** Change the brightness level of individual LEDs. */ export interface LightingService { SetLEDBrightness( request: SetLEDBrightnessRequest ): Promise; GetLEDBrightness( request: GetLEDBrightnessRequest ): Promise; } export class LightingServiceClientImpl implements LightingService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetLEDBrightness = this.SetLEDBrightness.bind(this); this.GetLEDBrightness = this.GetLEDBrightness.bind(this); } SetLEDBrightness( request: SetLEDBrightnessRequest ): Promise { const data = SetLEDBrightnessRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.LightingService", "SetLEDBrightness", data ); return promise.then((data) => SetLEDBrightnessResponse.decode(new _m0.Reader(data)) ); } GetLEDBrightness( request: GetLEDBrightnessRequest ): Promise { const data = GetLEDBrightnessRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.LightingService", "GetLEDBrightness", data ); return promise.then((data) => GetLEDBrightnessResponse.decode(new _m0.Reader(data)) ); } } /** Trigger data acquisitions, and retrieve resulting data. */ export interface MediaLogService { /** * Store queues up a Logpoint, which is a bit of media that the user wishes to store to disk * (still images are supported for now, more media types will be supported in the future) */ Store(request: StoreRequest): Promise; /** * GetStatus reads the 'name' field of the Logpoint contained in GetStatusRequest, and fills in * the rest of the fields. Mainly useful for getting the 'state' of the logpoint. */ GetStatus(request: GetStatusRequest): Promise; /** Tag updates the 'tag' field of the Logpoint that's passed, which must exist. */ Tag(request: TagRequest): Promise; /** EnableDebug starts the periodic logging of health data to the database; this increases disk utilization, but will record data that is useful post-mortum */ EnableDebug(request: DebugRequest): Promise; /** ListCameras returns a list of strings that identify valid cameras for logging */ ListCameras(request: ListCamerasRequest): Promise; /** Retrieve returns all raw data associated with a given logpoint */ RetrieveRawData( request: RetrieveRawDataRequest ): Observable; /** Retrieve returns all data associated with a given logpoint */ Retrieve(request: RetrieveRequest): Observable; /** Delete removes a Logpoint from the system */ Delete(request: DeleteRequest): Promise; /** * ListLogpoints returns a list of all logpoints in the database. * Warning: this may be a lot of data. */ ListLogpoints( request: ListLogpointsRequest ): Observable; /** * SetPassphrase sets the eCryptFS passphrase used by the filesystem. * there is no symmetry here, because key material is write-only * This rpc is now deprecated as of the switch from EXT4 to NTFS and returns UnimplementedError */ SetPassphrase(request: SetPassphraseRequest): Promise; } export class MediaLogServiceClientImpl implements MediaLogService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.Store = this.Store.bind(this); this.GetStatus = this.GetStatus.bind(this); this.Tag = this.Tag.bind(this); this.EnableDebug = this.EnableDebug.bind(this); this.ListCameras = this.ListCameras.bind(this); this.RetrieveRawData = this.RetrieveRawData.bind(this); this.Retrieve = this.Retrieve.bind(this); this.Delete = this.Delete.bind(this); this.ListLogpoints = this.ListLogpoints.bind(this); this.SetPassphrase = this.SetPassphrase.bind(this); } Store(request: StoreRequest): Promise { const data = StoreRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "Store", data ); return promise.then((data) => StoreResponse.decode(new _m0.Reader(data))); } GetStatus(request: GetStatusRequest): Promise { const data = GetStatusRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "GetStatus", data ); return promise.then((data) => GetStatusResponse.decode(new _m0.Reader(data)) ); } Tag(request: TagRequest): Promise { const data = TagRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "Tag", data ); return promise.then((data) => TagResponse.decode(new _m0.Reader(data))); } EnableDebug(request: DebugRequest): Promise { const data = DebugRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "EnableDebug", data ); return promise.then((data) => DebugResponse.decode(new _m0.Reader(data))); } ListCameras(request: ListCamerasRequest): Promise { const data = ListCamerasRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "ListCameras", data ); return promise.then((data) => ListCamerasResponse.decode(new _m0.Reader(data)) ); } RetrieveRawData( request: RetrieveRawDataRequest ): Observable { const data = RetrieveRawDataRequest.encode(request).finish(); const result = this.rpc.serverStreamingRequest( "bosdyn.api.spot_cam.MediaLogService", "RetrieveRawData", data ); return result.pipe( map((data) => RetrieveRawDataResponse.decode(new _m0.Reader(data))) ); } Retrieve(request: RetrieveRequest): Observable { const data = RetrieveRequest.encode(request).finish(); const result = this.rpc.serverStreamingRequest( "bosdyn.api.spot_cam.MediaLogService", "Retrieve", data ); return result.pipe( map((data) => RetrieveResponse.decode(new _m0.Reader(data))) ); } Delete(request: DeleteRequest): Promise { const data = DeleteRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "Delete", data ); return promise.then((data) => DeleteResponse.decode(new _m0.Reader(data))); } ListLogpoints( request: ListLogpointsRequest ): Observable { const data = ListLogpointsRequest.encode(request).finish(); const result = this.rpc.serverStreamingRequest( "bosdyn.api.spot_cam.MediaLogService", "ListLogpoints", data ); return result.pipe( map((data) => ListLogpointsResponse.decode(new _m0.Reader(data))) ); } SetPassphrase(request: SetPassphraseRequest): Promise { const data = SetPassphraseRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.MediaLogService", "SetPassphrase", data ); return promise.then((data) => SetPassphraseResponse.decode(new _m0.Reader(data)) ); } } /** Control real and virtual ptz mechanisms. */ export interface PtzService { /** SetPosition points the referenced camera to a given vector (in PTZ-space) */ SetPtzPosition( request: SetPtzPositionRequest ): Promise; /** GetPosition returns the current settings of the referenced camera */ GetPtzPosition( request: GetPtzPositionRequest ): Promise; SetPtzVelocity( request: SetPtzVelocityRequest ): Promise; GetPtzVelocity( request: GetPtzVelocityRequest ): Promise; ListPtz(request: ListPtzRequest): Promise; /** Reinitializes PTZ autofocus */ InitializeLens( request: InitializeLensRequest ): Promise; } export class PtzServiceClientImpl implements PtzService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetPtzPosition = this.SetPtzPosition.bind(this); this.GetPtzPosition = this.GetPtzPosition.bind(this); this.SetPtzVelocity = this.SetPtzVelocity.bind(this); this.GetPtzVelocity = this.GetPtzVelocity.bind(this); this.ListPtz = this.ListPtz.bind(this); this.InitializeLens = this.InitializeLens.bind(this); } SetPtzPosition( request: SetPtzPositionRequest ): Promise { const data = SetPtzPositionRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "SetPtzPosition", data ); return promise.then((data) => SetPtzPositionResponse.decode(new _m0.Reader(data)) ); } GetPtzPosition( request: GetPtzPositionRequest ): Promise { const data = GetPtzPositionRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "GetPtzPosition", data ); return promise.then((data) => GetPtzPositionResponse.decode(new _m0.Reader(data)) ); } SetPtzVelocity( request: SetPtzVelocityRequest ): Promise { const data = SetPtzVelocityRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "SetPtzVelocity", data ); return promise.then((data) => SetPtzVelocityResponse.decode(new _m0.Reader(data)) ); } GetPtzVelocity( request: GetPtzVelocityRequest ): Promise { const data = GetPtzVelocityRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "GetPtzVelocity", data ); return promise.then((data) => GetPtzVelocityResponse.decode(new _m0.Reader(data)) ); } ListPtz(request: ListPtzRequest): Promise { const data = ListPtzRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "ListPtz", data ); return promise.then((data) => ListPtzResponse.decode(new _m0.Reader(data))); } InitializeLens( request: InitializeLensRequest ): Promise { const data = InitializeLensRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.PtzService", "InitializeLens", data ); return promise.then((data) => InitializeLensResponse.decode(new _m0.Reader(data)) ); } } /** Upload and play sounds over the SpotCam's speakers. */ export interface AudioService { /** Given a soundRequest that identifies a single sound present in the system's sound effects table, PlaySound executes the sound effect. */ PlaySound(request: PlaySoundRequest): Promise; /** * LoadSound loads a sound effect into the system's sound table. The stream must contain a wav file, with a RIFF header describing it. * The arguement is a stream, to allow for sounds that are bigger then the MTU of the network; in this case, the complete stream must * contain the entire sound. If the stream ends early, an error will be returned. The header and sound fields of the entire stream must * be the same. */ LoadSound(request: Observable): Promise; /** Delete the sound identified in the argument from the system's sound table. */ DeleteSound(request: DeleteSoundRequest): Promise; /** ListSounds returns a list of all of the sound effects that the system knows about. */ ListSounds(request: ListSoundsRequest): Promise; /** Set the overall volume level for playing sounds. */ SetVolume(request: SetVolumeRequest): Promise; /** Set the overall volume level for playing sounds. */ GetVolume(request: GetVolumeRequest): Promise; SetAudioCaptureChannel( request: SetAudioCaptureChannelRequest ): Promise; GetAudioCaptureChannel( request: GetAudioCaptureChannelRequest ): Promise; SetAudioCaptureGain( request: SetAudioCaptureGainRequest ): Promise; GetAudioCaptureGain( request: GetAudioCaptureGainRequest ): Promise; } export class AudioServiceClientImpl implements AudioService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.PlaySound = this.PlaySound.bind(this); this.LoadSound = this.LoadSound.bind(this); this.DeleteSound = this.DeleteSound.bind(this); this.ListSounds = this.ListSounds.bind(this); this.SetVolume = this.SetVolume.bind(this); this.GetVolume = this.GetVolume.bind(this); this.SetAudioCaptureChannel = this.SetAudioCaptureChannel.bind(this); this.GetAudioCaptureChannel = this.GetAudioCaptureChannel.bind(this); this.SetAudioCaptureGain = this.SetAudioCaptureGain.bind(this); this.GetAudioCaptureGain = this.GetAudioCaptureGain.bind(this); } PlaySound(request: PlaySoundRequest): Promise { const data = PlaySoundRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "PlaySound", data ); return promise.then((data) => PlaySoundResponse.decode(new _m0.Reader(data)) ); } LoadSound(request: Observable): Promise { const data = request.pipe( map((request) => LoadSoundRequest.encode(request).finish()) ); const promise = this.rpc.clientStreamingRequest( "bosdyn.api.spot_cam.AudioService", "LoadSound", data ); return promise.then((data) => LoadSoundResponse.decode(new _m0.Reader(data)) ); } DeleteSound(request: DeleteSoundRequest): Promise { const data = DeleteSoundRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "DeleteSound", data ); return promise.then((data) => DeleteSoundResponse.decode(new _m0.Reader(data)) ); } ListSounds(request: ListSoundsRequest): Promise { const data = ListSoundsRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "ListSounds", data ); return promise.then((data) => ListSoundsResponse.decode(new _m0.Reader(data)) ); } SetVolume(request: SetVolumeRequest): Promise { const data = SetVolumeRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "SetVolume", data ); return promise.then((data) => SetVolumeResponse.decode(new _m0.Reader(data)) ); } GetVolume(request: GetVolumeRequest): Promise { const data = GetVolumeRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "GetVolume", data ); return promise.then((data) => GetVolumeResponse.decode(new _m0.Reader(data)) ); } SetAudioCaptureChannel( request: SetAudioCaptureChannelRequest ): Promise { const data = SetAudioCaptureChannelRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "SetAudioCaptureChannel", data ); return promise.then((data) => SetAudioCaptureChannelResponse.decode(new _m0.Reader(data)) ); } GetAudioCaptureChannel( request: GetAudioCaptureChannelRequest ): Promise { const data = GetAudioCaptureChannelRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "GetAudioCaptureChannel", data ); return promise.then((data) => GetAudioCaptureChannelResponse.decode(new _m0.Reader(data)) ); } SetAudioCaptureGain( request: SetAudioCaptureGainRequest ): Promise { const data = SetAudioCaptureGainRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "SetAudioCaptureGain", data ); return promise.then((data) => SetAudioCaptureGainResponse.decode(new _m0.Reader(data)) ); } GetAudioCaptureGain( request: GetAudioCaptureGainRequest ): Promise { const data = GetAudioCaptureGainRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.AudioService", "GetAudioCaptureGain", data ); return promise.then((data) => GetAudioCaptureGainResponse.decode(new _m0.Reader(data)) ); } } /** Query temperature and built-in test results. */ export interface HealthService { /** GetTemperature returns a list of thermometers in the system, and the temperature that they measure. */ GetTemperature( request: GetTemperatureRequest ): Promise; /** * GetBitStatus returns two lists; a list of system events, and a list of ways that the system is degraded; * for instance, a degredation may include a missing PTZ unit, or a missing USB storage device. */ GetBITStatus(request: GetBITStatusRequest): Promise; /** ClearBitEvents clears out the events list of the BITStatus structure. */ ClearBITEvents( request: ClearBITEventsRequest ): Promise; /** * GetSystemLog retrieves an encrypted log of system events, for factory diagnosis of possible issues. * The data streamed back should be concatenated to a single file, before sending to the manufacturer. */ GetSystemLog(request: GetSystemLogRequest): Observable; } export class HealthServiceClientImpl implements HealthService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.GetTemperature = this.GetTemperature.bind(this); this.GetBITStatus = this.GetBITStatus.bind(this); this.ClearBITEvents = this.ClearBITEvents.bind(this); this.GetSystemLog = this.GetSystemLog.bind(this); } GetTemperature( request: GetTemperatureRequest ): Promise { const data = GetTemperatureRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.HealthService", "GetTemperature", data ); return promise.then((data) => GetTemperatureResponse.decode(new _m0.Reader(data)) ); } GetBITStatus(request: GetBITStatusRequest): Promise { const data = GetBITStatusRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.HealthService", "GetBITStatus", data ); return promise.then((data) => GetBITStatusResponse.decode(new _m0.Reader(data)) ); } ClearBITEvents( request: ClearBITEventsRequest ): Promise { const data = ClearBITEventsRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.HealthService", "ClearBITEvents", data ); return promise.then((data) => ClearBITEventsResponse.decode(new _m0.Reader(data)) ); } GetSystemLog(request: GetSystemLogRequest): Observable { const data = GetSystemLogRequest.encode(request).finish(); const result = this.rpc.serverStreamingRequest( "bosdyn.api.spot_cam.HealthService", "GetSystemLog", data ); return result.pipe( map((data) => GetSystemLogResponse.decode(new _m0.Reader(data))) ); } } /** Modify or query network settings of the SpotCam and ICE resolution servers. */ export interface NetworkService { /** SetICEConfiguration sets up parameters for ICE, including addresses for STUN and TURN services */ SetICEConfiguration( request: SetICEConfigurationRequest ): Promise; /** GetICEConfiguration retrieves currently set parameters for ICE, including addresses for STUN and TURN services */ GetICEConfiguration( request: GetICEConfigurationRequest ): Promise; } export class NetworkServiceClientImpl implements NetworkService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.SetICEConfiguration = this.SetICEConfiguration.bind(this); this.GetICEConfiguration = this.GetICEConfiguration.bind(this); } SetICEConfiguration( request: SetICEConfigurationRequest ): Promise { const data = SetICEConfigurationRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.NetworkService", "SetICEConfiguration", data ); return promise.then((data) => SetICEConfigurationResponse.decode(new _m0.Reader(data)) ); } GetICEConfiguration( request: GetICEConfigurationRequest ): Promise { const data = GetICEConfigurationRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.NetworkService", "GetICEConfiguration", data ); return promise.then((data) => GetICEConfigurationResponse.decode(new _m0.Reader(data)) ); } } /** Query the version of the software release running on the SpotCam. */ export interface VersionService { GetSoftwareVersion( request: GetSoftwareVersionRequest ): Promise; } export class VersionServiceClientImpl implements VersionService { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.GetSoftwareVersion = this.GetSoftwareVersion.bind(this); } GetSoftwareVersion( request: GetSoftwareVersionRequest ): Promise { const data = GetSoftwareVersionRequest.encode(request).finish(); const promise = this.rpc.request( "bosdyn.api.spot_cam.VersionService", "GetSoftwareVersion", data ); return promise.then((data) => GetSoftwareVersionResponse.decode(new _m0.Reader(data)) ); } } interface Rpc { request( service: string, method: string, data: Uint8Array ): Promise; clientStreamingRequest( service: string, method: string, data: Observable ): Promise; serverStreamingRequest( service: string, method: string, data: Uint8Array ): Observable; bidirectionalStreamingRequest( service: string, method: string, data: Observable ): Observable; }