general

package
v0.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 17, 2021 License: Apache-2.0 Imports: 2 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AuthenticateParams

type AuthenticateParams struct {
	requests.ParamsBasic

	// Response to the auth challenge (see "Authentication" for more information).
	Auth string `json:"auth,omitempty"`
}

AuthenticateParams represents the params body for the "Authenticate" request. Attempt to authenticate the client to the server. Since 0.3.

func (*AuthenticateParams) GetSelfName added in v0.5.0

func (o *AuthenticateParams) GetSelfName() string

GetSelfName just returns "Authenticate".

type AuthenticateResponse

type AuthenticateResponse struct {
	requests.ResponseBasic
}

AuthenticateResponse represents the response body for the "Authenticate" request. Attempt to authenticate the client to the server. Since v0.3.

type BroadcastCustomMessageParams added in v0.3.0

type BroadcastCustomMessageParams struct {
	requests.ParamsBasic

	// User-defined data
	Data map[string]interface{} `json:"data,omitempty"`

	// Identifier to be choosen by the client
	Realm string `json:"realm,omitempty"`
}

BroadcastCustomMessageParams represents the params body for the "BroadcastCustomMessage" request. Broadcast custom message to all connected WebSocket clients Since 4.7.0.

func (*BroadcastCustomMessageParams) GetSelfName added in v0.5.0

func (o *BroadcastCustomMessageParams) GetSelfName() string

GetSelfName just returns "BroadcastCustomMessage".

type BroadcastCustomMessageResponse added in v0.3.0

type BroadcastCustomMessageResponse struct {
	requests.ResponseBasic
}

BroadcastCustomMessageResponse represents the response body for the "BroadcastCustomMessage" request. Broadcast custom message to all connected WebSocket clients Since v4.7.0.

type Client

type Client struct {
	*requests.Client
}

Client represents a client for 'general' requests.

func (*Client) Authenticate

func (c *Client) Authenticate(params *AuthenticateParams) (*AuthenticateResponse, error)

Authenticate sends the corresponding request to the connected OBS WebSockets server.

func (*Client) BroadcastCustomMessage added in v0.3.0

func (c *Client) BroadcastCustomMessage(params *BroadcastCustomMessageParams) (*BroadcastCustomMessageResponse, error)

BroadcastCustomMessage sends the corresponding request to the connected OBS WebSockets server.

func (*Client) ExecuteBatch added in v0.5.0

func (c *Client) ExecuteBatch(params *ExecuteBatchParams) (*ExecuteBatchResponse, error)

ExecuteBatch sends the corresponding request to the connected OBS WebSockets server.

func (*Client) GetAuthRequired

func (c *Client) GetAuthRequired(paramss ...*GetAuthRequiredParams) (*GetAuthRequiredResponse, error)

GetAuthRequired sends the corresponding request to the connected OBS WebSockets server. Note the variadic arguments as this request doesn't require any parameters.

func (*Client) GetFilenameFormatting

func (c *Client) GetFilenameFormatting(
	paramss ...*GetFilenameFormattingParams,
) (*GetFilenameFormattingResponse, error)

GetFilenameFormatting sends the corresponding request to the connected OBS WebSockets server. Note the variadic arguments as this request doesn't require any parameters.

func (*Client) GetStats added in v0.2.0

func (c *Client) GetStats(paramss ...*GetStatsParams) (*GetStatsResponse, error)

GetStats sends the corresponding request to the connected OBS WebSockets server. Note the variadic arguments as this request doesn't require any parameters.

func (*Client) GetVersion

func (c *Client) GetVersion(paramss ...*GetVersionParams) (*GetVersionResponse, error)

GetVersion sends the corresponding request to the connected OBS WebSockets server. Note the variadic arguments as this request doesn't require any parameters.

func (*Client) GetVideoInfo added in v0.2.0

func (c *Client) GetVideoInfo(paramss ...*GetVideoInfoParams) (*GetVideoInfoResponse, error)

GetVideoInfo sends the corresponding request to the connected OBS WebSockets server. Note the variadic arguments as this request doesn't require any parameters.

func (*Client) OpenProjector added in v0.4.0

func (c *Client) OpenProjector(params *OpenProjectorParams) (*OpenProjectorResponse, error)

OpenProjector sends the corresponding request to the connected OBS WebSockets server.

func (*Client) SetFilenameFormatting

func (c *Client) SetFilenameFormatting(params *SetFilenameFormattingParams) (*SetFilenameFormattingResponse, error)

SetFilenameFormatting sends the corresponding request to the connected OBS WebSockets server.

