๐ ๋น ๋ฅธ ์์
SSAPI๋ฅผ 5๋ถ ์์ ์์ํ๋ ๋ฐฉ๋ฒ์ ์๋ดํฉ๋๋ค.
1. API ํค ๋ฐ๊ธโ
SSAPI ๋์๋ณด๋ โ์์ ํ์๊ฐ์ ํ API ํค๋ฅผ ์ ์ฒญํฉ๋๋ค.
๋ง์ธํฌ๋ํํธ ์๋ฒ๋ ๋๊ท๋ชจ ์ฝํ ์ธ ์ ๊ฒฝ์ฐ ๋ฌด๋ฃ๋ก ์ ๊ณต๋ ์ ์์ต๋๋ค. ์ด์ฉ ์ ์ฑ ์ ํ์ธํ์ธ์.
2. ์คํธ๋ฆฌ๋จธ ๋ฑ๋กโ
์์ผ๋ฃธ์ ์คํธ๋ฆฌ๋จธ๋ฅผ ๋ฑ๋กํ๋ ๋ฐฉ๋ฒ์ ๋ ๊ฐ์ง์ ๋๋ค.
๋์๋ณด๋ ์ฌ์ฉ (์ถ ์ฒ)โ
๊ด๋ฆฌ์ ๋์๋ณด๋ โ์์ ๊ฐํธํ๊ฒ ์คํธ๋ฆฌ๋จธ๋ฅผ ๋ฑ๋กํ๊ณ ๊ด๋ฆฌํ ์ ์์ต๋๋ค.
- GUI ๊ธฐ๋ฐ ์ง๊ด์ ์ธ ๊ด๋ฆฌ
- ์คํธ๋ฆฌ๋จธ ๋ชฉ๋ก ํ์ธ
- ์ค์๊ฐ ํต๊ณ ํ์ธ
REST API ์ฌ์ฉโ
ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ผ๋ก ์คํธ๋ฆฌ๋จธ๋ฅผ ๋ฑ๋กํ ์ ์์ต๋๋ค.
POST https://api.ssapi.kr/room/streamer
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
{
"streamerId": "streamer_id",
"platform": "afreeca" # ๋๋ "chzzk"
}
์คํธ๋ฆฌ๋จธ ๋ฑ๋ก API ๋ฌธ์ โ
3. ๋ฐ์ดํฐ ์์ โ
Socket API (๊ถ์ฅ)โ
์ค์๊ฐ ๋ฐ์ดํฐ ์คํธ๋ฆฌ๋ฐ์ผ๋ก ๋ค์ ์คํธ๋ฆฌ๋จธ์ ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ์ฒ๋ฆฌํฉ๋๋ค.
const io = require('socket.io-client');
const socket = io('https://socket.ssapi.kr');
// ๋ก๊ทธ์ธ
socket.emit('login', { apiKey: 'YOUR_API_KEY' });
// ์ฑํ
์์
socket.on('chat', (data) => {
console.log(data);
});
// ํ์ ์์
socket.on('donation', (data) => {
console.log(data);
});
REST APIโ
๊ฐ๋จํ HTTP ์์ฒญ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ์กฐํํฉ๋๋ค.
GET https://api.ssapi.kr/room/info
Authorization: Bearer YOUR_API_KEY
๋ง์ธํฌ๋ํํธ ์ฐ๋โ
๋ง์ธํฌ๋ํํธ ์๋ฒ๋ฅผ ์ํ ์ ์ฉ ํ๋ฌ๊ทธ์ธ์ ์ ๊ณตํฉ๋๋ค.
- GitHub์์ ํ๋ฌ๊ทธ์ธ ๋ค์ด๋ก๋ โ
plugins/ํด๋์ ๋ณต์ฌ ํ ์๋ฒ ์ฌ์์config.yml์ API ํค ์ ๋ ฅ
๋ง์ธํฌ๋ํํธ ํ๋ฌ๊ทธ์ธ ๋ฌธ์ โ
๋ค์ ๋จ๊ณโ
- ๋ฐ์ดํฐ ์คํค๋ง - API ์๋ต ๊ตฌ์กฐ ํ์ธ
- ์ฝ๋ ์์ - ์ค์ ๊ตฌํ ์์
- ์ฐธ๊ณ ์๋ฃ - ์ฝ๋ํ ๋ฐ ์ธ๋ถ ์ ๋ณด