kap_api v1.2.18
Buenas, te presento kap_api, un modulo de temática anime que te devuelve un objeto con un gif y el nombre de su anime correspondiente totalmente aleatorio, esto para facilitarte el trabajo de buscar imagen por imagen... a nadie le gusta hacer eso, ¿O si?
Bueno pues para eso se ha creado este modulo el cual cuenta con 2 secciones Reaction, Action (Actualizado) por el momento, con imágenes muy útiles en la palma de tu mano! 🥳
- Aceptamos Sugerencias :D
- Discord bot
Instalar
$ npm install kap_apiKap_api es muy fácil se usar, funciona a través de objetos y es muy simple, aquí un ejemplo:
const api = require('kap_api');
async function imgRandom(){
	//seleccionas la categoría reaction
	const objA = await api.reaction.function()
	//seleccionas la categoría action
	const objB = await api.action.function()
	//La parte de ".function()" se refiere a la accion
	//que deseas usar de la categoría escogida...
	//Y este siempre devolverá un objeto
	console.log(objA)
	console.log(objB)
}
imgRandom()- Resultado
{
	"name": "Nombre del anime",
	"url": "Url del gif"
}Muy fácil verdad? :^ A continuación un ejemplo dedicado a un bot de discord mucho mas detallado
Bot Discord.js
El uso de la api con discord.js es igual de sencillo y se lo demostraremos con un pequeño ejemplo de un proyecto desarrollado con Discord.js
const  Discord = require('discord.js')
const  client = new  Discord.Client()
//Hacemos una estructura basica para un bot
//luego requerimos la api que usaremos :D
const  api = require('kap_api')
//Evento ready el cual sirve para iniciar el bot  
client.on('ready', () => {
	console.log(`Estoy listo! :D`)
});
//Definimos prefix
//Recuerden que esto solo es un ejemplo
let  prefix = '!'
//Creamos en event message usando async
client.on('message', async  message  => {
	
	if(!message.content.startsWith(prefix)) return
	const  args = message.content.slice(prefix.lenght).trim().split(/  +/g)
	const  command = args.shift().toLowerCase()
	if(command ==  'cry'){
	//llamamos al objeto con la api
	const obj = await  nekoapi.reaction.cry()
	//Hacemos un embed
	const  embed = new  Discord.MessageEmbed()
		.setDescription(`${message.author.username} Empezó a llorar ;-;`)
		.setColor('RANDOM')
		//Entonces, como obj devuelve un objeto con una url y un nombre...
		//vamos a utilizar las dos en este caso
		.setImage(`${obj.url}`)
		.setTimestamp()
		.setFooter(`${obj.name}`);
	message.channel.send({embeds: [embed]})
	}
})
client.login('tu token')- Resultado
 
Mas sencillo? Imposible :0
Categorías y especificaciones
Actualmente la api cuenta con solo 2 secciones de las cuales solo 1 está habilitada por el momento, pero cada dia le añadimos mas y mas variedad! ✨
Reaction
| Reaction | |
|---|---|
| blush | c Sonroja (>////<) | 
| sleep | Tengo mucho sueño 🥱 | 
| confused | ¿Que? 🤔 | 
| cry | llora* ;-; | 
| dance | Hora de bailaaar :D | 
| happy | :) | 
| lewd | pensamientos lascivos hot | 
| Action/Interaction | |
|---|---|
| feed | Hora de comer :D | 
| kiss | Beso de lengua u///u | 
| hug | Dale un fuerte abrazo a una persona :) | 
| lick | lamer | 
| pat | acariciar a una persona | 
| kickbutt | patea a alguien >:o | 
| slap | dale una bofetada! | 
| spank | la nalgea | 
Posibles errores
- Resultado Undefined
- Es un error muy común, hacen una función, ejecutan su proyecto y el resultado es undefined. Esto se debe a que el resultado que da la api es una promesa, es decir, tienen que resolver esta promesa usando async/await y asi evitar una respuestaundefined. A continuación un ejemplo```js const api = require('kap_api'); //Definimos una funcion asyncrona async function gifs() { //Hacemos el uso de await let obj = await api.reaction.cry() console.log(obj.name) console.log(obj.url) } gifs() //Y listo, el error debería estar solucionado ```
- Otra posible solución sin el uso de async/await sería esta: - ```js const api = require('kap_api'); api.reaction.cry().then((res) => { console.log(res.name) console.log(res.url) }) ```
- El resultado- namedel objeto es null- Si estas usando esta api es muy probable de que ya te hayas encontrado con este error, en el cual el objeto viene con una url especifica pero con `name` null: ```json { "name": "null" "url": "https://example.gif" } ``` Esto no es exactamente un error como tal, la razón por la cual sucede esto es que el gif no corresponde a ningún anime en particular o talvez nosotros no lo encontramos.<br> **(Si este es el caso puedes reportarlo en nuestro servidor de [Soporte](https://discord.gg/fAstgwM9rz) y convertirte en un colaborador en una futura version )**<br> La única solución que se le podría dar a este problema es con una condicional ```js const res = obj.name if(res === 'null')return console.log("No hay name :sob:") ```
- ¿Tienes otro error distinto o alguna otra duda?- Puedes consultar tus dudas en nuestro servidor de [Soporte](https://discord.gg/fAstgwM9rz) y te atenderemos lo antes posible! 🥳
Nota
Probablemente hay algunos objetos de la api que tienen datos erróneos o algún otro error, si notas uno no dudes en reportarlo, nos ayudaría mucho para mejorar en el aspecto de calidad :)