เริ่มต้นใช้งาน

บทแนะนำการใช้งานนี้จะแสดงวิธีใช้ API วิดีโอเพื่อสร้างวิดีโอในเพจ โดยจะถือว่าคุณทราบวิธีส่งคำขอ cURL พื้นฐานด้วยเครื่องมือบรรทัดคำสั่งอย่าง Terminal หรือแอพ เช่น Postman รวมถึงมีความคุ้นเคยเบื้องต้นกับ Graph API Explorer แล้ว

ก่อนเริ่มต้น

คุณจะต้องมีสิ่งต่อไปนี้

  • แอพ Facebook ที่มีอยู่ หากคุณยังไม่มี ให้ไปที่ Facebook for Developers แล้วคลิกแอพของฉันและสร้าง
  • วิดีโอขนาด 10–20 MB ที่คุณได้แบ่งกลุ่มละ 5 MB โดยทุกกลุ่มอยู่ในไดเรกทอรีเดียว
  • เพจที่คุณสามารถดำเนินงานCREATE_CONTENT ได้
  • สิทธิ์การเข้าถึงเครื่องมือบรรทัดคำสั่ง (เช่น Terminal) หรือแอพ (เช่น Postman) ที่สามารถส่งคำขอ cURL ได้

ขั้นตอนที่ 1: รับโทเค็นการเข้าถึงผู้ใช้

โดยทั่วไป คุณต้องดำเนินการเข้าสู่ระบบด้วย Facebook ในแอพของคุณและใช้เพื่อรับโทเค็นการเข้าถึงจากผู้ใช้แอพ แต่สำหรับบทแนะนำการใช้งานนี้ คุณสามารถใช้ Graph API Explorer ได้เนื่องจากดำเนินการเข้าสู่ระบบด้วย Facebook แล้ว และทำให้คุณสร้างโทเค็นให้กับแอพใดๆ ของคุณได้ง่าย

  1. โหลด Graph API Explorer และเลือกแอพของคุณจากเมนูดร็อปดาวน์ของแอพ Facebook

  2. ในเมนูดร็อปดาวน์ผู้ใช้หรือเพจ ให้เลือกรับโทเค็นการเข้าถึงผู้ใช้ แล้วดำเนินการต่อด้วยตนเองและยืนยันตัวตน หากคุณใช้แอพเก่าซ้ำ คุณอาจได้ยืนยันตัวตนไปแล้ว

  3. ในส่วนสิทธิ์การอนุญาต ให้ใช้ช่องค้นหาเพิ่มสิทธิ์การอนุญาตเพื่อค้นหาและเลือกสิทธิ์การอนุญาตต่อไปนี้ ได้แก่ pages_manage_engagement และ pages_read_user_content
  4. คลิกสร้างโทเค็นการเข้าถึง
  5. ในหน้าต่างโมดัลที่ปรากฏขึ้น ให้ดำเนินการต่อด้วยตนเองและเลือกเพจที่คุณต้องการอัพโหลดวิดีโอของคุณในท้ายที่สุด
  6. ดำเนินการต่อโดยเลือกถัดไป (Next) ในทุกหน้าจอที่เหลืออยู่จนกว่าคุณจะปิดหน้าต่างโมดัล วิธีนี้จะมอบสิทธิ์การอนุญาตที่คุณเลือกไว้ให้แอพของคุณ และยังสร้างโทเค็นการเข้าถึงผู้ใช้ขึ้นมาด้วย
  7. ไม่บังคับ: คลิกไอคอนข้อมูลสีน้ำเงินเพื่อตรวจสอบยืนยันว่าคุณได้มอบสิทธิ์การอนุญาตที่ถูกต้องให้แอพของคุณแล้ว (ขอบเขต)

ขั้นตอนที่ 2: รับ ID เพจและโทเค็นของเพจ

  1. ใช้ Graph API Explorer เพื่อส่งคำขอไปยังจุดเชื่อมโยง GET /me/accounts วิธีนี้จะสืบค้นผู้ใช้ของคุณ และส่งคืนเพจใดๆ ที่คุณอนุญาตให้แอพของคุณเข้าถึงในขั้นตอนล่าสุด
  2. ระบุเพจของคุณในการตอบกลับ แล้วคัดลอก ID ของเพจ (id) และโทเค็นการเข้าถึงเพจ (access_token)
  3. {
      "data": [
        {
          "access_token": "EBACf...",  //Copy your Page Access Token
          "category": "Media",
          "category_list": [
            {
              "id": "163003840417682",
              "name": "Media"
            }
          ],
          "name": "Metricsaurus",
          "id": "1755847768034402",  //Copy your Page ID
          "tasks": [
            "ANALYZE",
            "ADVERTISE",
            "MODERATE",
            "CREATE_CONTENT",
            "MANAGE"
          ]
        }
      ],
      "paging": {
        "cursors": {
          "before": "MTc1NTg0Nzc2ODAzNDQwMgZDZD",
          "after": "MTc1NTg0Nzc2ODAzNDQwMgZDZD"
        }
      }
    }
    

