web package
Classes
Class | Description |
---|---|
DataChannel | Represents a data channel between oursevles and a remote peer |
EventEmitter | Event emitter |
HeldKeys | An interface for querying which keyboard keys are currently held down (locally, on the web page). |
InboundStream | An incoming Rainway stream. To ask a host for a stream, use Peer.createStream(). You can also listen for unsolicited stream announcements using the For more info, see: https://docs.rainway.com/tutorial/streaming |
Peer | An object representing a remote Rainway peer. Acquire one of these objects from RainwayConnection.connect(). Then ask for a stream with Peer.createStream(). For more info, see: https://docs.rainway.com/tutorial/exchanging-messages https://docs.rainway.com/tutorial/streaming |
RainwayConnection | A connection to the Rainway network over which peer connection requests are transmitted. |
RainwayError | A runtime error that occurred in the Rainway SDK. |
RainwaySDK |
Enumerations
Enumeration | Description |
---|---|
AudioCodec | |
AudioContainer | |
ButtonAction | A flag indicating whether a mouse button went down or up. |
DataChannelMode | A "reliability mode" for a custom-created data channel, which controls the reliability of the traffic over that channel. |
InputLevel | A bitmask of kinds of input a client can control in a stream. |
InputType | |
KeyboardAction | A flag indicating whether a keyboard key went down or up. |
LogLevel | |
MessageEventType | Indicates whether a received data channel message expects a response. |
MouseButton | An enum for buttons on a mouse or touch device. |
PeerState | |
PenFlags | Flags for PenAbsolute. |
PenMask | Indicates which fields of PenAbsolute are valid. https://docs.microsoft.com/en-us/previous-versions/windows/desktop/inputmsg/pen-mask-constants |
ScrollAxis | An enum for axes that can be scrolled over. |
StreamFit | |
StreamType | The type of the stream (full desktop, app isolation, or byofb). |
TouchMask | Indicates which fields of TouchAbsolute are valid. https://docs.microsoft.com/en-us/previous-versions/windows/desktop/inputmsg/touch-mask-constants |
VideoCodecType | A bitmask enum coarsely describing a video codec. For H.264 codecs, this is the "profile": https://superuser.com/questions/489087/what-are-the-differences-between-h-264-profiles For H.265 codecs, this is just an "H265" value for now. |
VideoContainer | |
VideoReadyState | |
VirtualKey | An enum representing a "virtual key". That is, each member of this enum represents a _behavior_ a key on a keyboard may have (for example "the behavior of the Tab key"), regardless of the physical position of that key (for example "the squat, leftmost key underneath the number row"). This coincides with the Windows VirtualKey enum, but in the context of the Rainway Protocol it can be considered platform-independent, and peers should convert to/from it when generating/processing Rainway keyboard messages. See: https://docs.microsoft.com/en-us/uwp/api/windows.system.virtualkey?view=winrt-19041 |
WindowsPointerFlags | See https://docs.microsoft.com/en-us/windows/win32/inputmsg/pointer-flags-contants |
XInputButtons | A bit-mask enum for buttons on a gamepad. |
Interfaces
Interface | Description |
---|---|
CreateStreamOptions | |
Cursor | A structure which represents a remote cursor. |
DataChannelEvents | |
DecodingInfo | Decoding info result. |
FullscreenOptions_2 | Options passed into InboundStream.requestFullscreen(). |
IAudioConfig | A combination of an audio codec and containerization format. |
IDesktopRect | |
IGamepadReport | A request to bring the remote virtual gamepad with ID "slot" into the state described. |
IGamepadRumble | A feedback message, telling a guest about the gamepad rumble motor speed values. |
IKeyboardInput | A request to perform a remote keypress of the given keycode. |
ILogicalInput | A request to perform a remote text insertion (as if pasting some Unicode text). This is independent of keyboard layout. |
IMouseAbsolute | A request to move the remote mouse to an absolute pixel coordinate on the streamed monitor. |
IMouseClick | A request to click a button on the remote mouse. |
IMouseRelative | A request to move the remote mouse by (dx, dy) pixels. |
IMouseScroll | A request to scroll the remote mouse. |
IPenAbsolute | A request to perform a remote absolute pen movement. https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-pointer\_pen\_info |
IRemoteStreamInfo | Important information about a peers stream |
ISetClipboardText | A request to store some text in the other peer's clipboard. |
ITouchAbsolute | |
ITouchesAbsolute | A request to perform a remote absolute touch movement. https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-pointer\_touch\_info |
ITouchPenPointerInfo | Information common to touch and pen events. This is a subset of: https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-pointer\_info |
IVideoCodec | A video codec recognized by Rainway. |
IVideoConfig | A combination of a video codec and containerization format. |
IViewportResize | A request to resize the streamed application, because the local stream viewport size has changed. Currently this request will be carried out in App Isolation, when one window is isolated. Otherwise it is ignored. |
JoinStreamOptions | |
MessageEventRequest | A data channel "request" message, expecting a response. |
MessageEventStandalone | A standalone message received on a data channel. |
OpenDataChannelOptions | Options for opening data channels |
PeerConnectionRequest | An incoming request from a peer who wants to connect to this device. |
PeerEvents | |
RainwayConnectionEvents | |
RainwayConnectOptions | Configuration for RainwayConnection. |
RainwayEvents | |
RainwayInputEvent | |
RainwayStreamAnnouncement | |
StatsSummary | A summary of statistical measurements over some elapsed polling window. |
StreamEvents | |
StreamReport | |
VideoConfiguration_2 | Video configuration for getting decoding info. |
VideoFrame | A video frame, consisting of a parsed metadata header and a buffer of raw h264 video stream data. |
VideoFrameHeader | Video frame properties. |
Variables
Variable | Description |
---|---|
Rainway | The Rainway SDK For more information, |
Type Aliases
Type Alias | Description |
---|---|
EventHandler | Helper to constrain event handlers |
EventName | Helper type to constrain event names |
EventProvider | Helper type to constrain event provider types |
MessageEvent_2 | |
OutgoingInput | An input we're asking to perform in someone's interactive stream. This is a discriminated union type: match on See: https://basarat.gitbook.io/typescript/type-system/discriminated-unions |
PeerId | |
ReportEntry | An entry in the stream metrics report, describing some event or stats probe in the stream. This is intentionally "stringy" for ease of JSON exporting. |
SimpleEvent | |
TimestampedReportEntry |