add xeno canto command
This commit is contained in:
parent
0fb77515b7
commit
c8efc9bdd1
55
client.js
55
client.js
|
@ -148,7 +148,7 @@ async function serveddg(msg, results, page){
|
|||
/*
|
||||
Websocket functions
|
||||
*/
|
||||
async function send(channel, text, file = null){
|
||||
async function send(channel, text, file = null, forcemime = null){
|
||||
|
||||
if(typeof channel == "object"){
|
||||
|
||||
|
@ -169,7 +169,13 @@ async function send(channel, text, file = null){
|
|||
/*
|
||||
Send file
|
||||
*/
|
||||
var mimetype = await getmime(file);
|
||||
if(forcemime === null){
|
||||
|
||||
var mimetype = await getmime(file);
|
||||
}else{
|
||||
|
||||
var mimetype = forcemime;
|
||||
}
|
||||
|
||||
var form_data = new formdata();
|
||||
form_data.append("text", text);
|
||||
|
@ -816,7 +822,7 @@ deek.on("message", async function(msg, user){
|
|||
break;
|
||||
}
|
||||
|
||||
var res = await fetch("https://4get.perennialte.ch/api/v1/videos?s=" + value);
|
||||
var res = await fetch("https://4get.perennialte.ch/api/v1/videos?s=" + encodeURIComponent(value));
|
||||
var res_get = await res.json();
|
||||
|
||||
if(res_get.status != "ok"){
|
||||
|
@ -857,6 +863,48 @@ deek.on("message", async function(msg, user){
|
|||
send(msg, "Search results for \"" + value + "\"\n\n" + text.join("\n\n"));
|
||||
break;
|
||||
|
||||
case "x":
|
||||
case "xeno":
|
||||
if(value.trim() == ""){
|
||||
|
||||
send(
|
||||
msg,
|
||||
"You must give me a search term you autistic cocksucker with no legs!!\nExample: .x owl"
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
var res = await fetch("https://xeno-canto.org/api/2/recordings?query=" + encodeURIComponent(value));
|
||||
var res_get = await res.json();
|
||||
|
||||
if(res_get.recordings.length === 0){
|
||||
|
||||
send(
|
||||
msg,
|
||||
"No recordings found for \"" + value + "\"!!!!!"
|
||||
);
|
||||
break;
|
||||
}
|
||||
|
||||
var filereq = await fetch(
|
||||
res_get.recordings[0].file,
|
||||
{headers: img_headers}
|
||||
);
|
||||
|
||||
var file = await filereq.buffer();
|
||||
|
||||
send(
|
||||
msg,
|
||||
">" + res_get.recordings[0].en + " in " + res_get.recordings[0].cnt + " (" + res_get.recordings[0].loc + ")\n" +
|
||||
res_get.recordings[0].rmk,
|
||||
file,
|
||||
[
|
||||
"audio/mpeg",
|
||||
"mp3"
|
||||
]
|
||||
);
|
||||
break;
|
||||
|
||||
case "help":
|
||||
case "h":
|
||||
send(
|
||||
|
@ -868,6 +916,7 @@ deek.on("message", async function(msg, user){
|
|||
".page/.p => get page offset for image search\n" +
|
||||
".pp => get next page\n" +
|
||||
".yt/.youtube => search the jewish propaganda catalog (now powered by 4get)\n" +
|
||||
".x/xeno => search for bird sounds\n" +
|
||||
".roll/.r => Because deekchat was too slow\n" +
|
||||
".mumble/.m <[optional]ip:port> => check if lolcat died\n" +
|
||||
".prop => check if the sun has exploded or smth\n" +
|
||||
|
|
Loading…
Reference in New Issue