ขั้นตอนที่ 3: สร้างเซสชั่นวิดีโอ

  1. ในเครื่องมือคำสั่งบรรทัดของคุณ ให้ไปที่โฟลเดอร์ที่มีกลุ่มวิดีโอ แล้วส่งคำขอ cURL ไปยังจุดเชื่อมโยง POST /page-id/videos บนโฮสต์ graph-video.facebook.com หากคุณใช้ Postman อยู่ ให้ใส่คีย์และค่าพารามิเตอร์การสืบค้นในเนื้อความ (Body) คำขอเป็น form-data

  2. ตัวอย่างคำขอ
    curl -X POST \
      "https://graph-video.facebook.com/1755847768034402/videos" \
      -F "access_token=EBACf..." \
      -F "upload_phase=start" \
      -F "file_size=77188035"
    
  3. แทนที่ ID เพจ (1755847768034402) ในพาธคำขอด้วย ID ของเพจ รวมถึงตั้งค่า access_token เป็นโทเค็นการเข้าถึงเพจที่คุณเพิ่งคัดลอก และตั้งค่า file_size เป็นขนาดรวมของไฟล์วิดีโอในหน่วยไบต์

  4. API จะส่งคืนเซสชั่นวิดีโอดังนี้
    {
      "video_id": "225467151853466",
      "start_offset": "0",
      "end_offset": "1048576",
      "upload_session_id": "225467155186799"
    }
    
  5. คัดลอกค่าที่ส่งคืนทั้งหมด ยกเว้นสำหรับ end_offset

ขั้นตอนที่ 4: อัพโหลดกลุ่มวิดีโอแรก

ส่งคำขออีกรายการไปยังจุดเชื่อมโยง POST /{page-id}/videos แล้วใส่ upload_session_id และชื่อกลุ่มวิดีโอแรกของคุณ

ตัวอย่างคำขอ

curl -X POST \
  "https://graph-video.facebook.com/1755847768034402/videos" \
  -F "access_token=EBACf..." \
  -F "upload_phase=transfer" \
  -F "start_offset=0" \
  -F "upload_session_id=225467155186799" \
  -F "video_file_chunk=@xaa"

หากคุณใช้ cURL อยู่ ให้ใส่สัญลักษณ์ @ ก่อนชื่อไฟล์ของคุณ

หากคุณใช้ Postman อยู่ ไม่ต้องใส่สัญลักษณ์ @ แล้วตั้งค่า video_file_chunk เป็นไฟล์ (File) (วางเมาส์บนแถวเพื่อเรียกใช้เมนูดร็อปดาวน์) และเลือกไฟล์กลุ่มแรกด้วยตนเอง

API จะตอบกลับด้วย start_offset ใหม่ บันทึกค่าใหม่

{
  "start_offset": "10485760",
  "end_offset": "15728640"
}

ขั้นตอนที่ 5: อัพโหลดกลุ่มวิดีโอที่เหลืออยู่

  1. ดำเนินการคำขอเดียวกัน แต่ตั้งค่า start_offset เป็นค่า start_offset ใหม่ที่ส่งคืนในการตอบกลับก่อนหน้า และตั้งค่า video_file_chunk เป็นชื่อของกลุ่มวิดีโอถัดไปตามลำดับ
  2. curl -X POST \
      "https://graph-video.facebook.com/1755847768034402/videos" \
      -F "access_token=EBACf..." \
      -F "upload_phase=transfer" \
      -F "start_offset=10485760" \
      -F "upload_session_id=225467155186799" \
      -F "video_file_chunk=@xab"
    
    API จะตอบกลับอีกครั้งด้วยค่า start_offset ใหม่ ซึ่งคุณสามารถใช้เพื่ออัพโหลดกลุ่มถัดไปตามลำดับ
    {
      "start_offset":"15728640",
      "end_offset":"20971520"
    }
    
  3. ดำเนินการขั้นตอนนี้ซ้ำจนกว่าคุณจะอัพโหลดวิดีโอทั้งหมดที่เหลือตามลำดับที่ถูกต้องครบแล้ว โปรแกรมที่คุณใช้แบ่งไฟล์วิดีโอของคุณเป็นกลุ่มๆ ควรจัดการการตั้งชื่อกลุ่มของคุณตามลำดับ

ขั้นตอนที่ 6: จบเซสชั่นการอัพโหลด

เมื่อคุณอัพโหลดกลุ่มสุดท้ายเรียบร้อยแล้ว ให้จบเซสชั่นการอัพโหลดโดยส่งคำขอสุดท้ายหนึ่งรายการไปยังตำแหน่งข้อมูลเดียวกันและตั้งค่า upload_phase เพื่อเสร็จสิ้น

ตัวอย่างคำขอ

curl -X POST \
  "https://graph-video.facebook.com/1755847768034402/videos"  \
  -F "access_token=EBACf..." \
  -F "upload_phase=finish" \
  -F "upload_session_id=225467155186799"

เมื่อดำเนินการสำเร็จแล้ว API จะจบเซสชั่นการอัพโหลดและตอบกลับด้วย true

{
  "success": true
}

เราจะรวบรวมวิดีโอของคุณและเข้ารหัส ขั้นตอนการเข้ารหัสอาจใช้เวลาเข้ารหัสโดยสมบูรณ์หลายนาที ทั้งนี้ขึ้นอยู่กับขนาดรวมของไฟล์วิดีโอของคุณ