func (*Client) Sleep added in v0.5.0

func (c *Client) Sleep(params *SleepParams) (*SleepResponse, error)

Sleep sends the corresponding request to the connected OBS WebSockets server.

func (*Client) TriggerHotkeyByName added in v0.5.0

func (c *Client) TriggerHotkeyByName(params *TriggerHotkeyByNameParams) (*TriggerHotkeyByNameResponse, error)

TriggerHotkeyByName sends the corresponding request to the connected OBS WebSockets server.

func (*Client) TriggerHotkeyBySequence added in v0.5.0

func (c *Client) TriggerHotkeyBySequence(
	params *TriggerHotkeyBySequenceParams,
) (*TriggerHotkeyBySequenceResponse, error)

TriggerHotkeyBySequence sends the corresponding request to the connected OBS WebSockets server.

type ExecuteBatchParams added in v0.5.0

type ExecuteBatchParams struct {
	requests.ParamsBasic

	// Stop processing batch requests if one returns a failure.
	AbortOnFail bool `json:"abortOnFail"`

	Requests []*Request `json:"requests,omitempty"`
}

ExecuteBatchParams represents the params body for the "ExecuteBatch" request. Executes a list of requests sequentially (one-by-one on the same thread). Since 4.9.0.

func (*ExecuteBatchParams) GetSelfName added in v0.5.0

func (o *ExecuteBatchParams) GetSelfName() string

GetSelfName just returns "ExecuteBatch".

type ExecuteBatchResponse added in v0.5.0

type ExecuteBatchResponse struct {
	requests.ResponseBasic

	Results []*Result `json:"results,omitempty"`
}

ExecuteBatchResponse represents the response body for the "ExecuteBatch" request. Executes a list of requests sequentially (one-by-one on the same thread). Since v4.9.0.

type GetAuthRequiredParams

type GetAuthRequiredParams struct {
	requests.ParamsBasic
}

GetAuthRequiredParams represents the params body for the "GetAuthRequired" request. Tells the client if authentication is required. If so, returns authentication parameters `challenge` and `salt` (see "Authentication" for more information). Since 0.3.

func (*GetAuthRequiredParams) GetSelfName added in v0.5.0

func (o *GetAuthRequiredParams) GetSelfName() string

GetSelfName just returns "GetAuthRequired".

type GetAuthRequiredResponse

type GetAuthRequiredResponse struct {
	requests.ResponseBasic

	// Indicates whether authentication is required.
	AuthRequired bool `json:"authRequired"`

	Challenge string `json:"challenge,omitempty"`

	Salt string `json:"salt,omitempty"`
}

GetAuthRequiredResponse represents the response body for the "GetAuthRequired" request. Tells the client if authentication is required. If so, returns authentication parameters `challenge` and `salt` (see "Authentication" for more information). Since v0.3.

type GetFilenameFormattingParams

type GetFilenameFormattingParams struct {
	requests.ParamsBasic
}

GetFilenameFormattingParams represents the params body for the "GetFilenameFormatting" request. Get the filename formatting string Since 4.3.0.

func (*GetFilenameFormattingParams) GetSelfName added in v0.5.0

func (o *GetFilenameFormattingParams) GetSelfName() string

GetSelfName just returns "GetFilenameFormatting".

type GetFilenameFormattingResponse

type GetFilenameFormattingResponse struct {
	requests.ResponseBasic

	// Current filename formatting string.
	FilenameFormatting string `json:"filename-formatting,omitempty"`
}

GetFilenameFormattingResponse represents the response body for the "GetFilenameFormatting" request. Get the filename formatting string Since v4.3.0.

type GetStatsParams added in v0.2.0

type GetStatsParams struct {
	requests.ParamsBasic
}

