place.stream.livestream

did:web:longos.iameli.link View official

Documentation

Record announcing a livestream is happening

main record

Record announcing a livestream is happening

Record Key tid Timestamp-based ID

Properties

agent string Optional

The source of the livestream, if available, in a User Agent format: `<product> / <product-version> <comment>` e.g. Streamplace/0.7.5 iOS

canonicalUrl string uri Optional

The primary URL where this livestream can be viewed, if available.

createdAt string datetime Required

Client-declared timestamp when this livestream started.

endedAt string datetime Optional

Client-declared timestamp when this livestream ended. Ended livestreams are not supposed to start up again.

idleTimeoutSeconds integer Optional

Time in seconds after which this livestream should be automatically ended if idle. Zero means no timeout.

lastSeenAt string datetime Optional

Client-declared timestamp when this livestream was last seen by the Streamplace station.

thumb blob Optional

No description available.

maxSize: 1.0 MB
title string Required

The title of the livestream, as it will be announced to followers.

maxLength: 1400 bytesmaxGraphemes: 140 graphemes
url string uri Optional

The URL where this stream can be found. This is primarily a hint for other Streamplace nodes to locate and replicate the stream.

View raw schema
{
  "key": "tid",
  "type": "record",
  "record": {
    "type": "object",
    "required": [
      "title",
      "createdAt"
    ],
    "properties": {
      "url": {
        "type": "string",
        "format": "uri",
        "description": "The URL where this stream can be found. This is primarily a hint for other Streamplace nodes to locate and replicate the stream."
      },
      "post": {
        "ref": "com.atproto.repo.strongRef",
        "type": "ref",
        "description": "The post that announced this livestream."
      },
      "agent": {
        "type": "string",
        "description": "The source of the livestream, if available, in a User Agent format: `<product> / <product-version> <comment>` e.g. Streamplace/0.7.5 iOS"
      },
      "thumb": {
        "type": "blob",
        "accept": [
          "image/*"
        ],
        "maxSize": 1000000
      },
      "title": {
        "type": "string",
        "maxLength": 1400,
        "description": "The title of the livestream, as it will be announced to followers.",
        "maxGraphemes": 140
      },
      "endedAt": {
        "type": "string",
        "format": "datetime",
        "description": "Client-declared timestamp when this livestream ended. Ended livestreams are not supposed to start up again."
      },
      "createdAt": {
        "type": "string",
        "format": "datetime",
        "description": "Client-declared timestamp when this livestream started."
      },
      "lastSeenAt": {
        "type": "string",
        "format": "datetime",
        "description": "Client-declared timestamp when this livestream was last seen by the Streamplace station."
      },
      "canonicalUrl": {
        "type": "string",
        "format": "uri",
        "description": "The primary URL where this livestream can be viewed, if available."
      },
      "idleTimeoutSeconds": {
        "type": "integer",
        "description": "Time in seconds after which this livestream should be automatically ended if idle. Zero means no timeout."
      },
      "notificationSettings": {
        "ref": "place.stream.livestream#notificationSettings",
        "type": "ref"
      }
    }
  },
  "description": "Record announcing a livestream is happening"
}
livestreamView object

No description available.

Properties

cid string cid Required

A content identifier (CID) referencing immutable data.

indexedAt string datetime Required

An RFC 3339 formatted timestamp.

record unknown Required

No description available.

uri string at-uri Required

An AT Protocol URI (e.g., at://did:plc:xyz/app.bsky.feed.post/abc).

viewerCount ref #viewerCount Optional

The number of viewers watching this livestream. Use when you can't reasonably use #viewerCount directly.

View raw schema
{
  "type": "object",
  "required": [
    "uri",
    "cid",
    "author",
    "record",
    "indexedAt"
  ],
  "properties": {
    "cid": {
      "type": "string",
      "format": "cid"
    },
    "uri": {
      "type": "string",
      "format": "at-uri"
    },
    "author": {
      "ref": "app.bsky.actor.defs#profileViewBasic",
      "type": "ref"
    },
    "record": {
      "type": "unknown"
    },
    "indexedAt": {
      "type": "string",
      "format": "datetime"
    },
    "viewerCount": {
      "ref": "#viewerCount",
      "type": "ref",
      "description": "The number of viewers watching this livestream. Use when you can't reasonably use #viewerCount directly."
    }
  }
}
notificationSettings object

No description available.

Properties

pushNotification boolean Optional

Whether this livestream should trigger a push notification to followers.

View raw schema
{
  "type": "object",
  "properties": {
    "pushNotification": {
      "type": "boolean",
      "description": "Whether this livestream should trigger a push notification to followers."
    }
  }
}
streamplaceAnything object

No description available.

Properties

View raw schema
{
  "type": "object",
  "required": [
    "livestream"
  ],
  "properties": {
    "livestream": {
      "refs": [
        "#livestreamView",
        "#viewerCount",
        "#teleportArrival",
        "#teleportCanceled",
        "place.stream.defs#blockView",
        "place.stream.defs#renditions",
        "place.stream.defs#rendition",
        "place.stream.chat.defs#messageView"
      ],
      "type": "union"
    }
  }
}
teleportArrival object

No description available.

Properties

startsAt string datetime Required

When this teleport started

teleportUri string at-uri Required

The URI of the teleport record

viewerCount integer Required

How many viewers are arriving from this teleport

View raw schema
{
  "type": "object",
  "required": [
    "teleportUri",
    "source",
    "viewerCount",
    "startsAt"
  ],
  "properties": {
    "source": {
      "ref": "app.bsky.actor.defs#profileViewBasic",
      "type": "ref",
      "description": "The streamer who is teleporting their viewers here"
    },
    "startsAt": {
      "type": "string",
      "format": "datetime",
      "description": "When this teleport started"
    },
    "chatProfile": {
      "ref": "place.stream.chat.profile",
      "type": "ref",
      "description": "The chat profile of the source streamer"
    },
    "teleportUri": {
      "type": "string",
      "format": "at-uri",
      "description": "The URI of the teleport record"
    },
    "viewerCount": {
      "type": "integer",
      "description": "How many viewers are arriving from this teleport"
    }
  }
}
teleportCanceled object

No description available.

Properties

reason string Required

Why this teleport was canceled

teleportUri string at-uri Required

The URI of the teleport record that was canceled

View raw schema
{
  "type": "object",
  "required": [
    "teleportUri",
    "reason"
  ],
  "properties": {
    "reason": {
      "enum": [
        "deleted",
        "denied",
        "expired"
      ],
      "type": "string",
      "description": "Why this teleport was canceled"
    },
    "teleportUri": {
      "type": "string",
      "format": "at-uri",
      "description": "The URI of the teleport record that was canceled"
    }
  }
}
viewerCount object

No description available.

Properties

count integer Required

No description available.

View raw schema
{
  "type": "object",
  "required": [
    "count"
  ],
  "properties": {
    "count": {
      "type": "integer"
    }
  }
}

Lexicon Garden

@