ข้อมูลอ้างอิง · ทีวี

แสดงรายการทีวี

GET /v1/tvs

แสดงรายการทีวีที่เปิดใช้งานแล้วขององค์กรที่ผู้ใช้มีสิทธิ์ดูทีวี เรียงตามตัวอักษร

การตอบกลับแบบแบ่งหน้า: รายการจะอยู่ใน data และข้อมูลหน้าจะอยู่ใน meta การแบ่งหน้าและตัวกรอง

พารามิเตอร์

ชื่อประเภทคำอธิบาย
organizationstringuid ขององค์กร เพื่อแสดงเฉพาะรายการขององค์กรนั้น (ดู /organizations)
qstringส่วนหนึ่งของชื่อ ไม่เกิน 100 อักขระ
pageintegerหน้า เริ่มจาก 1 ค่าเริ่มต้น: 1
per_pageintegerจำนวนรายการต่อหน้า ตั้งแต่ 1 ถึง 100 ค่าเริ่มต้น: 50

ฟิลด์ของแต่ละรายการ

uid string
ตัวระบุทีวี ซึ่งเป็นค่าเดียวกับที่ใช้ในแผงควบคุม
name string
ชื่อทีวี
description string
คำอธิบายทีวี (อาจว่างเปล่า)
organization object
องค์กรของทีวี: uid และ name
playlist object | null
เพลย์ลิสต์ของทีวี (uid และ name) หรือ null หากไม่มี
status string
online, alert หรือ offline ตามที่อธิบายไว้ด้านล่าง
last_seen_at string | null
การติดต่อครั้งล่าสุดระหว่างทีวีกับแพลตฟอร์ม หรือ null หากทีวีไม่เคยเชื่อมต่อ
activated_at string | null
เวลาที่เปิดใช้งานทีวี
app_version string
เวอร์ชันของแอปที่ติดตั้งบนทีวี
os string
ระบบปฏิบัติการของทีวี เช่น android
device object
ยี่ห้อ (brand) และรุ่น (model) ของอุปกรณ์ เมื่อทีวีส่งข้อมูลนี้มา
timezone string | null
เขตเวลาของทีวี เช่น America/Sao_Paulo หรือ null

วิธีคำนวณสถานะ

  • online ติดต่อล่าสุดไม่ถึง 3 นาทีที่แล้ว และกำลังเล่นอยู่
  • alert ติดต่อล่าสุดเมื่อ 3 ถึง 9 นาทีที่แล้ว หรือทีวียังเริ่มต้นไม่เสร็จ
  • offline ไม่มีการติดต่อนาน 10 นาทีขึ้นไป หรือไม่เคยเชื่อมต่อ

เป็นกฎเดียวกับสีสถานะในแผงควบคุม

ข้อผิดพลาดที่อาจเกิดขึ้น

  • 400 invalid_parameter พารามิเตอร์มีค่าไม่ถูกต้อง เช่น per_page เกินค่าสูงสุด
  • 404 organization_not_found organization ที่ระบุไม่ใช่องค์กรที่ผู้ใช้มีสิทธิ์ดูรายการประเภทนี้
  • ข้อผิดพลาดเกี่ยวกับคีย์และขีดจำกัดคำขอใช้กับทุกเอนด์พอยต์ ดูข้อผิดพลาดทั้งหมด
คำขอ
curl "https://api.on-cloud.live/v1/tvs?per_page=2" \
  -H "X-API-Key: $API_KEY"
<?php
$ch = curl_init('https://api.on-cloud.live/v1/tvs?per_page=2');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HTTPHEADER => ['X-API-Key: ' . getenv('API_KEY')],
]);
$response = json_decode(curl_exec($ch), true);
const res = await fetch('https://api.on-cloud.live/v1/tvs?per_page=2', {
  headers: { 'X-API-Key': process.env.API_KEY }
});
const { data, meta } = await res.json();
การตอบกลับ200
{
  "data": [
    {
      "uid": "d3d9446802a44259755d38e6d163e820",
      "name": "Caixa 2",
      "description": "",
      "organization": {
        "uid": "1679091c5a880faf6fb5e6087eb1b2dc",
        "name": "Loja Shopping Norte"
      },
      "playlist": null,
      "status": "offline",
      "last_seen_at": "2026-11-01T18:04:51-03:00",
      "activated_at": "2025-03-12T09:41:05-03:00",
      "app_version": "3.12.83",
      "os": "android",
      "device": {
        "brand": "Philco",
        "model": "PTV32G70"
      },
      "timezone": "America/Sao_Paulo"
    },
    {
      "uid": "c98cb8f9cc62887d1f6cf5693df9219c",
      "name": "Recepção",
      "description": "TV da entrada",
      "organization": {
        "uid": "8f14e45fceea167a5a36dedd4bea2543",
        "name": "Loja Centro"
      },
      "playlist": {
        "uid": "e4da3b7fbbce2345d7772b0674a318d5",
        "name": "Lista principal"
      },
      "status": "online",
      "last_seen_at": "2026-11-03T14:32:10-03:00",
      "activated_at": "2025-03-12T09:41:05-03:00",
      "app_version": "3.12.84",
      "os": "android",
      "device": {
        "brand": "TCL",
        "model": "43P635"
      },
      "timezone": "America/Sao_Paulo"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 2,
    "total": 3,
    "total_pages": 2
  }
}