buzzk 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +121 -23
- package/lib/channel.js +52 -6
- package/lib/chat.js +38 -3
- package/lib/live.js +51 -5
- package/lib/val.js +4 -0
- package/lib/vm.js +1 -1
- package/package.json +11 -2
package/README.md
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
<img
|
|
1
|
+
<img src="https://github.com/Emin-G/Img/blob/main/buzzk/buzzk_pamplet.gif?raw=true" alt="BuzzkThumb" width="100%">
|
|
2
2
|
|
|
3
3
|
# 뿌지직
|
|
4
4
|
|
|
5
5
|
<p align="center">
|
|
6
|
-
<img
|
|
6
|
+
<img src="https://github.com/Emin-G/Img/blob/main/buzzk/buzzk_favi-min.png?raw=true" alt="BUZZK" width="30%">
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
@@ -15,8 +15,20 @@
|
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
18
|
-
## 업데이트 내역
|
|
18
|
+
## 📖 업데이트 내역
|
|
19
19
|
|
|
20
|
+
- 함수 이름 수정
|
|
21
|
+
|
|
22
|
+
**하단의 1.3.0 마이그레이션 가이드 참고**
|
|
23
|
+
|
|
24
|
+
>
|
|
25
|
+
|
|
26
|
+
- channelID로 채널 정보 가져오기 함수 추가
|
|
27
|
+
- ws 라이브러리 종속성 추가
|
|
28
|
+
|
|
29
|
+
>
|
|
30
|
+
|
|
31
|
+
- 자동완성 기능 지원
|
|
20
32
|
- 팔로우 / 언팔로우 기능 추가
|
|
21
33
|
- live.getLiveDetail의 Return 값에 chatLimit 추가 (팔로우 대상 채팅 등...)
|
|
22
34
|
- 폴링 함수 추가 (chatID 변경 감지)
|
|
@@ -24,12 +36,75 @@
|
|
|
24
36
|
- chat.disconnect 함수 보완
|
|
25
37
|
- 버전 체크 함수 추가
|
|
26
38
|
|
|
27
|
-
##
|
|
39
|
+
## ✒️ 마이그레이션 가이드 (v.1.3.0)
|
|
40
|
+
|
|
41
|
+
<details>
|
|
42
|
+
<summary>펼쳐보기</summary>
|
|
43
|
+
|
|
44
|
+
buzzk.channel
|
|
45
|
+
|
|
46
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | buzzk.channel.getChannel |
|
|
47
|
+
|--|--|
|
|
48
|
+
| | buzzk.channel.search |
|
|
49
|
+
|
|
50
|
+
---
|
|
51
|
+
|
|
52
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | buzzk.channel.followChannel |
|
|
53
|
+
|--|--|
|
|
54
|
+
| | buzzk.channel.follow |
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | buzzk.channel.unFollowChannel |
|
|
59
|
+
|--|--|
|
|
60
|
+
| | buzzk.channel.unFollow |
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
buzzk.live
|
|
65
|
+
|
|
66
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | buzzk.live.getLiveDetail |
|
|
67
|
+
|--|--|
|
|
68
|
+
| | buzzk.live.getDetail |
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | buzzk.live.getLiveStatus |
|
|
73
|
+
|--|--|
|
|
74
|
+
| | buzzk.live.getStatus |
|
|
75
|
+
|
|
76
|
+
---
|
|
77
|
+
|
|
78
|
+
buzzk.live.getDetail (getLiveDetail)
|
|
79
|
+
|
|
80
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | (return).channel.channelName |
|
|
81
|
+
|--|--|
|
|
82
|
+
| | (return).channel.name |
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_change-min.png?raw=true" alt="BUZZK" width="70"> | (return).channel.channelImageUrl |
|
|
87
|
+
|--|--|
|
|
88
|
+
| | (return).channel.imageURL |
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_delete-min.png?raw=true" alt="BUZZK" width="70"> | (return).channel.channelId |
|
|
93
|
+
|--|--|
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
| <img src="https://github.com/Emin-G/Img/blob/main/tags/tag_delete-min.png?raw=true" alt="BUZZK" width="70"> | (return).channel.verifiedMark |
|
|
98
|
+
|--|--|
|
|
99
|
+
|
|
100
|
+
</details>
|
|
101
|
+
|
|
102
|
+
## 👋 설치
|
|
28
103
|
|
|
29
104
|
1. `npm install buzzk`
|
|
30
105
|
2. `const buzzk = require("buzzk");`
|
|
31
106
|
|
|
32
|
-
## 빠른. 시작.
|
|
107
|
+
## 🔥 빠른. 시작.
|
|
33
108
|
|
|
34
109
|
const buzzk = require("buzzk");
|
|
35
110
|
buzzk.login("NID_AUT 쿠키 값", "NID_SES 쿠키 값");
|
|
@@ -38,11 +113,11 @@
|
|
|
38
113
|
|
|
39
114
|
async function test () {
|
|
40
115
|
|
|
41
|
-
let chSearch = await buzzk.channel.
|
|
116
|
+
let chSearch = await buzzk.channel.search("녹두로로"); //채널 검색
|
|
42
117
|
|
|
43
118
|
let channel = chSearch[0]; //검색 결과 첫번째 채널
|
|
44
119
|
|
|
45
|
-
const lvDetail = await buzzk.live.
|
|
120
|
+
const lvDetail = await buzzk.live.getDetail(channel.channelID); //현재 방송 정보
|
|
46
121
|
|
|
47
122
|
let chat = new buzzkChat(channel.channelID);
|
|
48
123
|
await chat.connect(); //채팅창 연결
|
|
@@ -50,7 +125,7 @@
|
|
|
50
125
|
let recentChat = await chat.getRecentChat(); //최근 채팅 가져오기 (기본값 50개)
|
|
51
126
|
console.log(recentChat);
|
|
52
127
|
|
|
53
|
-
chat.onMessage((data) => { //채팅이 왔을 때
|
|
128
|
+
chat.onMessage(async (data) => { //채팅이 왔을 때
|
|
54
129
|
for (let o in data) {
|
|
55
130
|
console.log(data[o].message);
|
|
56
131
|
|
|
@@ -63,9 +138,9 @@
|
|
|
63
138
|
|
|
64
139
|
test();
|
|
65
140
|
|
|
66
|
-
## 사용법
|
|
141
|
+
## 🎀 사용법
|
|
67
142
|
|
|
68
|
-
|
|
143
|
+
### login
|
|
69
144
|
|
|
70
145
|
buzzk.login("NID_AUT 쿠키 값", "NID_SES 쿠키 값");
|
|
71
146
|
|
|
@@ -75,13 +150,34 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
75
150
|
|
|
76
151
|
---
|
|
77
152
|
|
|
78
|
-
|
|
153
|
+
### channel
|
|
79
154
|
|
|
80
|
-
let chSearch = await buzzk.channel.
|
|
155
|
+
let chSearch = await buzzk.channel.search("녹두로로");
|
|
81
156
|
console.log(chSearch);
|
|
82
157
|
|
|
83
158
|
<details>
|
|
84
|
-
<summary>
|
|
159
|
+
<summary>return</summary>
|
|
160
|
+
|
|
161
|
+
- Return
|
|
162
|
+
- 0
|
|
163
|
+
- channelID
|
|
164
|
+
- name
|
|
165
|
+
- description
|
|
166
|
+
- follower
|
|
167
|
+
- imageURL
|
|
168
|
+
- isLive
|
|
169
|
+
- 1
|
|
170
|
+
- 2
|
|
171
|
+
- 3
|
|
172
|
+
- ...
|
|
173
|
+
|
|
174
|
+
</details>
|
|
175
|
+
|
|
176
|
+
let channel = await buzzk.channel.get("channelID 값");
|
|
177
|
+
console.log(channel);
|
|
178
|
+
|
|
179
|
+
<details>
|
|
180
|
+
<summary>return</summary>
|
|
85
181
|
|
|
86
182
|
- Return
|
|
87
183
|
- channelID
|
|
@@ -93,25 +189,27 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
93
189
|
|
|
94
190
|
</details>
|
|
95
191
|
|
|
96
|
-
await buzzk.channel.
|
|
192
|
+
await buzzk.channel.follow("channelID 값");
|
|
97
193
|
|
|
98
194
|
>
|
|
99
195
|
|
|
100
|
-
await buzzk.channel.
|
|
196
|
+
await buzzk.channel.unFollow("channelID 값");
|
|
101
197
|
|
|
102
198
|
---
|
|
103
199
|
|
|
104
|
-
|
|
200
|
+
### live
|
|
105
201
|
|
|
106
|
-
const lvDetail = await buzzk.live.
|
|
202
|
+
const lvDetail = await buzzk.live.getDetail("channelID 값");
|
|
107
203
|
console.log(lvDetail);
|
|
108
204
|
|
|
109
205
|
<details>
|
|
110
|
-
<summary>
|
|
206
|
+
<summary>return</summary>
|
|
111
207
|
|
|
112
208
|
- Return
|
|
113
209
|
- channelID
|
|
114
210
|
- channel
|
|
211
|
+
- name
|
|
212
|
+
- imageURL
|
|
115
213
|
- chatID
|
|
116
214
|
- chatLimit //팔로워 전용 채팅 등...
|
|
117
215
|
- userCount
|
|
@@ -125,11 +223,11 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
125
223
|
|
|
126
224
|
</details>
|
|
127
225
|
|
|
128
|
-
const lvStatus = await buzzk.live.
|
|
226
|
+
const lvStatus = await buzzk.live.getStatus("channelID 값");
|
|
129
227
|
console.log(lvStatus);
|
|
130
228
|
|
|
131
229
|
<details>
|
|
132
|
-
<summary>
|
|
230
|
+
<summary>return</summary>
|
|
133
231
|
|
|
134
232
|
- Return
|
|
135
233
|
- channelID
|
|
@@ -145,7 +243,7 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
145
243
|
|
|
146
244
|
---
|
|
147
245
|
|
|
148
|
-
|
|
246
|
+
### chat
|
|
149
247
|
|
|
150
248
|
const buzzkChat = buzzk.chat;
|
|
151
249
|
let chat = new buzzkChat("channelID 값");
|
|
@@ -157,7 +255,7 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
157
255
|
console.log(recentChat);
|
|
158
256
|
|
|
159
257
|
<details>
|
|
160
|
-
<summary>
|
|
258
|
+
<summary>return</summary>
|
|
161
259
|
|
|
162
260
|
- Return
|
|
163
261
|
- 0
|
|
@@ -183,7 +281,7 @@ dotenv와 함께 사용하는 것을 매우 권장합니다.
|
|
|
183
281
|
});
|
|
184
282
|
|
|
185
283
|
<details>
|
|
186
|
-
<summary>
|
|
284
|
+
<summary>callback</summary>
|
|
187
285
|
|
|
188
286
|
- Return
|
|
189
287
|
- 0
|
package/lib/channel.js
CHANGED
|
@@ -11,7 +11,25 @@ class chzzkChannel {
|
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @typedef {Object.<number, chzzkChannel>} chzzkChannels
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @typedef {Object} chzzkChannel
|
|
20
|
+
* @property {string} channelID
|
|
21
|
+
* @property {string} name
|
|
22
|
+
* @property {string} description
|
|
23
|
+
* @property {string} follower
|
|
24
|
+
* @property {string} imageURL
|
|
25
|
+
* @property {boolean} isLive
|
|
26
|
+
*/
|
|
27
|
+
|
|
28
|
+
/**
|
|
29
|
+
* @param {string} keyword
|
|
30
|
+
* @returns {Promise<chzzkChannels>}
|
|
31
|
+
*/
|
|
32
|
+
async function search (keyword) {
|
|
15
33
|
return new Promise(async (resolve, reject) => {
|
|
16
34
|
|
|
17
35
|
let chSearch = await reqChzzk("service/v1/search/channels?keyword=" + keyword + "&offset=0&size=13&withFirstChannelContent=false");
|
|
@@ -32,7 +50,30 @@ async function getChannel (keyword) {
|
|
|
32
50
|
});
|
|
33
51
|
}
|
|
34
52
|
|
|
35
|
-
|
|
53
|
+
|
|
54
|
+
/**
|
|
55
|
+
* @param {string} channelID
|
|
56
|
+
* @returns {Promise<chzzkChannel>}
|
|
57
|
+
*/
|
|
58
|
+
async function get (channelID) {
|
|
59
|
+
return new Promise(async (resolve, reject) => {
|
|
60
|
+
|
|
61
|
+
let chGet = await reqChzzk("service/v1/channels/" + channelID);
|
|
62
|
+
if (chGet.code != 200) return resolve(null);
|
|
63
|
+
chGet = chGet.content;
|
|
64
|
+
|
|
65
|
+
let chRes = new chzzkChannel(chGet.channelId, chGet.channelName, chGet.channelDescription, chGet.followerCount, chGet.channelImageUrl, chGet.openLive);
|
|
66
|
+
|
|
67
|
+
return resolve(chRes);
|
|
68
|
+
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @param {string} channelID
|
|
74
|
+
* @returns {Promise<boolean>}
|
|
75
|
+
*/
|
|
76
|
+
async function follow (channelID) {
|
|
36
77
|
return new Promise(async (resolve, reject) => {
|
|
37
78
|
|
|
38
79
|
let flRes = await exChzzk("POST", "service/v1/channels/" + channelID + "/follow");
|
|
@@ -42,7 +83,11 @@ async function followChannel (channelID) {
|
|
|
42
83
|
});
|
|
43
84
|
}
|
|
44
85
|
|
|
45
|
-
|
|
86
|
+
/**
|
|
87
|
+
* @param {string} channelID
|
|
88
|
+
* @returns {Promise<boolean>}
|
|
89
|
+
*/
|
|
90
|
+
async function unFollow (channelID) {
|
|
46
91
|
return new Promise(async (resolve, reject) => {
|
|
47
92
|
|
|
48
93
|
let flRes = await exChzzk("DELETE", "service/v1/channels/" + channelID + "/follow");
|
|
@@ -53,7 +98,8 @@ async function unFollowChannel (channelID) {
|
|
|
53
98
|
}
|
|
54
99
|
|
|
55
100
|
module.exports = {
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
101
|
+
search: search,
|
|
102
|
+
get: get,
|
|
103
|
+
follow: follow,
|
|
104
|
+
unFollow: unFollow
|
|
59
105
|
}
|
package/lib/chat.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const {
|
|
1
|
+
const { getStatus } = require("./live.js");
|
|
2
2
|
const { reqGame } = require("./tool.js");
|
|
3
3
|
|
|
4
4
|
const { WebSocket } = require("ws");
|
|
@@ -19,12 +19,15 @@ class chzzkChat {
|
|
|
19
19
|
#pollingStatus = false;
|
|
20
20
|
//Private
|
|
21
21
|
|
|
22
|
+
/**
|
|
23
|
+
* @returns {Promise<boolean>}
|
|
24
|
+
*/
|
|
22
25
|
connect() {
|
|
23
26
|
return new Promise(async (resolve, reject) => {
|
|
24
27
|
if (this.#ws) return resolve(null);
|
|
25
28
|
|
|
26
29
|
//Get ChatID
|
|
27
|
-
let cidRes = await
|
|
30
|
+
let cidRes = await getStatus(this.channelID);
|
|
28
31
|
this.#chatID = cidRes.chatID;
|
|
29
32
|
//Get ChatID
|
|
30
33
|
|
|
@@ -105,6 +108,10 @@ class chzzkChat {
|
|
|
105
108
|
});
|
|
106
109
|
}
|
|
107
110
|
|
|
111
|
+
/**
|
|
112
|
+
* @param {string} message
|
|
113
|
+
* @returns {Promise<boolean>}
|
|
114
|
+
*/
|
|
108
115
|
send(message) {
|
|
109
116
|
return new Promise(async (resolve, reject) => {
|
|
110
117
|
if (!this.#ws) return resolve(null);
|
|
@@ -143,6 +150,27 @@ class chzzkChat {
|
|
|
143
150
|
});
|
|
144
151
|
}
|
|
145
152
|
|
|
153
|
+
/**
|
|
154
|
+
* @typedef {Object.<number, chzzkMessage>} chzzkMessages
|
|
155
|
+
*/
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* @typedef {Object} chzzkMessage
|
|
159
|
+
* @property {chzzkMessageAuthor} author
|
|
160
|
+
* @property {string} message
|
|
161
|
+
* @property {number} time
|
|
162
|
+
*/
|
|
163
|
+
|
|
164
|
+
/**
|
|
165
|
+
* @typedef {Object} chzzkMessageAuthor
|
|
166
|
+
* @property {string} id
|
|
167
|
+
* @property {string} name
|
|
168
|
+
* @property {string} imageURL
|
|
169
|
+
*/
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* @param {function(chzzkMessages)} callback
|
|
173
|
+
*/
|
|
146
174
|
onMessage(callback) {
|
|
147
175
|
if (!this.#ws) return callback(null);
|
|
148
176
|
|
|
@@ -174,6 +202,10 @@ class chzzkChat {
|
|
|
174
202
|
});
|
|
175
203
|
}
|
|
176
204
|
|
|
205
|
+
/**
|
|
206
|
+
* @param {?number} size
|
|
207
|
+
* @return {Promise<chzzkMessages>}
|
|
208
|
+
*/
|
|
177
209
|
getRecentChat(size) {
|
|
178
210
|
return new Promise(async (resolve, reject) => {
|
|
179
211
|
if (!this.#ws) return resolve(null);
|
|
@@ -221,6 +253,9 @@ class chzzkChat {
|
|
|
221
253
|
});
|
|
222
254
|
}
|
|
223
255
|
|
|
256
|
+
/**
|
|
257
|
+
* @returns {Promise<boolean>}
|
|
258
|
+
*/
|
|
224
259
|
async disconnect() {
|
|
225
260
|
return new Promise(async (resolve, reject) => {
|
|
226
261
|
if (!this.#ws) return resolve(null);
|
|
@@ -236,7 +271,7 @@ class chzzkChat {
|
|
|
236
271
|
this.#pollingStatus = true;
|
|
237
272
|
|
|
238
273
|
//Get ChatID
|
|
239
|
-
let cidRes = await
|
|
274
|
+
let cidRes = await getStatus(this.channelID);
|
|
240
275
|
this.#chatID = cidRes.chatID;
|
|
241
276
|
//Get ChatID
|
|
242
277
|
|
package/lib/live.js
CHANGED
|
@@ -1,6 +1,37 @@
|
|
|
1
1
|
const { reqChzzk } = require("./tool.js");
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* @typedef {Object} chzzkLiveDetail
|
|
5
|
+
* @property {string} channelID
|
|
6
|
+
* @property {channelInfo} channel
|
|
7
|
+
* @property {string} chatID
|
|
8
|
+
* @property {string} chatLimit
|
|
9
|
+
* @property {userCount} userCount
|
|
10
|
+
* @property {string} title
|
|
11
|
+
* @property {string} startOn
|
|
12
|
+
* @property {string} closeOn
|
|
13
|
+
* @property {string} status
|
|
14
|
+
* @property {Object} polling
|
|
15
|
+
*
|
|
16
|
+
*/
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* @typedef {Object} channelInfo
|
|
20
|
+
* @property {string} name
|
|
21
|
+
* @property {string} imageURL
|
|
22
|
+
*/
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* @typedef {Object} userCount
|
|
26
|
+
* @property {number} now
|
|
27
|
+
* @property {number} total
|
|
28
|
+
*/
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* @param {string} channelID
|
|
32
|
+
* @returns {Promise<chzzkLiveDetail>}
|
|
33
|
+
*/
|
|
34
|
+
async function getDetail (channelID) {
|
|
4
35
|
return new Promise(async (resolve, reject) => {
|
|
5
36
|
|
|
6
37
|
let res = await reqChzzk("service/v2/channels/" + channelID + "/live-detail");
|
|
@@ -9,7 +40,7 @@ async function getLiveDetail (channelID) {
|
|
|
9
40
|
|
|
10
41
|
let lvDetail = {
|
|
11
42
|
channelID: res.channel.channelId,
|
|
12
|
-
channel: res.channel,
|
|
43
|
+
channel: { name: res.channel.channelName, imageURL: res.channel.channelImageUrl },
|
|
13
44
|
chatID: res.chatChannelId,
|
|
14
45
|
chatLimit: res.chatAvailableGroup,
|
|
15
46
|
userCount: { now: res.concurrentUserCount, total: res.accumulateCount },
|
|
@@ -25,7 +56,22 @@ async function getLiveDetail (channelID) {
|
|
|
25
56
|
});
|
|
26
57
|
}
|
|
27
58
|
|
|
28
|
-
|
|
59
|
+
/**
|
|
60
|
+
* @typedef {Object} chzzkLiveStatus
|
|
61
|
+
* @property {string} channelID
|
|
62
|
+
* @property {string} chatID
|
|
63
|
+
* @property {userCount} userCount
|
|
64
|
+
* @property {string} title
|
|
65
|
+
* @property {string} status
|
|
66
|
+
* @property {Object} polling
|
|
67
|
+
*
|
|
68
|
+
*/
|
|
69
|
+
|
|
70
|
+
/**
|
|
71
|
+
* @param {string} channelID
|
|
72
|
+
* @returns {Promise<chzzkLiveStatus>}
|
|
73
|
+
*/
|
|
74
|
+
async function getStatus (channelID) {
|
|
29
75
|
return new Promise(async (resolve, reject) => {
|
|
30
76
|
|
|
31
77
|
let res = await reqChzzk("polling/v2/channels/" + channelID + "/live-status");
|
|
@@ -47,6 +93,6 @@ async function getLiveStatus (channelID) {
|
|
|
47
93
|
}
|
|
48
94
|
|
|
49
95
|
module.exports = {
|
|
50
|
-
|
|
51
|
-
|
|
96
|
+
getDetail: getDetail,
|
|
97
|
+
getStatus: getStatus
|
|
52
98
|
}
|
package/lib/val.js
CHANGED
package/lib/vm.js
CHANGED
|
@@ -11,7 +11,7 @@ async function check () {
|
|
|
11
11
|
remotePkg = String(remotePkg.version).split(".");
|
|
12
12
|
|
|
13
13
|
for (let v in remotePkg) {
|
|
14
|
-
if (parseInt(remotePkg[v]) > parseInt(localPkg[v])) return console.log("[BUZZK] 새로운 버전을 찾았습니다! (
|
|
14
|
+
if (parseInt(remotePkg[v]) > parseInt(localPkg[v])) return console.log("[BUZZK] 새로운 버전을 찾았습니다! ( npm install buzzk@" + remotePkg.join(".") + " )");
|
|
15
15
|
}
|
|
16
16
|
}
|
|
17
17
|
|
package/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "buzzk",
|
|
3
3
|
"displayName": "BUZZK",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.3.0",
|
|
5
5
|
"description": "뿌지직 (BUZZK) - 치지직(CHZZK) 챗봇을 더욱 쉽게 개발할 수 있도록 돕는 비공식 라이브러리.",
|
|
6
6
|
"main": "lib/index.js",
|
|
7
|
+
"type": "commonjs",
|
|
7
8
|
"directories": {
|
|
8
9
|
"lib": "lib"
|
|
9
10
|
},
|
|
@@ -23,5 +24,13 @@
|
|
|
23
24
|
"url": "https://github.com/Emin-G/buzzk/issues"
|
|
24
25
|
},
|
|
25
26
|
"homepage": "https://github.com/Emin-G/buzzk",
|
|
26
|
-
"keywords": [
|
|
27
|
+
"keywords": [
|
|
28
|
+
"chzzk",
|
|
29
|
+
"buzzk",
|
|
30
|
+
"치지직",
|
|
31
|
+
"뿌지직"
|
|
32
|
+
],
|
|
33
|
+
"dependencies": {
|
|
34
|
+
"ws": "^8.16.0"
|
|
35
|
+
}
|
|
27
36
|
}
|