GetStatsParams represents the params body for the "GetStats" request. Get OBS stats (almost the same info as provided in OBS' stats window) Since 4.6.0.

func (*GetStatsParams) GetSelfName added in v0.5.0

func (o *GetStatsParams) GetSelfName() string

GetSelfName just returns "GetStats".

type GetStatsResponse added in v0.2.0

type GetStatsResponse struct {
	requests.ResponseBasic

	// [OBS stats](#obsstats)
	Stats typedefs.OBSStats `json:"stats,omitempty"`
}

GetStatsResponse represents the response body for the "GetStats" request. Get OBS stats (almost the same info as provided in OBS' stats window) Since v4.6.0.

type GetVersionParams

type GetVersionParams struct {
	requests.ParamsBasic
}

GetVersionParams represents the params body for the "GetVersion" request. Returns the latest version of the plugin and the API. Since 0.3.

func (*GetVersionParams) GetSelfName added in v0.5.0

func (o *GetVersionParams) GetSelfName() string

GetSelfName just returns "GetVersion".

type GetVersionResponse

type GetVersionResponse struct {
	requests.ResponseBasic

	// List of available request types, formatted as a comma-separated list string (e.g. : "Method1,Method2,Method3").
	AvailableRequests string `json:"available-requests,omitempty"`

	// OBS Studio program version.
	ObsStudioVersion string `json:"obs-studio-version,omitempty"`

	// obs-websocket plugin version.
	ObsWebsocketVersion string `json:"obs-websocket-version,omitempty"`

	// List of supported formats for features that use image export (like the TakeSourceScreenshot request type)
	// formatted as a comma-separated list string
	SupportedImageExportFormats string `json:"supported-image-export-formats,omitempty"`

	// OBSRemote compatible API version. Fixed to 1.1 for retrocompatibility.
	Version float64 `json:"version,omitempty"`
}

GetVersionResponse represents the response body for the "GetVersion" request. Returns the latest version of the plugin and the API. Since v0.3.

type GetVideoInfoParams added in v0.2.0

type GetVideoInfoParams struct {
	requests.ParamsBasic
}

GetVideoInfoParams represents the params body for the "GetVideoInfo" request. Get basic OBS video information Since 4.6.0.

func (*GetVideoInfoParams) GetSelfName added in v0.5.0

func (o *GetVideoInfoParams) GetSelfName() string

GetSelfName just returns "GetVideoInfo".

type GetVideoInfoResponse added in v0.2.0

type GetVideoInfoResponse struct {
	requests.ResponseBasic

	// Base (canvas) height
	BaseHeight int `json:"baseHeight,omitempty"`

	// Base (canvas) width
	BaseWidth int `json:"baseWidth,omitempty"`

	// Color range (full or partial)
	ColorRange string `json:"colorRange,omitempty"`

	// Color space for YUV
	ColorSpace string `json:"colorSpace,omitempty"`

	// Frames rendered per second
	Fps float64 `json:"fps,omitempty"`

	// Output height
	OutputHeight int `json:"outputHeight,omitempty"`

	// Output width
	OutputWidth int `json:"outputWidth,omitempty"`

	// Scaling method used if output size differs from base size
	ScaleType string `json:"scaleType,omitempty"`

	// Video color format
	VideoFormat string `json:"videoFormat,omitempty"`
}

GetVideoInfoResponse represents the response body for the "GetVideoInfo" request. Get basic OBS video information Since v4.6.0.

type KeyModifiers added in v0.6.0

type KeyModifiers struct {
	// Trigger Alt Key
	Alt bool `json:"alt"`

	// Trigger Command Key (Mac)
	Command bool `json:"command"`

	// Trigger Control (Ctrl) Key
	Control bool `json:"control"`

	// Trigger Shift Key
	Shift bool `json:"shift"`
}

type OpenProjectorParams added in v0.4.0

type OpenProjectorParams struct {
	requests.ParamsBasic

	// Size and position of the projector window (only if monitor is -1). Encoded in Base64 using [Qt's geometry
	// encoding](https://doc.qt.io/qt-5/qwidget.html#saveGeometry). Corresponds to OBS's saved projectors.
	Geometry string `json:"geometry,omitempty"`

	// Monitor to open the projector on. If -1 or omitted, opens a window.
	Monitor int `json:"monitor,omitempty"`

	// Name of the source or scene to be displayed (ignored for other projector types).
	Name string `json:"name,omitempty"`

	// Type of projector: `Preview` (default), `Source`, `Scene`, `StudioProgram`, or `Multiview` (case insensitive).
	Type string `json:"type,omitempty"`
}

OpenProjectorParams represents the params body for the "OpenProjector" request. Open a projector window or create a projector on a monitor. Requires OBS v24.0.4 or newer. Since 4.8.0.

func (*OpenProjectorParams) GetSelfName added in v0.5.0

func (o *OpenProjectorParams) GetSelfName() string

GetSelfName just returns "OpenProjector".

type OpenProjectorResponse added in v0.4.0

type OpenProjectorResponse struct {
	requests.ResponseBasic
}

OpenProjectorResponse represents the response body for the "OpenProjector" request. Open a projector window or create a projector on a monitor. Requires OBS v24.0.4 or newer. Since v4.8.0.

type Request added in v0.6.0

type Request struct {
	// ID of the individual request. Can be any string and not required to be unique. Defaults to empty string if not
	// specified.
	MessageId string `json:"message-id,omitempty"`

	// Request type. Eg. `GetVersion`.
	RequestType string `json:"request-type,omitempty"`
}

type Result added in v0.6.0

type Result struct {
	// Error message accompanying an `error` status.
	Error string `json:"error,omitempty"`

	// ID of the individual request which was originally provided by the client.
	MessageId string `json:"message-id,omitempty"`

	// Status response as string. Either `ok` or `error`.
	Status string `json:"status,omitempty"`
}

type SetFilenameFormattingParams

type SetFilenameFormattingParams struct {
	requests.ParamsBasic

	// Filename formatting string to set.
	FilenameFormatting string `json:"filename-formatting,omitempty"`
}

SetFilenameFormattingParams represents the params body for the "SetFilenameFormatting" request. Set the filename formatting string Since 4.3.0.

func (*SetFilenameFormattingParams) GetSelfName added in v0.5.0

func (o *SetFilenameFormattingParams) GetSelfName() string

GetSelfName just returns "SetFilenameFormatting".

type SetFilenameFormattingResponse

type SetFilenameFormattingResponse struct {
	requests.ResponseBasic
}

SetFilenameFormattingResponse represents the response body for the "SetFilenameFormatting" request. Set the filename formatting string Since v4.3.0.

type SleepParams added in v0.5.0

type SleepParams struct {
	requests.ParamsBasic

	// Delay in milliseconds to wait before continuing.
	SleepMillis int `json:"sleepMillis,omitempty"`
}

SleepParams represents the params body for the "Sleep" request. Waits for the specified duration. Designed to be used in `ExecuteBatch` operations. Since 4.9.1.

func (*SleepParams) GetSelfName added in v0.5.0

func (o *SleepParams) GetSelfName() string

GetSelfName just returns "Sleep".

type SleepResponse added in v0.5.0

type SleepResponse struct {
	requests.ResponseBasic
}

SleepResponse represents the response body for the "Sleep" request. Waits for the specified duration. Designed to be used in `ExecuteBatch` operations. Since v4.9.1.

type TriggerHotkeyByNameParams added in v0.5.0

type TriggerHotkeyByNameParams struct {
	requests.ParamsBasic

	// Unique name of the hotkey, as defined when registering the hotkey (e.g. "ReplayBuffer.Save")
	HotkeyName string `json:"hotkeyName,omitempty"`
}

TriggerHotkeyByNameParams represents the params body for the "TriggerHotkeyByName" request. Executes hotkey routine, identified by hotkey unique name Since 4.9.0.

func (*TriggerHotkeyByNameParams) GetSelfName added in v0.5.0

func (o *TriggerHotkeyByNameParams) GetSelfName() string

GetSelfName just returns "TriggerHotkeyByName".

type TriggerHotkeyByNameResponse added in v0.5.0

type TriggerHotkeyByNameResponse struct {
	requests.ResponseBasic
}

TriggerHotkeyByNameResponse represents the response body for the "TriggerHotkeyByName" request. Executes hotkey routine, identified by hotkey unique name Since v4.9.0.

type TriggerHotkeyBySequenceParams added in v0.5.0

type TriggerHotkeyBySequenceParams struct {
	requests.ParamsBasic

	// Main key identifier (e.g. `OBS_KEY_A` for key "A"). Available identifiers
	// [here](https://github.com/obsproject/obs-studio/blob/master/libobs/obs-hotkeys.h)
	KeyId string `json:"keyId,omitempty"`

	KeyModifiers *KeyModifiers `json:"keyModifiers,omitempty"`
}

TriggerHotkeyBySequenceParams represents the params body for the "TriggerHotkeyBySequence" request. Executes hotkey routine, identified by bound combination of keys. A single key combination might trigger multiple hotkey routines depending on user settings Since 4.9.0.

func (*TriggerHotkeyBySequenceParams) GetSelfName added in v0.5.0

func (o *TriggerHotkeyBySequenceParams) GetSelfName() string

GetSelfName just returns "TriggerHotkeyBySequence".

type TriggerHotkeyBySequenceResponse added in v0.5.0

type TriggerHotkeyBySequenceResponse struct {
	requests.ResponseBasic
}

TriggerHotkeyBySequenceResponse represents the response body for the "TriggerHotkeyBySequence" request. Executes hotkey routine, identified by bound combination of keys. A single key combination might trigger multiple hotkey routines depending on user settings Since v4.9.0.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL