@di-zed/yandex-smart-home
Version:
The Yandex Smart Home skills for the different device types.
84 lines (83 loc) • 2.48 kB
TypeScript
/**
* @author DiZed Team
* @copyright Copyright (c) DiZed Team (https://github.com/di-zed/)
*/
import { Capability, CapabilityParameters, CapabilityState } from '../capability';
/**
* Export "video_stream" capability.
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en
*
* @interface
*/
export interface VideoStreamCapability extends Capability {
/**
* Type of capability.
*/
readonly type: 'devices.capabilities.video_stream';
/**
* The parameters object.
*/
parameters?: VideoStreamCapabilityParameters;
/**
* Capability state parameters.
*/
state?: VideoStreamCapabilityState;
}
/**
* The parameters object.
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en#discovery
*
* @interface
*/
export interface VideoStreamCapabilityParameters extends CapabilityParameters {
/**
* It currently supports only the HLS streaming protocol.
* Supported video codecs: H264.
* Maximum video resolution: 1920 × 1080.
* Supported audio codecs: AAC.
*/
protocols: VideoStreamCapabilityProtocol[];
}
/**
* Capability state parameters.
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en#state
*
* @interface
*/
export interface VideoStreamCapabilityState extends CapabilityState {
/**
* The function of the capability. Acceptable values: "get_stream".
*/
readonly instance: VideoStreamCapabilityInstance;
/**
* Parameters of the video stream.
*/
value: VideoStreamCapabilityStateValue;
}
/**
* It currently supports only the HLS streaming protocol.
* Supported video codecs: H264.
* Maximum video resolution: 1920 × 1080.
* Supported audio codecs: AAC.
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en#discovery__parameters
*
* @type
*/
export type VideoStreamCapabilityProtocol = 'hls';
/**
* The function of the capability. Acceptable values: "get_stream".
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en#action__parameters_1
*
* @type
*/
export type VideoStreamCapabilityInstance = 'get_stream';
/**
* Parameters of the video stream.
* https://yandex.ru/dev/dialogs/smart-home/doc/concepts/video_stream.html?lang=en#action__parameters_1
*
* @type
*/
export type VideoStreamCapabilityStateValue = {
stream_url: string;
protocol: VideoStreamCapabilityProtocol;
};