Skip to content

Type of response for GetRecordingStatus leads to a possible undefined recordingFilename and recordTimecode  #276

Open
@florianpasteur

Description

@florianpasteur

Description:

Hi,

According to the documentation when getting the GetRecordingStatus, if OBS is recording both recordTimecode and recordingFilename properties should be populated. With the current type definition the both properties can be undefined and throw a type error, see the following snippet of code.

import OBSWebSocket from "obs-websocket-js";

const obs = new OBSWebSocket();

obs.send("GetRecordingStatus").then(status => {
    if (status.isRecording) {
        // TS2345: Argument of type 'string | undefined' is not assignable to parameter of type 'string'.
        // Type 'undefined' is not assignable to type 'string'.
        fnWithMandatoryString(status.recordingFilename);
    }
})

function fnWithMandatoryString(someString: string) {
    // whatever
}

Versions Used (if applicable):

  • obs-websocket-js version: 4.0.3
  • node version: 14.18.1
  • typescript version: 4.5.4

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions