ยินดีต้อนรับสู่ Stream Deck SDK - ออกแบบมาเพื่อสร้างปลั๊กอินสำหรับ Stream Deck Easy, Stream Deck SDK มอบทุกสิ่งที่คุณต้องการในการเชื่อมต่อและสื่อสารกับแอพดาดฟ้าสตรีมให้คุณมุ่งเน้นไปที่สิ่งที่สนุกสนาน
การสร้างปลั๊กอินดาดฟ้าสตรีมด้วย node.js ต้องการ node.js v20 เมื่อติดตั้ง node.js เราแนะนำให้ใช้ตัวจัดการเวอร์ชันเช่น NVM (MACOS) หรือ NVM-Windows (Windows)
Stream Deck CLI มีคำสั่งสำหรับการสร้างการทดสอบและการรวมปลั๊กอินของคุณและเป็นวิธีที่ง่ายที่สุดในการเริ่มต้นสร้างดาดฟ้าสตรีม นอกจากนี้คุณยังสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการเริ่มต้นในเอกสารของเรา
npm install -g @elgato/cli@latestcreate เพื่อเริ่มต้นตัวช่วยสร้างการสร้าง streamdeck create
หลังจากสร้างปลั๊กอินด้วย streamdeck create คุณจะได้รับสภาพแวดล้อมในท้องถิ่นสำหรับการสร้างปลั๊กอิน
/
├── *.sdPlugin/
│ ├── bin/
│ ├── imgs/
│ ├── logs/
│ ├── ui/
│ │ └── increment-counter.html
│ └── manifest.json
├── src/
│ ├── actions/
│ │ └── increment-counter.ts
│ └── plugin.ts
├── package.json
├── rollup.config.mjs
└── tsconfig.json
package.json มีสคริปต์สองสคริปต์สำหรับการสร้างปลั๊กอิน
npm run build - สร้างปลั๊กอินnpm run watch - เฝ้าดูการเปลี่ยนแปลงอย่างต่อเนื่องและปลั๊กอินร้อนแรงหลังจากสร้าง การกระทำเป็นดาวเด่นของการแสดงและช่วยให้ผู้ใช้สามารถโต้ตอบกับปลั๊กอินของคุณได้ การกระทำจะแสดงเป็นคลาสที่สืบทอดมาจาก SingletonAction ทำให้ปลั๊กอินของคุณได้รับกิจกรรมจากดาดฟ้าสตรีมตัวอย่างเช่นปุ่มลง, หมุนหมุนเป็นต้น
ต่อไปนี้เป็นตัวอย่างของการกระทำที่รับฟังเหตุการณ์ keyDown จากนั้นตั้งชื่อชื่อของการกระทำแหล่งที่มา
import { action , KeyDownEvent , SingletonAction } from "@elgato/streamdeck" ;
@ action ( { UUID : "com.elgato.hello-world.say-hello" } )
export class SayHelloAction extends SingletonAction {
/**
* Listen for the key down event that occurs when a user presses
* a Stream Deck button, and change the title of the action.
*/
async onKeyDown ( ev : KeyDownEvent ) {
await ev . action . setTitle ( "Hello world" ) ;
}
} ปลั๊กอินสามารถดีบั๊กโดยใช้ debugger node.js ใด ๆ ตัวอย่างเช่นรหัส Visual Studio, Chrome ฯลฯ และโดยค่าเริ่มต้นจะเปิดใช้งานการดีบักเมื่อสร้างขึ้นด้วยคำสั่ง streamdeck create
คุณสามารถกำหนดค่าการดีบักภายในการกำหนดค่า node.js ของรายการ
{
// ...
"Nodejs" : {
"Version" : "20" ,
"Debug" : "enabled"
} ,
} มีสี่ตัวเลือกที่มีอยู่เมื่อกำหนดค่าคุณสมบัติ Debug ภายในรายการ:
"enabled" -ปลั๊กอินจะทำงานด้วย --inspect การอนุญาตให้ Debuggers เชื่อมต่อ"break" -ปลั๊กอินจะเปิดตัวด้วย --inspect-brk และจะรอการติดตั้งดีบักเกอร์ก่อนที่จะทำงานstring - คอลเลกชันของข้อโต้แย้ง CLI ที่จัดหาให้กับปลั๊กอินundefined - การดีบักถูกปิดใช้งานเมื่อเรียกใช้ปลั๊กอินในโหมดการดีบัก
"enabled"หรือ"break"พอร์ตที่มีการสุ่มจะถูกจัดสรรให้กับผู้ฟังการดีบักทุกครั้งที่ปลั๊กอินเปิดตัว หากคุณต้องการฟังพอร์ตเฉพาะค่าDebugสามารถตั้งค่าเป็นสตริงของอาร์กิวเมนต์ CLI ได้เช่นการฟังในพอร์ต12345ค่าDebugจะเป็น--inspect=127.0.0.1:12345