@zhin.js/plugin-60s 0.0.2 โ 0.0.4
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/lib/index.js +105 -89
- package/lib/index.js.map +1 -1
- package/package.json +8 -4
- package/skills/60s/SKILL.md +38 -0
- package/src/index.ts +487 -0
package/lib/index.js
CHANGED
|
@@ -52,8 +52,9 @@ function formatList(items, limit = 10) {
|
|
|
52
52
|
.slice(0, limit)
|
|
53
53
|
.map((item, i) => {
|
|
54
54
|
const title = item.title || item.name || item.word || item;
|
|
55
|
-
const hot = item.
|
|
56
|
-
|
|
55
|
+
const hot = item.hot_value || item.hot;
|
|
56
|
+
const hotStr = hot ? ` ๐ฅ${hot}` : '';
|
|
57
|
+
return `${i + 1}. ${title}${hotStr}`;
|
|
57
58
|
})
|
|
58
59
|
.join('\n');
|
|
59
60
|
}
|
|
@@ -88,20 +89,23 @@ const weatherTool = new ZhinTool('weather')
|
|
|
88
89
|
.examples('/weather ๆ้ฝ', '/ๅคฉๆฐ ๅไบฌ')
|
|
89
90
|
.param('city', { type: 'string', description: 'ๅๅธๅ็งฐ๏ผๅฆ"ๆ้ฝ"ใ"ๅไบฌ"' }, true)
|
|
90
91
|
.execute(async (args) => {
|
|
91
|
-
const data = await fetchApi('/weather', {
|
|
92
|
+
const data = await fetchApi('/weather', { city: args.city });
|
|
92
93
|
const w = data.weather;
|
|
93
94
|
const aq = data.air_quality;
|
|
94
95
|
const loc = data.location;
|
|
96
|
+
const cityName = loc?.city || loc?.name || args.city;
|
|
95
97
|
const lines = [
|
|
96
|
-
`๐ค๏ธ ${
|
|
98
|
+
`๐ค๏ธ ${cityName} ๅคฉๆฐ`,
|
|
97
99
|
'',
|
|
98
100
|
`๐ก๏ธ ๆธฉๅบฆ: ${w.temperature}ยฐC`,
|
|
99
101
|
`โ๏ธ ๅคฉๆฐ: ${w.condition}`,
|
|
100
102
|
`๐ง ๆนฟๅบฆ: ${w.humidity}%`,
|
|
101
103
|
`๐จ ้ฃ: ${w.wind_direction} ${w.wind_power}`,
|
|
102
104
|
];
|
|
103
|
-
if (aq)
|
|
104
|
-
|
|
105
|
+
if (aq) {
|
|
106
|
+
const quality = aq.quality || '';
|
|
107
|
+
lines.push(`๐ฌ๏ธ ็ฉบๆฐ: ${quality}${aq.aqi ? ` (AQI ${aq.aqi})` : ''}`);
|
|
108
|
+
}
|
|
105
109
|
return lines.join('\n');
|
|
106
110
|
});
|
|
107
111
|
// โโ ๅพฎๅ็ญๆ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
@@ -173,8 +177,9 @@ const hitokotoTool = new ZhinTool('hitokoto')
|
|
|
173
177
|
? { c: args.type }
|
|
174
178
|
: undefined;
|
|
175
179
|
const data = await fetchApi('/hitokoto', params);
|
|
176
|
-
const
|
|
177
|
-
|
|
180
|
+
const text = data.hitokoto || data.content || (typeof data === 'string' ? data : '');
|
|
181
|
+
const lines = ['๐ฌ ไธ่จ', '', `ใ${text}ใ`];
|
|
182
|
+
if (data.from || data.source || data.from_who || data.author) {
|
|
178
183
|
const author = data.from_who || data.author || '';
|
|
179
184
|
const source = data.from || data.source || '';
|
|
180
185
|
lines.push(`โโ${author}${source ? `ใ${source}ใ` : ''}`);
|
|
@@ -193,9 +198,32 @@ const moyuTool = new ZhinTool('moyu')
|
|
|
193
198
|
const data = await fetchApi('/moyu');
|
|
194
199
|
if (typeof data === 'string')
|
|
195
200
|
return `๐ ๆธ้ฑผๆฅๅ\n\n${data}`;
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
201
|
+
const lines = ['๐ ๆธ้ฑผๆฅๅ', ''];
|
|
202
|
+
if (data.date?.gregorian)
|
|
203
|
+
lines.push(`๐
${data.date.gregorian} ${data.date.weekday || ''}`);
|
|
204
|
+
if (data.date?.lunar) {
|
|
205
|
+
const l = data.date.lunar;
|
|
206
|
+
lines.push(`๐ ๅๅ${l.monthCN || ''}${l.dayCN || ''} ${l.yearGanZhi || ''}ๅนด`);
|
|
207
|
+
}
|
|
208
|
+
if (data.today) {
|
|
209
|
+
const t = data.today;
|
|
210
|
+
if (t.holidayName)
|
|
211
|
+
lines.push(`๐ ${t.holidayName}`);
|
|
212
|
+
if (t.solarTerm)
|
|
213
|
+
lines.push(`๐ฟ ${t.solarTerm}`);
|
|
214
|
+
lines.push(t.isWorkday ? '๐ผ ไปๅคฉๆฏๅทฅไฝๆฅ' : '๐ฎ ไปๅคฉไธไธ็ญ');
|
|
215
|
+
}
|
|
216
|
+
if (data.festivals && Array.isArray(data.festivals)) {
|
|
217
|
+
data.festivals.forEach((f) => lines.push(`๐ ${f.name || f}`));
|
|
218
|
+
}
|
|
219
|
+
if (data.countdown && Array.isArray(data.countdown)) {
|
|
220
|
+
lines.push('');
|
|
221
|
+
data.countdown.forEach((c) => {
|
|
222
|
+
if (c.name && c.days !== undefined)
|
|
223
|
+
lines.push(`โณ ่ท ${c.name} ่ฟๆ ${c.days} ๅคฉ`);
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
return lines.join('\n');
|
|
199
227
|
});
|
|
200
228
|
// โโ IP ๆฅ่ฏข โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
201
229
|
const ipTool = new ZhinTool('ip_query')
|
|
@@ -213,12 +241,12 @@ const ipTool = new ZhinTool('ip_query')
|
|
|
213
241
|
const data = await fetchApi('/ip', params);
|
|
214
242
|
const lines = ['๐ IP ๆฅ่ฏข', '', `IP: ${data.ip || args.ip || 'ๅฝๅ IP'}`];
|
|
215
243
|
if (data.country || data.region || data.city) {
|
|
216
|
-
lines.push(`ไฝ็ฝฎ: ${data.country
|
|
244
|
+
lines.push(`ไฝ็ฝฎ: ${[data.country, data.region, data.city].filter(Boolean).join(' ')}`);
|
|
217
245
|
}
|
|
218
|
-
if (data.isp)
|
|
219
|
-
lines.push(`่ฟ่ฅๅ: ${data.isp}`);
|
|
220
246
|
if (data.location)
|
|
221
247
|
lines.push(`ไฝ็ฝฎ: ${data.location}`);
|
|
248
|
+
if (data.isp)
|
|
249
|
+
lines.push(`่ฟ่ฅๅ: ${data.isp}`);
|
|
222
250
|
return lines.join('\n');
|
|
223
251
|
});
|
|
224
252
|
// โโ Bing ๆฏๆฅๅพ็ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
@@ -234,10 +262,15 @@ const bingTool = new ZhinTool('bing_image')
|
|
|
234
262
|
const lines = ['๐ผ๏ธ Bing ๆฏๆฅๅฃ็บธ', ''];
|
|
235
263
|
if (data.title)
|
|
236
264
|
lines.push(`๐ ${data.title}`);
|
|
265
|
+
if (data.headline)
|
|
266
|
+
lines.push(`๐ก ${data.headline}`);
|
|
237
267
|
if (data.copyright)
|
|
238
268
|
lines.push(`๐ ${data.copyright}`);
|
|
239
|
-
if (data.
|
|
240
|
-
lines.push('', data.
|
|
269
|
+
if (data.description)
|
|
270
|
+
lines.push('', data.description);
|
|
271
|
+
const imgUrl = data.cover || data.cover_4k || data.url || data.image;
|
|
272
|
+
if (imgUrl)
|
|
273
|
+
lines.push('', imgUrl);
|
|
241
274
|
return lines.join('\n');
|
|
242
275
|
});
|
|
243
276
|
// โโ ้ไปท โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
@@ -251,22 +284,21 @@ const goldPriceTool = new ZhinTool('gold_price')
|
|
|
251
284
|
.execute(async () => {
|
|
252
285
|
const data = await fetchApi('/gold-price');
|
|
253
286
|
const lines = ['๐ฐ ไปๆฅ้ไปท', ''];
|
|
254
|
-
if (
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
287
|
+
if (data.date)
|
|
288
|
+
lines.push(`๐
${data.date}`);
|
|
289
|
+
const metals = data.metals || (Array.isArray(data) ? data : []);
|
|
290
|
+
if (metals.length > 0) {
|
|
291
|
+
lines.push('');
|
|
292
|
+
metals.forEach((item) => {
|
|
293
|
+
const name = item.name || '้ป้';
|
|
294
|
+
const price = item.today_price || item.sell_price || item.price || 'N/A';
|
|
295
|
+
const unit = item.unit || 'ๅ
/ๅ
';
|
|
296
|
+
if (price !== 'N/A')
|
|
297
|
+
lines.push(`${name}: ยฅ${price} ${unit}`);
|
|
261
298
|
});
|
|
262
299
|
}
|
|
263
300
|
else if (data.price) {
|
|
264
301
|
lines.push(`ๅฝๅ้ไปท: ยฅ${data.price}/ๅ
`);
|
|
265
|
-
if (data.change)
|
|
266
|
-
lines.push(`ๆถจ่ท: ${data.change}`);
|
|
267
|
-
}
|
|
268
|
-
else {
|
|
269
|
-
lines.push(JSON.stringify(data));
|
|
270
302
|
}
|
|
271
303
|
return lines.join('\n');
|
|
272
304
|
});
|
|
@@ -285,25 +317,15 @@ const fuelPriceTool = new ZhinTool('fuel_price')
|
|
|
285
317
|
: undefined;
|
|
286
318
|
const data = await fetchApi('/fuel-price', params);
|
|
287
319
|
const lines = ['โฝ ไปๆฅๆฒนไปท', ''];
|
|
288
|
-
if (data.
|
|
289
|
-
lines.push(`๐ ${data.
|
|
290
|
-
if (data
|
|
291
|
-
|
|
292
|
-
lines.push(
|
|
293
|
-
|
|
294
|
-
lines.push(`95ๅทๆฑฝๆฒน: ยฅ${data['95']}/ๅ`);
|
|
295
|
-
if (data['98'])
|
|
296
|
-
lines.push(`98ๅทๆฑฝๆฒน: ยฅ${data['98']}/ๅ`);
|
|
297
|
-
if (data['0'])
|
|
298
|
-
lines.push(`0ๅทๆดๆฒน: ยฅ${data['0']}/ๅ`);
|
|
299
|
-
}
|
|
300
|
-
else if (Array.isArray(data)) {
|
|
301
|
-
data
|
|
302
|
-
.slice(0, 5)
|
|
303
|
-
.forEach((item) => lines.push(`${item.name || item.province}: 92ๅทยฅ${item['92'] || item.price92}`));
|
|
320
|
+
if (data.region)
|
|
321
|
+
lines.push(`๐ ${data.region}`);
|
|
322
|
+
if (data.items && Array.isArray(data.items)) {
|
|
323
|
+
data.items.forEach((item) => {
|
|
324
|
+
lines.push(`${item.name}: ${item.price_desc || `ยฅ${item.price}/ๅ`}`);
|
|
325
|
+
});
|
|
304
326
|
}
|
|
305
|
-
|
|
306
|
-
lines.push(
|
|
327
|
+
if (data.trend) {
|
|
328
|
+
lines.push('', `๐ ${data.trend.description || ''}`);
|
|
307
329
|
}
|
|
308
330
|
return lines.join('\n');
|
|
309
331
|
});
|
|
@@ -325,17 +347,20 @@ const exchangeRateTool = new ZhinTool('exchange_rate')
|
|
|
325
347
|
params.to = args.to.toUpperCase();
|
|
326
348
|
const data = await fetchApi('/exchange-rate', Object.keys(params).length ? params : undefined);
|
|
327
349
|
const lines = ['๐ฑ ๆฑ็ๆฅ่ฏข', ''];
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
});
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
350
|
+
const base = data.base_code || args.from || 'CNY';
|
|
351
|
+
lines.push(`ๅบๅ่ดงๅธ: ${base}`);
|
|
352
|
+
if (data.updated)
|
|
353
|
+
lines.push(`ๆดๆฐๆถ้ด: ${data.updated}`);
|
|
354
|
+
lines.push('');
|
|
355
|
+
const rates = data.rates || (Array.isArray(data) ? data : []);
|
|
356
|
+
const targetCurrencies = args.to
|
|
357
|
+
? [args.to.toUpperCase()]
|
|
358
|
+
: ['USD', 'EUR', 'JPY', 'GBP', 'HKD', 'KRW', 'AUD', 'CAD', 'SGD', 'CHF'];
|
|
359
|
+
rates.forEach((item) => {
|
|
360
|
+
if (targetCurrencies.includes(item.currency) && item.currency !== base) {
|
|
361
|
+
lines.push(`${base} โ ${item.currency}: ${item.rate}`);
|
|
362
|
+
}
|
|
363
|
+
});
|
|
339
364
|
return lines.join('\n');
|
|
340
365
|
});
|
|
341
366
|
// โโ ็ฟป่ฏ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
@@ -353,12 +378,19 @@ const translateTool = new ZhinTool('translate_60s')
|
|
|
353
378
|
if (args.to)
|
|
354
379
|
params.to = args.to;
|
|
355
380
|
const data = await fetchApi('/fanyi', params);
|
|
356
|
-
|
|
381
|
+
const srcText = data.source?.text || args.text;
|
|
382
|
+
const srcLang = data.source?.type_desc || data.source?.type || '';
|
|
383
|
+
const tgtText = data.target?.text || data.result || data.translation || (typeof data === 'string' ? data : '');
|
|
384
|
+
const tgtLang = data.target?.type_desc || data.target?.type || '';
|
|
385
|
+
const lines = [
|
|
357
386
|
'๐ ็ฟป่ฏ็ปๆ',
|
|
358
387
|
'',
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
]
|
|
388
|
+
`ๅๆ${srcLang ? ` (${srcLang})` : ''}: ${srcText}`,
|
|
389
|
+
`่ฏๆ${tgtLang ? ` (${tgtLang})` : ''}: ${tgtText}`,
|
|
390
|
+
];
|
|
391
|
+
if (data.target?.pronounce)
|
|
392
|
+
lines.push(`ๅ้ณ: ${data.target.pronounce}`);
|
|
393
|
+
return lines.join('\n');
|
|
362
394
|
});
|
|
363
395
|
// โโ ๅๅฒไธ็ไปๅคฉ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
364
396
|
const historyTodayTool = new ZhinTool('history_today')
|
|
@@ -370,21 +402,15 @@ const historyTodayTool = new ZhinTool('history_today')
|
|
|
370
402
|
.examples('/history')
|
|
371
403
|
.execute(async () => {
|
|
372
404
|
const data = await fetchApi('/today-in-history');
|
|
373
|
-
const
|
|
374
|
-
const lines = [
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
lines.push(`${i + 1}. ${year ? `[${year}] ` : ''}${title}`);
|
|
383
|
-
});
|
|
384
|
-
}
|
|
385
|
-
else {
|
|
386
|
-
lines.push(JSON.stringify(data));
|
|
387
|
-
}
|
|
405
|
+
const dateStr = data.date || `${data.month || ''}ๆ${data.day || ''}ๆฅ`;
|
|
406
|
+
const lines = [`๐
ๅๅฒไธ็ไปๅคฉ (${dateStr})`, ''];
|
|
407
|
+
const items = data.items || (Array.isArray(data) ? data : []);
|
|
408
|
+
items.slice(0, 10).forEach((item, i) => {
|
|
409
|
+
const year = item.year || '';
|
|
410
|
+
const title = item.title || item.event || item.content || item;
|
|
411
|
+
const typeIcon = item.event_type === 'birth' ? '๐ถ' : item.event_type === 'death' ? '๐๏ธ' : '๐';
|
|
412
|
+
lines.push(`${typeIcon} ${i + 1}. ${year ? `[${year}] ` : ''}${title}`);
|
|
413
|
+
});
|
|
388
414
|
return lines.join('\n');
|
|
389
415
|
});
|
|
390
416
|
// โโ KFC ็ฏ็ๆๆๅ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
@@ -397,7 +423,7 @@ const kfcTool = new ZhinTool('kfc')
|
|
|
397
423
|
.examples('/kfc')
|
|
398
424
|
.execute(async () => {
|
|
399
425
|
const data = await fetchApi('/kfc');
|
|
400
|
-
return `๐ ็ฏ็ๆๆๅ\n\n${data.content || data.text || data}`;
|
|
426
|
+
return `๐ ็ฏ็ๆๆๅ\n\n${data.kfc || data.content || data.text || (typeof data === 'string' ? data : '')}`;
|
|
401
427
|
});
|
|
402
428
|
// โโ ๆฎตๅญ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
403
429
|
const duanziTool = new ZhinTool('duanzi')
|
|
@@ -409,7 +435,7 @@ const duanziTool = new ZhinTool('duanzi')
|
|
|
409
435
|
.examples('/duanzi')
|
|
410
436
|
.execute(async () => {
|
|
411
437
|
const data = await fetchApi('/duanzi');
|
|
412
|
-
return `๐ ๆฎตๅญ\n\n${data.content || data.text || data}`;
|
|
438
|
+
return `๐ ๆฎตๅญ\n\n${data.duanzi || data.content || data.text || (typeof data === 'string' ? data : '')}`;
|
|
413
439
|
});
|
|
414
440
|
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
415
441
|
// ๆณจๅๆๆๅทฅๅ
ท
|
|
@@ -434,15 +460,5 @@ const allTools = [
|
|
|
434
460
|
duanziTool,
|
|
435
461
|
];
|
|
436
462
|
allTools.forEach((tool) => plugin.addTool(tool.toTool()));
|
|
437
|
-
|
|
438
|
-
plugin.declareSkill({
|
|
439
|
-
description: '60s API ่ๅๆๅก๏ผๆไพๆฐ้ปใๅคฉๆฐใ็ญๆใ้ไปทใๆฒนไปทใๆฑ็ใ็ฟป่ฏใไธ่จใๆธ้ฑผๆฅๅ็ญ 17 ็งๅฎ็จๆฅ่ฏข่ฝๅ',
|
|
440
|
-
tags: ['ๆฐ้ป', '่ต่ฎฏ', 'ๅคฉๆฐ', '็ญๆ', '็ๆดป', '้่', 'ๅจฑไน', 'ๅทฅๅ
ท'],
|
|
441
|
-
keywords: [
|
|
442
|
-
'60s', 'ๆฐ้ป', 'ๅคฉๆฐ', 'ๅพฎๅ', '็ฅไน', 'ๆ้ณ', 'ๅคดๆก',
|
|
443
|
-
'ไธ่จ', 'ๆธ้ฑผ', '้ไปท', 'ๆฒนไปท', 'ๆฑ็', '็ฟป่ฏ', 'ๅๅฒ',
|
|
444
|
-
'kfc', 'ๆฎตๅญ', 'ๅฃ็บธ', 'bing', 'ip',
|
|
445
|
-
],
|
|
446
|
-
});
|
|
447
|
-
logger.info(`[60s] ๅทฒๆณจๅ ${allTools.length} ไธชๅทฅๅ
ท`);
|
|
463
|
+
logger.debug(`[60s] ๅทฒๆณจๅ ${allTools.length} ไธชๅทฅๅ
ท`);
|
|
448
464
|
//# sourceMappingURL=index.js.map
|
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/plugin-60s",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.4",
|
|
4
4
|
"description": "60s API aggregation plugin for Zhin.js โ news, weather, hot searches, utilities and more",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -14,7 +14,11 @@
|
|
|
14
14
|
"./package.json": "./package.json"
|
|
15
15
|
},
|
|
16
16
|
"files": [
|
|
17
|
+
"src",
|
|
17
18
|
"lib",
|
|
19
|
+
"client",
|
|
20
|
+
"dist",
|
|
21
|
+
"skills",
|
|
18
22
|
"README.md"
|
|
19
23
|
],
|
|
20
24
|
"keywords": [
|
|
@@ -41,10 +45,10 @@
|
|
|
41
45
|
"dependencies": {},
|
|
42
46
|
"devDependencies": {
|
|
43
47
|
"typescript": "^5.3.3",
|
|
44
|
-
"zhin.js": "1.0.
|
|
48
|
+
"zhin.js": "1.0.52"
|
|
45
49
|
},
|
|
46
50
|
"peerDependencies": {
|
|
47
|
-
"zhin.js": ">=1.0.
|
|
51
|
+
"zhin.js": ">=1.0.52"
|
|
48
52
|
},
|
|
49
53
|
"repository": {
|
|
50
54
|
"type": "git",
|
|
@@ -57,6 +61,6 @@
|
|
|
57
61
|
},
|
|
58
62
|
"scripts": {
|
|
59
63
|
"build": "tsc --build",
|
|
60
|
-
"clean": "
|
|
64
|
+
"clean": "rimraf lib"
|
|
61
65
|
}
|
|
62
66
|
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "60s"
|
|
3
|
+
description: 60s API ่ๅๆๅก๏ผๆไพๆฐ้ปใๅคฉๆฐใ็ญๆใ้ไปทใๆฒนไปทใๆฑ็ใ็ฟป่ฏใไธ่จใๆธ้ฑผๆฅๅ็ญๅค็งๅฎ็จๆฅ่ฏข่ฝๅใ
|
|
4
|
+
keywords:
|
|
5
|
+
- 60s
|
|
6
|
+
- ๆฐ้ป
|
|
7
|
+
- ๅคฉๆฐ
|
|
8
|
+
- ๅพฎๅ
|
|
9
|
+
- ็ฅไน
|
|
10
|
+
- ๆ้ณ
|
|
11
|
+
- ๅคดๆก
|
|
12
|
+
- ไธ่จ
|
|
13
|
+
- ๆธ้ฑผ
|
|
14
|
+
- ้ไปท
|
|
15
|
+
- ๆฒนไปท
|
|
16
|
+
- ๆฑ็
|
|
17
|
+
- ็ฟป่ฏ
|
|
18
|
+
- ๅๅฒ
|
|
19
|
+
- kfc
|
|
20
|
+
- ๆฎตๅญ
|
|
21
|
+
- ๅฃ็บธ
|
|
22
|
+
- bing
|
|
23
|
+
- ip
|
|
24
|
+
tags:
|
|
25
|
+
- ๆฐ้ป
|
|
26
|
+
- ่ต่ฎฏ
|
|
27
|
+
- ๅคฉๆฐ
|
|
28
|
+
- ็ญๆ
|
|
29
|
+
- ็ๆดป
|
|
30
|
+
- ้่
|
|
31
|
+
- ๅจฑไน
|
|
32
|
+
- ๅทฅๅ
ท
|
|
33
|
+
tools: []
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## ๆง่ก่งๅ
|
|
37
|
+
|
|
38
|
+
- ๆ็จๆทๆๅพ้ๆฉๅฏนๅบ `*_60s` ๆๆไปถๆณจๅๅ็งฐ็ๅทฅๅ
ทๅฎๆๆฅ่ฏขใ
|
package/src/index.ts
ADDED
|
@@ -0,0 +1,487 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @zhin.js/plugin-60s
|
|
3
|
+
*
|
|
4
|
+
* 60s API ่ๅๆไปถ โโ ๅบไบ https://github.com/vikiboss/60s
|
|
5
|
+
*
|
|
6
|
+
* ๆไพๅค็งๅฎ็จ API ๅ่ฝ๏ผๆฏไธชๅ่ฝๅๆถๆณจๅไธบ๏ผ
|
|
7
|
+
* - ่ๅคฉๅฝไปค๏ผ/60s, /ๅคฉๆฐ ๅไบฌ, /ๅพฎๅ โฆ๏ผ
|
|
8
|
+
* - AI ๅทฅๅ
ท๏ผAgent ๅฏ้่ฟๅ
ณ้ฎ่ฏ่ชๅจๅน้
ๅนถ่ฐ็จ๏ผ
|
|
9
|
+
*
|
|
10
|
+
* ๅ่ฝๅ่กจ๏ผ
|
|
11
|
+
* 60sๆฐ้ป ยท ๅคฉๆฐ ยท ๅพฎๅ็ญๆ ยท ็ฅไน็ญๆฆ ยท ๆ้ณ็ญๆ ยท ๅคดๆก็ญๆ
|
|
12
|
+
* ไธ่จ ยท ๆธ้ฑผๆฅๅ ยท IPๆฅ่ฏข ยท Bingๅฃ็บธ ยท ้ไปท ยท ๆฒนไปท
|
|
13
|
+
* ๆฑ็ ยท ็ฟป่ฏ ยท ๅๅฒไธ็ไปๅคฉ ยท KFCๆๆก ยท ๆฎตๅญ
|
|
14
|
+
*
|
|
15
|
+
* ้
็ฝฎๆนๅผ๏ผzhin.config.yml๏ผ๏ผ
|
|
16
|
+
* ```yaml
|
|
17
|
+
* plugins:
|
|
18
|
+
* 60s:
|
|
19
|
+
* apiBase: https://60s.viki.moe
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
import { usePlugin, ZhinTool } from 'zhin.js';
|
|
23
|
+
|
|
24
|
+
const plugin = usePlugin();
|
|
25
|
+
const { logger, root } = plugin;
|
|
26
|
+
|
|
27
|
+
// โโโ ้
็ฝฎ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
28
|
+
|
|
29
|
+
interface Config {
|
|
30
|
+
apiBase?: string;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
const configService = root.inject('config');
|
|
34
|
+
const appConfig = configService?.get<{ '60s'?: Config }>('zhin.config.yml') || {};
|
|
35
|
+
const config: Config = {
|
|
36
|
+
apiBase: 'https://60s.viki.moe',
|
|
37
|
+
...appConfig['60s'],
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const API_BASE = config.apiBase || 'https://60s.viki.moe';
|
|
41
|
+
|
|
42
|
+
logger.debug(`[60s] API ๅฐๅ: ${API_BASE}`);
|
|
43
|
+
|
|
44
|
+
// โโโ ้็จ่ฏทๆฑ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
45
|
+
|
|
46
|
+
async function fetchApi<T = any>(
|
|
47
|
+
endpoint: string,
|
|
48
|
+
params?: Record<string, string>,
|
|
49
|
+
): Promise<T> {
|
|
50
|
+
const url = new URL(`${API_BASE}/v2${endpoint}`);
|
|
51
|
+
if (params) {
|
|
52
|
+
Object.entries(params).forEach(([k, v]) => url.searchParams.set(k, v));
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
logger.debug(`[60s] ่ฏทๆฑ: ${url.toString()}`);
|
|
56
|
+
|
|
57
|
+
const res = await fetch(url.toString());
|
|
58
|
+
const data = (await res.json()) as any;
|
|
59
|
+
|
|
60
|
+
if (data.error) throw new Error(data.error);
|
|
61
|
+
if (data.code !== undefined && data.code !== 200 && data.code !== 0) {
|
|
62
|
+
throw new Error(data.message || data.msg || `API ้่ฏฏ: ${data.code}`);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return data.data ?? data;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// โโโ ๅทฅๅ
ทๅฝๆฐ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
69
|
+
|
|
70
|
+
function formatList(items: any[], limit = 10): string {
|
|
71
|
+
return items
|
|
72
|
+
.slice(0, limit)
|
|
73
|
+
.map((item, i) => {
|
|
74
|
+
const title = item.title || item.name || item.word || item;
|
|
75
|
+
const hot = item.hot_value || item.hot;
|
|
76
|
+
const hotStr = hot ? ` ๐ฅ${hot}` : '';
|
|
77
|
+
return `${i + 1}. ${title}${hotStr}`;
|
|
78
|
+
})
|
|
79
|
+
.join('\n');
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
83
|
+
// ๅทฅๅ
ทๅฎไน๏ผZhinTool ้พๅผ้ฃๆ ผ โ ๅๆถๆณจๅๅฝไปค + AI ๅทฅๅ
ท๏ผ
|
|
84
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
85
|
+
|
|
86
|
+
// โโ 60 ็งๆฐ้ป โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
87
|
+
const newsTool = new ZhinTool('60s_news')
|
|
88
|
+
.desc('่ทๅๆฏๆฅ60็งๆฐ้ป๏ผๅฟซ้ไบ่งฃไปๆฅ่ฆ้ป')
|
|
89
|
+
.tag('ๆฐ้ป', '่ต่ฎฏ', '60s')
|
|
90
|
+
.keyword('60s', 'ๆฐ้ป', 'ไปๆฅๆฐ้ป', '60็ง', 'ๆฏๆฅๆฐ้ป', '่ฏปๆไธ็')
|
|
91
|
+
.alias('ๆฐ้ป', 'ไปๆฅๆฐ้ป', '60็ง')
|
|
92
|
+
.usage('่ทๅไปๆฅ60็งๆฐ้ป')
|
|
93
|
+
.examples('/60s')
|
|
94
|
+
.execute(async () => {
|
|
95
|
+
const data = await fetchApi<any>('/60s');
|
|
96
|
+
const lines = [`๐ฐ ไปๆฅ60็งๆฐ้ป (${data.date || ''})`, ''];
|
|
97
|
+
if (data.news && Array.isArray(data.news)) {
|
|
98
|
+
lines.push(...data.news.map((n: string, i: number) => `${i + 1}. ${n}`));
|
|
99
|
+
}
|
|
100
|
+
if (data.tip) lines.push('', `๐ก ${data.tip}`);
|
|
101
|
+
return lines.join('\n');
|
|
102
|
+
});
|
|
103
|
+
|
|
104
|
+
// โโ ๅคฉๆฐ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
105
|
+
const weatherTool = new ZhinTool('weather')
|
|
106
|
+
.desc('ๆฅ่ฏขๆๅฎๅๅธ็ๅฝๅๅคฉๆฐไฟกๆฏ')
|
|
107
|
+
.tag('ๅคฉๆฐ', '็ๆดป', 'ๆฅ่ฏข')
|
|
108
|
+
.keyword('ๅคฉๆฐ', 'ๆฐๆธฉ', 'ๆธฉๅบฆ', 'ไธ้จ', 'ๆดๅคฉ', '้ดๅคฉ', 'weather')
|
|
109
|
+
.alias('ๅคฉๆฐ', 'tq')
|
|
110
|
+
.usage('ๆฅ่ฏขๅๅธๅคฉๆฐ')
|
|
111
|
+
.examples('/weather ๆ้ฝ', '/ๅคฉๆฐ ๅไบฌ')
|
|
112
|
+
.param('city', { type: 'string', description: 'ๅๅธๅ็งฐ๏ผๅฆ"ๆ้ฝ"ใ"ๅไบฌ"' }, true)
|
|
113
|
+
.execute(async (args) => {
|
|
114
|
+
const data = await fetchApi<any>('/weather', { city: args.city });
|
|
115
|
+
const w = data.weather;
|
|
116
|
+
const aq = data.air_quality;
|
|
117
|
+
const loc = data.location;
|
|
118
|
+
const cityName = loc?.city || loc?.name || args.city;
|
|
119
|
+
const lines = [
|
|
120
|
+
`๐ค๏ธ ${cityName} ๅคฉๆฐ`,
|
|
121
|
+
'',
|
|
122
|
+
`๐ก๏ธ ๆธฉๅบฆ: ${w.temperature}ยฐC`,
|
|
123
|
+
`โ๏ธ ๅคฉๆฐ: ${w.condition}`,
|
|
124
|
+
`๐ง ๆนฟๅบฆ: ${w.humidity}%`,
|
|
125
|
+
`๐จ ้ฃ: ${w.wind_direction} ${w.wind_power}`,
|
|
126
|
+
];
|
|
127
|
+
if (aq) {
|
|
128
|
+
const quality = aq.quality || '';
|
|
129
|
+
lines.push(`๐ฌ๏ธ ็ฉบๆฐ: ${quality}${aq.aqi ? ` (AQI ${aq.aqi})` : ''}`);
|
|
130
|
+
}
|
|
131
|
+
return lines.join('\n');
|
|
132
|
+
});
|
|
133
|
+
|
|
134
|
+
// โโ ๅพฎๅ็ญๆ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
135
|
+
const weiboTool = new ZhinTool('weibo_hot')
|
|
136
|
+
.desc('่ทๅๅพฎๅ็ญๆๆฆ')
|
|
137
|
+
.tag('็ญๆ', '็คพไบค', 'ๅพฎๅ')
|
|
138
|
+
.keyword('ๅพฎๅ', '็ญๆ', 'weibo', 'wb')
|
|
139
|
+
.alias('ๅพฎๅ็ญๆ', 'wb')
|
|
140
|
+
.usage('่ทๅๅพฎๅ็ญๆ')
|
|
141
|
+
.examples('/weibo', '/weibo 20')
|
|
142
|
+
.param('limit', { type: 'number', description: '่ฟๅๆกๆฐ๏ผ้ป่ฎค10ๆก' })
|
|
143
|
+
.execute(async (args) => {
|
|
144
|
+
const data = await fetchApi<any[]>('/weibo');
|
|
145
|
+
return ['๐ฅ ๅพฎๅ็ญๆ', '', formatList(data, args.limit || 10)].join('\n');
|
|
146
|
+
});
|
|
147
|
+
|
|
148
|
+
// โโ ็ฅไน็ญๆฆ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
149
|
+
const zhihuTool = new ZhinTool('zhihu_hot')
|
|
150
|
+
.desc('่ทๅ็ฅไน็ญๆฆ')
|
|
151
|
+
.tag('็ญๆ', '็คพไบค', '็ฅไน')
|
|
152
|
+
.keyword('็ฅไน', '็ญๆฆ', 'zhihu', 'zh')
|
|
153
|
+
.alias('็ฅไน็ญๆฆ', 'zh')
|
|
154
|
+
.usage('่ทๅ็ฅไน็ญๆฆ')
|
|
155
|
+
.examples('/zhihu', '/zhihu 20')
|
|
156
|
+
.param('limit', { type: 'number', description: '่ฟๅๆกๆฐ๏ผ้ป่ฎค10ๆก' })
|
|
157
|
+
.execute(async (args) => {
|
|
158
|
+
const data = await fetchApi<any[]>('/zhihu');
|
|
159
|
+
return ['๐ฅ ็ฅไน็ญๆฆ', '', formatList(data, args.limit || 10)].join('\n');
|
|
160
|
+
});
|
|
161
|
+
|
|
162
|
+
// โโ ๆ้ณ็ญๆ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
163
|
+
const douyinTool = new ZhinTool('douyin_hot')
|
|
164
|
+
.desc('่ทๅๆ้ณ็ญๆๆฆ')
|
|
165
|
+
.tag('็ญๆ', '็ญ่ง้ข', 'ๆ้ณ')
|
|
166
|
+
.keyword('ๆ้ณ', '็ญๆ', 'douyin', 'dy')
|
|
167
|
+
.alias('ๆ้ณ็ญๆ', 'dy')
|
|
168
|
+
.usage('่ทๅๆ้ณ็ญๆ')
|
|
169
|
+
.examples('/douyin', '/douyin 20')
|
|
170
|
+
.param('limit', { type: 'number', description: '่ฟๅๆกๆฐ๏ผ้ป่ฎค10ๆก' })
|
|
171
|
+
.execute(async (args) => {
|
|
172
|
+
const data = await fetchApi<any[]>('/douyin');
|
|
173
|
+
return ['๐ฅ ๆ้ณ็ญๆ', '', formatList(data, args.limit || 10)].join('\n');
|
|
174
|
+
});
|
|
175
|
+
|
|
176
|
+
// โโ ๅคดๆก็ญๆ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
177
|
+
const toutiaoTool = new ZhinTool('toutiao_hot')
|
|
178
|
+
.desc('่ทๅไปๆฅๅคดๆก็ญๆๆฆ')
|
|
179
|
+
.tag('็ญๆ', '่ต่ฎฏ', 'ๅคดๆก')
|
|
180
|
+
.keyword('ๅคดๆก', 'ไปๆฅๅคดๆก', '็ญๆ', 'toutiao', 'tt')
|
|
181
|
+
.alias('ๅคดๆก็ญๆ', 'tt')
|
|
182
|
+
.usage('่ทๅๅคดๆก็ญๆ')
|
|
183
|
+
.examples('/toutiao', '/tt 20')
|
|
184
|
+
.param('limit', { type: 'number', description: '่ฟๅๆกๆฐ๏ผ้ป่ฎค10ๆก' })
|
|
185
|
+
.execute(async (args) => {
|
|
186
|
+
const data = await fetchApi<any[]>('/toutiao');
|
|
187
|
+
return ['๐ฅ ๅคดๆก็ญๆ', '', formatList(data, args.limit || 10)].join('\n');
|
|
188
|
+
});
|
|
189
|
+
|
|
190
|
+
// โโ ไธ่จ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
191
|
+
const hitokotoTool = new ZhinTool('hitokoto')
|
|
192
|
+
.desc('่ทๅไธ่จ/ๆฏๆฅไธๅฅ๏ผ้ๆบ่ฟๅไธๆก่ฏญๅฅ')
|
|
193
|
+
.tag('่ฏญๅฝ', 'ๆๅญฆ', '้ๆบ')
|
|
194
|
+
.keyword('ไธ่จ', 'ๆฏๆฅไธๅฅ', '่ฏญๅฝ', 'ๅ่จ', 'hitokoto')
|
|
195
|
+
.alias('ไธ่จ', 'ๆฏๆฅไธๅฅ', 'yy')
|
|
196
|
+
.usage('่ทๅ้ๆบไธ่จ')
|
|
197
|
+
.examples('/hitokoto', '/ไธ่จ i')
|
|
198
|
+
.param('type', {
|
|
199
|
+
type: 'string',
|
|
200
|
+
description:
|
|
201
|
+
'็ฑปๅ๏ผa=ๅจ็ป, b=ๆผซ็ป, c=ๆธธๆ, d=ๆๅญฆ, e=ๅๅ, f=็ฝ็ป, g=ๅ
ถไป, h=ๅฝฑ่ง, i=่ฏ่ฏ, j=็ฝๆไบ, k=ๅฒๅญฆ, l=ๆๆบ็ต',
|
|
202
|
+
})
|
|
203
|
+
.execute(async (args) => {
|
|
204
|
+
const params: Record<string, string> | undefined = args.type
|
|
205
|
+
? { c: args.type }
|
|
206
|
+
: undefined;
|
|
207
|
+
const data = await fetchApi<any>('/hitokoto', params);
|
|
208
|
+
const text = data.hitokoto || data.content || (typeof data === 'string' ? data : '');
|
|
209
|
+
const lines = ['๐ฌ ไธ่จ', '', `ใ${text}ใ`];
|
|
210
|
+
if (data.from || data.source || data.from_who || data.author) {
|
|
211
|
+
const author = data.from_who || data.author || '';
|
|
212
|
+
const source = data.from || data.source || '';
|
|
213
|
+
lines.push(`โโ${author}${source ? `ใ${source}ใ` : ''}`);
|
|
214
|
+
}
|
|
215
|
+
return lines.join('\n');
|
|
216
|
+
});
|
|
217
|
+
|
|
218
|
+
// โโ ๆธ้ฑผๆฅๅ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
219
|
+
const moyuTool = new ZhinTool('moyu')
|
|
220
|
+
.desc('่ทๅๆธ้ฑผๆฅๅ๏ผๆฅ็ไปๅคฉ้ไธ้ๅๆธ้ฑผ')
|
|
221
|
+
.tag('็ๆดป', 'ๆธ้ฑผ', 'ๆฅๅ')
|
|
222
|
+
.keyword('ๆธ้ฑผ', 'ๆธ้ฑผๆฅๅ', 'moyu')
|
|
223
|
+
.alias('ๆธ้ฑผ', 'ๆธ้ฑผๆฅๅ')
|
|
224
|
+
.usage('่ทๅๆธ้ฑผๆฅๅ')
|
|
225
|
+
.examples('/moyu')
|
|
226
|
+
.execute(async () => {
|
|
227
|
+
const data = await fetchApi<any>('/moyu');
|
|
228
|
+
if (typeof data === 'string') return `๐ ๆธ้ฑผๆฅๅ\n\n${data}`;
|
|
229
|
+
const lines = ['๐ ๆธ้ฑผๆฅๅ', ''];
|
|
230
|
+
if (data.date?.gregorian) lines.push(`๐
${data.date.gregorian} ${data.date.weekday || ''}`);
|
|
231
|
+
if (data.date?.lunar) {
|
|
232
|
+
const l = data.date.lunar;
|
|
233
|
+
lines.push(`๐ ๅๅ${l.monthCN || ''}${l.dayCN || ''} ${l.yearGanZhi || ''}ๅนด`);
|
|
234
|
+
}
|
|
235
|
+
if (data.today) {
|
|
236
|
+
const t = data.today;
|
|
237
|
+
if (t.holidayName) lines.push(`๐ ${t.holidayName}`);
|
|
238
|
+
if (t.solarTerm) lines.push(`๐ฟ ${t.solarTerm}`);
|
|
239
|
+
lines.push(t.isWorkday ? '๐ผ ไปๅคฉๆฏๅทฅไฝๆฅ' : '๐ฎ ไปๅคฉไธไธ็ญ');
|
|
240
|
+
}
|
|
241
|
+
if (data.festivals && Array.isArray(data.festivals)) {
|
|
242
|
+
data.festivals.forEach((f: any) => lines.push(`๐ ${f.name || f}`));
|
|
243
|
+
}
|
|
244
|
+
if (data.countdown && Array.isArray(data.countdown)) {
|
|
245
|
+
lines.push('');
|
|
246
|
+
data.countdown.forEach((c: any) => {
|
|
247
|
+
if (c.name && c.days !== undefined) lines.push(`โณ ่ท ${c.name} ่ฟๆ ${c.days} ๅคฉ`);
|
|
248
|
+
});
|
|
249
|
+
}
|
|
250
|
+
return lines.join('\n');
|
|
251
|
+
});
|
|
252
|
+
|
|
253
|
+
// โโ IP ๆฅ่ฏข โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
254
|
+
const ipTool = new ZhinTool('ip_query')
|
|
255
|
+
.desc('ๆฅ่ฏข IP ๅฐๅ็ๅฐ็ไฝ็ฝฎไฟกๆฏ')
|
|
256
|
+
.tag('็ฝ็ป', 'ๆฅ่ฏข', 'IP')
|
|
257
|
+
.keyword('ip', 'IP', 'IPๆฅ่ฏข', 'ipๆฅ่ฏข')
|
|
258
|
+
.alias('IPๆฅ่ฏข')
|
|
259
|
+
.usage('ๆฅ่ฏข IP ๅฐๅไฟกๆฏ')
|
|
260
|
+
.examples('/ip', '/ip 8.8.8.8')
|
|
261
|
+
.param('ip', { type: 'string', description: 'IP ๅฐๅ๏ผไธๅกซๅๆฅ่ฏขๅฝๅ IP' })
|
|
262
|
+
.execute(async (args) => {
|
|
263
|
+
const params: Record<string, string> | undefined = args.ip
|
|
264
|
+
? { ip: args.ip }
|
|
265
|
+
: undefined;
|
|
266
|
+
const data = await fetchApi<any>('/ip', params);
|
|
267
|
+
const lines = ['๐ IP ๆฅ่ฏข', '', `IP: ${data.ip || args.ip || 'ๅฝๅ IP'}`];
|
|
268
|
+
if (data.country || data.region || data.city) {
|
|
269
|
+
lines.push(`ไฝ็ฝฎ: ${[data.country, data.region, data.city].filter(Boolean).join(' ')}`);
|
|
270
|
+
}
|
|
271
|
+
if (data.location) lines.push(`ไฝ็ฝฎ: ${data.location}`);
|
|
272
|
+
if (data.isp) lines.push(`่ฟ่ฅๅ: ${data.isp}`);
|
|
273
|
+
return lines.join('\n');
|
|
274
|
+
});
|
|
275
|
+
|
|
276
|
+
// โโ Bing ๆฏๆฅๅพ็ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
277
|
+
const bingTool = new ZhinTool('bing_image')
|
|
278
|
+
.desc('่ทๅ Bing ๆฏๆฅๅฃ็บธๅพ็')
|
|
279
|
+
.tag('ๅพ็', 'ๅฃ็บธ', 'Bing')
|
|
280
|
+
.keyword('bing', 'ๅฟ
ๅบ', 'ๅฃ็บธ', 'ๆฏๆฅๅฃ็บธ')
|
|
281
|
+
.alias('ๅฟ
ๅบ', 'ๆฏๆฅๅฃ็บธ')
|
|
282
|
+
.usage('่ทๅ Bing ๆฏๆฅๅฃ็บธ')
|
|
283
|
+
.examples('/bing')
|
|
284
|
+
.execute(async () => {
|
|
285
|
+
const data = await fetchApi<any>('/bing');
|
|
286
|
+
const lines = ['๐ผ๏ธ Bing ๆฏๆฅๅฃ็บธ', ''];
|
|
287
|
+
if (data.title) lines.push(`๐ ${data.title}`);
|
|
288
|
+
if (data.headline) lines.push(`๐ก ${data.headline}`);
|
|
289
|
+
if (data.copyright) lines.push(`๐ ${data.copyright}`);
|
|
290
|
+
if (data.description) lines.push('', data.description);
|
|
291
|
+
const imgUrl = data.cover || data.cover_4k || data.url || data.image;
|
|
292
|
+
if (imgUrl) lines.push('', imgUrl);
|
|
293
|
+
return lines.join('\n');
|
|
294
|
+
});
|
|
295
|
+
|
|
296
|
+
// โโ ้ไปท โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
297
|
+
const goldPriceTool = new ZhinTool('gold_price')
|
|
298
|
+
.desc('ๆฅ่ฏขไปๆฅ้ป้ไปทๆ ผ')
|
|
299
|
+
.tag('้่', '้ป้', 'ไปทๆ ผ')
|
|
300
|
+
.keyword('้ไปท', '้ป้', '้ป้ไปทๆ ผ', 'gold')
|
|
301
|
+
.alias('้ไปท', '้ป้ไปทๆ ผ', 'jj')
|
|
302
|
+
.usage('ๆฅ่ฏขไปๆฅ้ไปท')
|
|
303
|
+
.examples('/gold', '/้ไปท')
|
|
304
|
+
.execute(async () => {
|
|
305
|
+
const data = await fetchApi<any>('/gold-price');
|
|
306
|
+
const lines = ['๐ฐ ไปๆฅ้ไปท', ''];
|
|
307
|
+
if (data.date) lines.push(`๐
${data.date}`);
|
|
308
|
+
const metals = data.metals || (Array.isArray(data) ? data : []);
|
|
309
|
+
if (metals.length > 0) {
|
|
310
|
+
lines.push('');
|
|
311
|
+
metals.forEach((item: any) => {
|
|
312
|
+
const name = item.name || '้ป้';
|
|
313
|
+
const price = item.today_price || item.sell_price || item.price || 'N/A';
|
|
314
|
+
const unit = item.unit || 'ๅ
/ๅ
';
|
|
315
|
+
if (price !== 'N/A') lines.push(`${name}: ยฅ${price} ${unit}`);
|
|
316
|
+
});
|
|
317
|
+
} else if (data.price) {
|
|
318
|
+
lines.push(`ๅฝๅ้ไปท: ยฅ${data.price}/ๅ
`);
|
|
319
|
+
}
|
|
320
|
+
return lines.join('\n');
|
|
321
|
+
});
|
|
322
|
+
|
|
323
|
+
// โโ ๆฒนไปท โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
324
|
+
const fuelPriceTool = new ZhinTool('fuel_price')
|
|
325
|
+
.desc('ๆฅ่ฏขไปๆฅๆฒนไปท')
|
|
326
|
+
.tag('็ๆดป', 'ๆฒนไปท', 'ไปทๆ ผ')
|
|
327
|
+
.keyword('ๆฒนไปท', 'ๆฑฝๆฒน', 'ๆดๆฒน', 'fuel')
|
|
328
|
+
.alias('ๆฒนไปท', 'yj')
|
|
329
|
+
.usage('ๆฅ่ฏขไปๆฅๆฒนไปท')
|
|
330
|
+
.examples('/fuel', '/ๆฒนไปท ๅๅท')
|
|
331
|
+
.param('province', { type: 'string', description: '็ไปฝๅ็งฐ๏ผๅฆ"ๅๅท"ใ"ๅไบฌ"' })
|
|
332
|
+
.execute(async (args) => {
|
|
333
|
+
const params: Record<string, string> | undefined = args.province
|
|
334
|
+
? { province: args.province }
|
|
335
|
+
: undefined;
|
|
336
|
+
const data = await fetchApi<any>('/fuel-price', params);
|
|
337
|
+
const lines = ['โฝ ไปๆฅๆฒนไปท', ''];
|
|
338
|
+
if (data.region) lines.push(`๐ ${data.region}`);
|
|
339
|
+
if (data.items && Array.isArray(data.items)) {
|
|
340
|
+
data.items.forEach((item: any) => {
|
|
341
|
+
lines.push(`${item.name}: ${item.price_desc || `ยฅ${item.price}/ๅ`}`);
|
|
342
|
+
});
|
|
343
|
+
}
|
|
344
|
+
if (data.trend) {
|
|
345
|
+
lines.push('', `๐ ${data.trend.description || ''}`);
|
|
346
|
+
}
|
|
347
|
+
return lines.join('\n');
|
|
348
|
+
});
|
|
349
|
+
|
|
350
|
+
// โโ ๆฑ็ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
351
|
+
const exchangeRateTool = new ZhinTool('exchange_rate')
|
|
352
|
+
.desc('ๆฅ่ฏข่ดงๅธๆฑ็')
|
|
353
|
+
.tag('้่', 'ๆฑ็', 'ๆฅ่ฏข')
|
|
354
|
+
.keyword('ๆฑ็', 'ๅ
ๆข', 'ๅคๆฑ', 'exchange', 'rate')
|
|
355
|
+
.alias('ๆฑ็', 'hl')
|
|
356
|
+
.usage('ๆฅ่ฏขๆฑ็')
|
|
357
|
+
.examples('/exchange USD CNY', '/ๆฑ็')
|
|
358
|
+
.param('from', { type: 'string', description: 'ๆบ่ดงๅธ๏ผๅฆ USD, EUR, JPY' })
|
|
359
|
+
.param('to', { type: 'string', description: '็ฎๆ ่ดงๅธ๏ผๅฆ CNY' })
|
|
360
|
+
.execute(async (args) => {
|
|
361
|
+
const params: Record<string, string> = {};
|
|
362
|
+
if (args.from) params.from = args.from.toUpperCase();
|
|
363
|
+
if (args.to) params.to = args.to.toUpperCase();
|
|
364
|
+
const data = await fetchApi<any>(
|
|
365
|
+
'/exchange-rate',
|
|
366
|
+
Object.keys(params).length ? params : undefined,
|
|
367
|
+
);
|
|
368
|
+
const lines = ['๐ฑ ๆฑ็ๆฅ่ฏข', ''];
|
|
369
|
+
const base = data.base_code || args.from || 'CNY';
|
|
370
|
+
lines.push(`ๅบๅ่ดงๅธ: ${base}`);
|
|
371
|
+
if (data.updated) lines.push(`ๆดๆฐๆถ้ด: ${data.updated}`);
|
|
372
|
+
lines.push('');
|
|
373
|
+
const rates = data.rates || (Array.isArray(data) ? data : []);
|
|
374
|
+
const targetCurrencies = args.to
|
|
375
|
+
? [args.to.toUpperCase()]
|
|
376
|
+
: ['USD', 'EUR', 'JPY', 'GBP', 'HKD', 'KRW', 'AUD', 'CAD', 'SGD', 'CHF'];
|
|
377
|
+
rates.forEach((item: any) => {
|
|
378
|
+
if (targetCurrencies.includes(item.currency) && item.currency !== base) {
|
|
379
|
+
lines.push(`${base} โ ${item.currency}: ${item.rate}`);
|
|
380
|
+
}
|
|
381
|
+
});
|
|
382
|
+
return lines.join('\n');
|
|
383
|
+
});
|
|
384
|
+
|
|
385
|
+
// โโ ็ฟป่ฏ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
386
|
+
const translateTool = new ZhinTool('translate_60s')
|
|
387
|
+
.desc('็ฟป่ฏๆๆฌ')
|
|
388
|
+
.tag('ๅทฅๅ
ท', '็ฟป่ฏ', '่ฏญ่จ')
|
|
389
|
+
.keyword('็ฟป่ฏ', '่ฑๆ', 'ไธญๆ', 'ๆฅๆ', 'translate', '่ฏ')
|
|
390
|
+
.alias('็ฟป่ฏ', 'fy')
|
|
391
|
+
.usage('็ฟป่ฏๆๆฌ')
|
|
392
|
+
.examples('/fanyi hello', '/็ฟป่ฏ ไฝ ๅฅฝ en')
|
|
393
|
+
.param('text', { type: 'string', description: '่ฆ็ฟป่ฏ็ๆๆฌ' }, true)
|
|
394
|
+
.param('to', { type: 'string', description: '็ฎๆ ่ฏญ่จ๏ผๅฆ en, zh, ja' })
|
|
395
|
+
.execute(async (args) => {
|
|
396
|
+
const params: Record<string, string> = { text: args.text };
|
|
397
|
+
if (args.to) params.to = args.to;
|
|
398
|
+
const data = await fetchApi<any>('/fanyi', params);
|
|
399
|
+
const srcText = data.source?.text || args.text;
|
|
400
|
+
const srcLang = data.source?.type_desc || data.source?.type || '';
|
|
401
|
+
const tgtText = data.target?.text || data.result || data.translation || (typeof data === 'string' ? data : '');
|
|
402
|
+
const tgtLang = data.target?.type_desc || data.target?.type || '';
|
|
403
|
+
const lines = [
|
|
404
|
+
'๐ ็ฟป่ฏ็ปๆ',
|
|
405
|
+
'',
|
|
406
|
+
`ๅๆ${srcLang ? ` (${srcLang})` : ''}: ${srcText}`,
|
|
407
|
+
`่ฏๆ${tgtLang ? ` (${tgtLang})` : ''}: ${tgtText}`,
|
|
408
|
+
];
|
|
409
|
+
if (data.target?.pronounce) lines.push(`ๅ้ณ: ${data.target.pronounce}`);
|
|
410
|
+
return lines.join('\n');
|
|
411
|
+
});
|
|
412
|
+
|
|
413
|
+
// โโ ๅๅฒไธ็ไปๅคฉ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
414
|
+
const historyTodayTool = new ZhinTool('history_today')
|
|
415
|
+
.desc('ๆฅ็ๅๅฒไธ็ไปๅคฉๅ็ไบไปไน')
|
|
416
|
+
.tag('ๅๅฒ', '็ฅ่ฏ', 'ๆฅๅ')
|
|
417
|
+
.keyword('ๅๅฒ', 'ๅๅฒไธ็ไปๅคฉ', 'ไปๅคฉๅๅฒ', 'history')
|
|
418
|
+
.alias('ๅๅฒไธ็ไปๅคฉ', 'ๅๅฒ')
|
|
419
|
+
.usage('ๆฅ็ๅๅฒไธ็ไปๅคฉ')
|
|
420
|
+
.examples('/history')
|
|
421
|
+
.execute(async () => {
|
|
422
|
+
const data = await fetchApi<any>('/today-in-history');
|
|
423
|
+
const dateStr = data.date || `${data.month || ''}ๆ${data.day || ''}ๆฅ`;
|
|
424
|
+
const lines = [`๐
ๅๅฒไธ็ไปๅคฉ (${dateStr})`, ''];
|
|
425
|
+
const items = data.items || (Array.isArray(data) ? data : []);
|
|
426
|
+
items.slice(0, 10).forEach((item: any, i: number) => {
|
|
427
|
+
const year = item.year || '';
|
|
428
|
+
const title = item.title || item.event || item.content || item;
|
|
429
|
+
const typeIcon = item.event_type === 'birth' ? '๐ถ' : item.event_type === 'death' ? '๐๏ธ' : '๐';
|
|
430
|
+
lines.push(`${typeIcon} ${i + 1}. ${year ? `[${year}] ` : ''}${title}`);
|
|
431
|
+
});
|
|
432
|
+
return lines.join('\n');
|
|
433
|
+
});
|
|
434
|
+
|
|
435
|
+
// โโ KFC ็ฏ็ๆๆๅ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
436
|
+
const kfcTool = new ZhinTool('kfc')
|
|
437
|
+
.desc('่ทๅ KFC ็ฏ็ๆๆๅๆๆก')
|
|
438
|
+
.tag('ๅจฑไน', 'KFC', 'ๆๆก')
|
|
439
|
+
.keyword('kfc', 'KFC', '็ฏ็ๆๆๅ', 'v50', '่ฏๅพทๅบ')
|
|
440
|
+
.alias('็ฏ็ๆๆๅ', 'v50')
|
|
441
|
+
.usage('่ทๅ KFC ๆๆก')
|
|
442
|
+
.examples('/kfc')
|
|
443
|
+
.execute(async () => {
|
|
444
|
+
const data = await fetchApi<any>('/kfc');
|
|
445
|
+
return `๐ ็ฏ็ๆๆๅ\n\n${data.kfc || data.content || data.text || (typeof data === 'string' ? data : '')}`;
|
|
446
|
+
});
|
|
447
|
+
|
|
448
|
+
// โโ ๆฎตๅญ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
449
|
+
const duanziTool = new ZhinTool('duanzi')
|
|
450
|
+
.desc('่ทๅไธไธชๆฎตๅญ')
|
|
451
|
+
.tag('ๅจฑไน', '็ฌ่ฏ', 'ๆฎตๅญ')
|
|
452
|
+
.keyword('ๆฎตๅญ', '็ฌ่ฏ', 'ๆ็ฌ', 'joke', 'duanzi')
|
|
453
|
+
.alias('ๆฎตๅญ', 'joke')
|
|
454
|
+
.usage('่ทๅๆฎตๅญ')
|
|
455
|
+
.examples('/duanzi')
|
|
456
|
+
.execute(async () => {
|
|
457
|
+
const data = await fetchApi<any>('/duanzi');
|
|
458
|
+
return `๐ ๆฎตๅญ\n\n${data.duanzi || data.content || data.text || (typeof data === 'string' ? data : '')}`;
|
|
459
|
+
});
|
|
460
|
+
|
|
461
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
462
|
+
// ๆณจๅๆๆๅทฅๅ
ท
|
|
463
|
+
// โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
|
|
464
|
+
|
|
465
|
+
const allTools = [
|
|
466
|
+
newsTool,
|
|
467
|
+
weatherTool,
|
|
468
|
+
weiboTool,
|
|
469
|
+
zhihuTool,
|
|
470
|
+
douyinTool,
|
|
471
|
+
toutiaoTool,
|
|
472
|
+
hitokotoTool,
|
|
473
|
+
moyuTool,
|
|
474
|
+
ipTool,
|
|
475
|
+
bingTool,
|
|
476
|
+
goldPriceTool,
|
|
477
|
+
fuelPriceTool,
|
|
478
|
+
exchangeRateTool,
|
|
479
|
+
translateTool,
|
|
480
|
+
historyTodayTool,
|
|
481
|
+
kfcTool,
|
|
482
|
+
duanziTool,
|
|
483
|
+
];
|
|
484
|
+
|
|
485
|
+
allTools.forEach((tool) => plugin.addTool(tool.toTool()));
|
|
486
|
+
|
|
487
|
+
logger.debug(`[60s] ๅทฒๆณจๅ ${allTools.length} ไธชๅทฅๅ
ท`);
|