Files
plexjs/docs/models/operations/reportrequest.md

56 lines
19 KiB
Markdown

# ReportRequest
## Example Usage
```typescript
import { ReportRequest, ReportState } from "@lukehagar/plexjs/models/operations";
import { BoolInt } from "@lukehagar/plexjs/models/shared";
let value: ReportRequest = {
key: "/foo",
ratingKey: "xyz",
state: ReportState.Playing,
playQueueItemID: "123",
time: 0,
duration: 10000,
continuing: BoolInt.True,
updated: 14200000,
offline: BoolInt.True,
timeToFirstFrame: 1000,
timeStalled: 1000,
bandwidth: 100,
bufferedTime: 100,
bufferedSize: 1024,
};
```
## Fields
| Field | Type | Required | Description | Example |
| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `accepts` | [shared.Accepts](../../models/shared/accepts.md) | :heavy_minus_sign: | Indicates the client accepts the indicated media types | |
| `clientIdentifier` | *string* | :heavy_minus_sign: | An opaque identifier unique to the client | abc123 |
| `product` | *string* | :heavy_minus_sign: | The name of the client product | Plex for Roku |
| `version` | *string* | :heavy_minus_sign: | The version of the client application | 2.4.1 |
| `platform` | *string* | :heavy_minus_sign: | The platform of the client | Roku |
| `platformVersion` | *string* | :heavy_minus_sign: | The version of the platform | 4.3 build 1057 |
| `device` | *string* | :heavy_minus_sign: | A relatively friendly name for the client device | Roku 3 |
| `model` | *string* | :heavy_minus_sign: | A potentially less friendly identifier for the device model | 4200X |
| `deviceVendor` | *string* | :heavy_minus_sign: | The device vendor | Roku |
| `deviceName` | *string* | :heavy_minus_sign: | A friendly name for the client | Living Room TV |
| `marketplace` | *string* | :heavy_minus_sign: | The marketplace on which the client application is distributed | googlePlay |
| `key` | *string* | :heavy_minus_sign: | The details key for the item. | /foo |
| `ratingKey` | *string* | :heavy_minus_sign: | The rating key attribute for the item. | xyz |
| `state` | [operations.ReportState](../../models/operations/reportstate.md) | :heavy_minus_sign: | The current state of the media. | playing |
| `playQueueItemID` | *string* | :heavy_minus_sign: | If playing media from a play queue, the play queue's ID. | 123 |
| `time` | *number* | :heavy_minus_sign: | The current time offset of playback in ms. | 0 |
| `duration` | *number* | :heavy_minus_sign: | The total duration of the item in ms. | 10000 |
| `continuing` | [shared.BoolInt](../../models/shared/boolint.md) | :heavy_minus_sign: | When state is `stopped`, a flag indicating whether or not the client is going to continue playing anothe item. | 1 |
| `updated` | *number* | :heavy_minus_sign: | Used when a sync client comes online and is syncing media timelines, holds the time at which the playback state was last updated. | 14200000 |
| `offline` | [shared.BoolInt](../../models/shared/boolint.md) | :heavy_minus_sign: | Also used by sync clients, used to indicate that a timeline is being synced from being offline, as opposed to being "live". | 1 |
| `timeToFirstFrame` | *number* | :heavy_minus_sign: | Time in seconds till first frame is displayed. Sent only on the first playing timeline request. | 1000 |
| `timeStalled` | *number* | :heavy_minus_sign: | Time in seconds spent buffering since last request. | 1000 |
| `bandwidth` | *number* | :heavy_minus_sign: | Bandwidth in kbps as estimated by the client. | 100 |
| `bufferedTime` | *number* | :heavy_minus_sign: | Amount of time in seconds buffered by client. Omit if computed by `bufferedSize` below. | 100 |
| `bufferedSize` | *number* | :heavy_minus_sign: | Size in kilobytes of data buffered by client. Omit if computed by `bufferedTime` above | 1024 |
| `xPlexSessionIdentifier` | *string* | :heavy_minus_sign: | Unique per client playback session. Used if a client can playback multiple items at a time (such as a browser with multiple tabs) | |