Allied Modders en español
[API] Discord WebHook v2.5 - Versión para impresión

+- Allied Modders en español (https://amxmodx-es.com)
+-- Foro: AMX Mod X - Scripting (https://amxmodx-es.com/Forum-AMX-Mod-X-Scripting)
+--- Foro: Aportes (https://amxmodx-es.com/Forum-Aportes)
+--- Tema: [API] Discord WebHook v2.5 (/Thread-API-Discord-WebHook-v2-5)



[API] Discord WebHook v2.5 - [N]drs - 07/04/2021

[API] Discord WebHook v2.5

Descripción:
Esta api te permite enviar mensajes desde tu servidor de Counter-Strike a un canal de discord mediante webhooks

Requisitos:
Contenido:
Código PHP:
/*==================== [API] Discord WebHook v2.5 by [N]drs ====================*/

enum _:FOR_DISCORD
{
 
CURL:WEBHOOK,
 
JSON:OBJ,
 
JSON:EMBED,
 
JSON:FIELDSEMBED
}

enum EmbedParam
{
 
CONTENT 0,
 
AUTHOR_NAME,
 
AUTHOR_URL,
 
AUTHOR_ICON_URL,
 
TITLE,
 
TITLE_URL,
 
DESCRIPTION,
 
COLOR,
 
THUMBNAIL_URL,
 
IMAGE_URL,
 
FOTTER_TEXT,
 
FOTTER_ICON_URL
}

/**
 * Inicia conexión al webhook de un canal de discord.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szWebhook Url del webhook de tu canal de discord
 *
 * @return Curl handle
 */
stock CURL:Discord_Open(dc_data[FOR_DISCORD], const szWebhook[])

/**
 * Cambia la imagen del bot.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szBotImage Url de la imagen
 *
 * @noreturn
 */
stock Discord_SetBotImage(dc_data[FOR_DISCORD], const szBotImage[])

/**
 * Cambia el nombre del bot.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szBotName Nombre del bot
 *
 * @noreturn
 */
stock Discord_SetBotName(dc_data[FOR_DISCORD], const szBotName[])

/**
 * Envia un mensage al canal del webhook inicializado.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szMessage Mensaje a enviar
 * @param szHandler El forward a llamar después de completar la solicitud
 * @param data Cualquier dato para pasar al callback forward
 * @param len Tamaño máximo de los datos
 *
 * @noreturn
 */
stock Discord_SendMsg(dc_data[FOR_DISCORD], const szMessage[], const szHandler[] = "", const data[] = {}, const len 0)

/**
 * Inicializa un mensaje Embed de discord.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_EmbedInit(dc_data[FOR_DISCORD])

/**
 * Establece un parámetro del embed a enviar.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param iField Parametro Embed (mira el enum EmbedParam)
 * @param szValue Valor del parametro especificado
 *
 * @noreturn
 */
stock Discord_EmbedSet(dc_data[FOR_DISCORD], EmbedParam:iField, const szValue[])

/**
 * Inicializa el agregar un campo dendro del embed.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_AddFieldStart(dc_data[FOR_DISCORD])

/**
 * Agrega un campo dendro del embed.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szFieldName Nombre del campo
 * @param szValue Valor del campo
 * @param bInline Si deseas el campo en una sola linea, establece en true 
 *
 * @noreturn
 */
stock Discord_AddField(dc_data[FOR_DISCORD], const szFieldName[], const szValue[], bool:bInline false)

/**
 * Finaliza el agregar campos al embed.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_AddFieldEnd(dc_data[FOR_DISCORD])

/**
 * Elimina todos los parametros agregados anteriormente al embed.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @noreturn
 */
stock Discord_EmbedReset(dc_data[FOR_DISCORD])

/**
 * Envia el embed al webhook del canal de discord inizializado.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 * @param szHandler El forward a llamar después de completar la solicitud
 * @param data Cualquier dato para pasar al callback forward
 * @param len Tamaño máximo de los datos
 *
 * @noreturn
 */
stock Discord_SendEmbed(dc_data[FOR_DISCORD], const szHandler[] = "", const data[] = {}, const len 0)

/**
 * Cierra la conexion al webh1ook inicializado.
 *
 * @param dc_data[FOR_DISCORD] Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_Close(dc_data[FOR_DISCORD]) 

Ejemplo de uso de la api:
Código PHP:
#include <amxmodx>
#include <discord_webhook>

#define PLUGIN  "Ejemplo de uso Discord WebHook"
#define VERSION "2.5"
#define AUTHOR  "[N]drs"

new const szUrl[] = "url_webhook"

new g_Channel[FOR_DISCORD]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)

    
register_clcmd("say /msg""SendMessage")
    
register_clcmd("say /embed""SendEmbed")
    
    
g_Channel[WEBHOOK] = Discord_Open(g_ChannelszUrl)
    
Discord_SetBotName(g_Channel"[N]drs")
    
Discord_SetBotImage(g_Channel"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
}

public 
SendMessage(id)
{
    
Discord_SendMsg(g_Channel"Mensaje desde el cs")

    
/*new Data[1]
    Data[0] = id
    Discord_SendMsg(g_Channel, "Mensaje desde el cs", "DiscordCustomHandler", Data, 1)*/
}

public 
SendEmbed(id)
{
    
Discord_EmbedInit(g_Channel)

    
Discord_EmbedSet(g_ChannelCONTENT"@here Holaaaaaa")
    
Discord_EmbedSet(g_ChannelAUTHOR_NAME"[N]drs")
    
Discord_EmbedSet(g_ChannelAUTHOR_URL"https://amxmodx-es.com/N-drs")
    
Discord_EmbedSet(g_ChannelAUTHOR_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
    
Discord_EmbedSet(g_ChannelTITLE"[API] Discord WebHook v2.5")
    
Discord_EmbedSet(g_ChannelTITLE_URL"https://amxmodx-es.com/Thread-API-Discord-WebHook-v2-5")
    
Discord_EmbedSet(g_ChannelDESCRIPTION"Esta api te permite enviar mensajes desde tu servidor de Counter-Strike a un canal de discord mediante webhooks")
    
Discord_EmbedSet(g_ChannelCOLOR"114 137 218")

    
Discord_AddFieldStart(g_Channel)
    
Discord_AddField(g_Channel"Include""[API] Discord WebHook"true)
    
Discord_AddField(g_Channel"Versión""2.5"true)
    
Discord_AddField(g_Channel"Autor""[N]drs"true)
    
Discord_AddFieldEnd(g_Channel)

    
Discord_EmbedSet(g_ChannelTHUMBNAIL_URL"https://www.linuxadictos.com/wp-content/uploads/discord.jpg")
    
Discord_EmbedSet(g_ChannelIMAGE_URL"https://amxmodx-es.com/images/am_banner.png")
    
Discord_EmbedSet(g_ChannelFOTTER_TEXT"Escrito por [N]drs")
    
Discord_EmbedSet(g_ChannelFOTTER_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")

    
Discord_SendEmbed(g_Channel)

    
/*new Data[1]
    Data[0] = id
    Discord_SendEmbed(g_Channel, "DiscordCustomHandler", Data, 1)*/
}

/*public DiscordCustomHandler(CURL:cHandle, CURLcode:iCode, data[1])
{
    if(iCode != CURLE_OK)
    {
        log_amx("[Discord Webhook] > Hubo un error al enviar el mensaje")

        new szError[128]
        curl_easy_strerror(iCode, szError, charsmax(szError))
        server_print("CURL: %s", szError)
    }
    else
    {
        new id = data[0]
        client_print_color(id, print_team_grey, "^4[Discord Webhook] ^3Jugador ^4%n ^3tu mensaje fue enviado correctamente", id)
    }
}*/

public plugin_end()
    
Discord_Close(g_Channel

Resultado:
[Imagen: unknown.png]



RE: [API] Discord WebHook v1.4 - totopizza - 08/04/2021

Excelente aporte, faltaría la opción para añadir un embed y quedaría de lujo Approved


RE: [API] Discord WebHook v1.4 - Skylar - 09/04/2021

Excelente aporte


RE: [API] Discord WebHook v2.0 - [N]drs - 09/04/2021

Actualización v2.0
Se agregó soporte para enviar embeds

Agregado:
Código PHP:
enum EmbedParam
{
    
AUTHOR_NAME 0,
    
AUTHOR_URL,
    
AUTHOR_ICON_URL,
    
TITLE,
    
TITLE_URL,
    
DESCRIPTION,
    
COLOR,
    
THUMBNAIL_URL,
    
IMAGE_URL,
    
FOTTER_TEXT,
    
FOTTER_ICON_URL
}

stock JSON:jEmbedOne
stock JSON
:jarrFieldsOne

/**
 * Inicializa un mensaje Embed de discord.
 *
 * @noreturn
 */
stock DiscordOneInitEmbed()

/**
 * Establece un parámetro del embed a enviar.
 *
 * @param iField        Parametro Embed (mira el enum EmbedParam)
 * @param szValue        Valor del parametro especificado
 *
 * @noreturn
 */
stock DiscordOneSetEmbed(EmbedParam:iField, const szValue[])

/**
 * Inicializa el agregar un campo dendro del embed.
 *
 * @noreturn
 */
stock DiscordOneEmbedAddFieldStart()

/**
 * Agrega un campo dendro del embed.
 *
 * @param szFieldName    Nombre del campo
 * @param szValue        Valor del campo
 * @param bInline        Si deseas el campo en una sola linea, establece en true 
 *
 * @noreturn
 */
stock DiscordOneEmbedAddField(const szFieldName[], const szValue[], bool:bInline false)

/**
 * Finaliza el agregar campos al embed.
 *
 * @noreturn
 */
stock DiscordOneEmbedAddFieldEnd()

/**
 * Elimina todos los parametros agregados anteriormente al embed.
 *
 * @noreturn
 */
stock DiscordOneResetEmbed()

/**
 * Envia el embed al webhook del canal de discord inizializado.
 *
 * @param szHandler        El forward a llamar después de completar la solicitud
 * @param data            Cualquier dato para pasar al callback forward
 * @param len             Tamaño máximo de los datos
 *
 * @noreturn
 */
stock DiscordOneSendEmbed(const szHandler[] = "", const data[] = {}, const len 0)

/**
 * Inicializa un mensaje Embed de discord.
 *
 * @param jObjEmbed        Object JSON handle (Para el Embed)
 *
 * @noreturn
 */
stock DiscordMultiInitEmbed(&JSON:jObjEmbed)

/**
 * Establece un parámetro del embed a enviar.
 *
 * @param jObjEmbed        Object JSON handle (Del Embed Inicializado)
 * @param iField        Parametro Embed (mira el enum EmbedParam)
 * @param szValue        Valor del parametro especificado
 *
 * @noreturn
 */
stock DiscordMultiSetEmbed(&JSON:jObjEmbedEmbedParam:iField, const szValue[])

/**
 * Inicializa el agregar un campo dendro del embed.
 *
 * @param jarrFields    Array JSON handle (Para los campos del embed)
 *
 * @noreturn
 */
stock DiscordMultiEmbedAddFieldStart(&JSON:jarrFields)

/**
 * Agrega un campo dendro del embed.
 *
 * @param jarrFields    Array JSON handle (De los campos Inicializado)
 * @param szFieldName    Nombre del campo
 * @param szValue        Valor del campo
 * @param bInline        Si deseas el campo en una sola linea, establece en true 
 *
 * @noreturn
 */
stock DiscordMultiEmbedAddField(&JSON:jarrFields, const szFieldName[], const szValue[], bool:bInline false)

/**
 * Finaliza el agregar campos al embed.
 *
 * @param jObjEmbed        Object JSON handle
 * @param jarrFields    Array JSON handle
 *
 * @noreturn
 */
stock DiscordMultiEmbedAddFieldEnd(&JSON:jObjEmbedJSON:jarrFields)

/**
 * Elimina todos los parametros agregados anteriormente al embed.
 *
 * @param jObjEmbed        Object JSON handle (Del Embed)
 * @noreturn
 */
stock DiscordMultiResetEmbed(&JSON:jObjEmbed)

/**
 * Envia el embed al webhook del canal de discord inizializado.
 *
 * @param cHandle        Curl handle
 * @param jObj            Object JSON handle (Inicilizado al principio)
 * @param jObjEmbed        Object JSON handle (Del embed)
 * @param szHandler        El forward a llamar después de completar la solicitud
 * @param data            Cualquier dato para pasar al callback forward
 * @param len             Tamaño máximo de los datos
 *
 * @noreturn
 */
stock DiscordMultiSendEmbed(CURL:cHandleJSON:jObjJSON:jObjEmbed, const szHandler[] = "", const data[] = {}, const len 0

Ejemplo de uso enviar embed:
Código PHP:
#include <amxmodx>
#include <discord_webhook>

#define PLUGIN  "Test Send Embed"
#define VERSION "1.0"
#define AUTHOR  "[N]drs"

new const szUrlWebhook[] = "https://discord.com/api/webhooks/$numeros%/%codigos%"
new const szDcName[] = "[N]drs"
new const szDcImage[] = "https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg"

public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_concmd("amx_send""SendEmbed")

    
DiscordOneInit(szUrlWebhook)
    
DiscordOneSetBotName(szDcName)
    
DiscordOneSetBotImage(szDcImage)
}

public 
SendEmbed(id)
{
    
DiscordOneInitEmbed()
    
DiscordOneSetEmbed(AUTHOR_NAME"[N]drs")
    
DiscordOneSetEmbed(AUTHOR_URL"https://amxmodx-es.com/N-drs")
    
DiscordOneSetEmbed(AUTHOR_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
    
DiscordOneSetEmbed(TITLE"[API] Discord WebHook v2.0")
    
DiscordOneSetEmbed(TITLE_URL"https://amxmodx-es.com/Thread-API-Discord-WebHook-v2-0")
    
DiscordOneSetEmbed(DESCRIPTION"Esta api te permite enviar mensajes desde tu servidor de Counter-Strike a un canal de discord mediante webhooks")
    
DiscordOneSetEmbed(COLOR"114 137 218")
    
DiscordOneEmbedAddFieldStart()
    
DiscordOneEmbedAddField("Include""[API] Discord WebHook"true)
    
DiscordOneEmbedAddField("Versión""2.0"true)
    
DiscordOneEmbedAddField("Autor""[N]drs"true)
    
DiscordOneEmbedAddFieldEnd()
    
DiscordOneSetEmbed(THUMBNAIL_URL"https://www.linuxadictos.com/wp-content/uploads/discord.jpg")
    
DiscordOneSetEmbed(IMAGE_URL"https://amxmodx-es.com/images/am_banner.png")
    
DiscordOneSetEmbed(FOTTER_TEXT"Escrito por [N]drs")
    
DiscordOneSetEmbed(FOTTER_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
    
DiscordOneSendEmbed()
}

public 
plugin_end()
{
    
DiscordOneClose()




RE: [API] Discord WebHook v2.0 - TheKingヅ - 09/04/2021

Bonito aporte.  Mario


RE: [API] Discord WebHook v2.0 - HK-416 - 10/04/2021

Muy buen aporte


RE: [API] Discord WebHook v2.0 - LeanPPP - 13/04/2021

Tremendo wachin, gracias


RE: [API] Discord WebHook v2.5 - [N]drs - 15/04/2021

Actualización v2.5
Se modificó el nombre de todos los stocks, se dio fix a algunos bugs

Contenido de la nueva versión de la api:
Código PHP:
/*==================== [API] Discord WebHook v2.5 by [N]drs ====================*/

enum _:FOR_DISCORD
{
    
CURL:WEBHOOK,
    
JSON:OBJ,
    
JSON:EMBED,
    
JSON:FIELDSEMBED
}

enum EmbedParam
{
    
CONTENT 0,
    
AUTHOR_NAME,
    
AUTHOR_URL,
    
AUTHOR_ICON_URL,
    
TITLE,
    
TITLE_URL,
    
DESCRIPTION,
    
COLOR,
    
THUMBNAIL_URL,
    
IMAGE_URL,
    
FOTTER_TEXT,
    
FOTTER_ICON_URL
}

/**
 * Inicia conexión al webhook de un canal de discord.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szWebhook                Url del webhook de tu canal de discord
 *
 * @return                        Curl handle
 */
stock CURL:Discord_Open(dc_data[FOR_DISCORD], const szWebhook[])

/**
 * Cambia la imagen del bot.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szBotImage            Url de la imagen
 *
 * @noreturn
 */
stock Discord_SetBotImage(dc_data[FOR_DISCORD], const szBotImage[])

/**
 * Cambia el nombre del bot.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szBotName                Nombre del bot
 *
 * @noreturn
 */
stock Discord_SetBotName(dc_data[FOR_DISCORD], const szBotName[])

/**
 * Envia un mensage al canal del webhook inicializado.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szMessage                Mensaje a enviar
 * @param szHandler                El forward a llamar después de completar la solicitud
 * @param data                    Cualquier dato para pasar al callback forward
 * @param len                     Tamaño máximo de los datos
 *
 * @noreturn
 */
stock Discord_SendMsg(dc_data[FOR_DISCORD], const szMessage[], const szHandler[] = "", const data[] = {}, const len 0)

/**
 * Inicializa un mensaje Embed de discord.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_EmbedInit(dc_data[FOR_DISCORD])

/**
 * Establece un parámetro del embed a enviar.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param iField                Parametro Embed (mira el enum EmbedParam)
 * @param szValue                Valor del parametro especificado
 *
 * @noreturn
 */
stock Discord_EmbedSet(dc_data[FOR_DISCORD], EmbedParam:iField, const szValue[])

/**
 * Inicializa el agregar un campo dendro del embed.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_AddFieldStart(dc_data[FOR_DISCORD])

/**
 * Agrega un campo dendro del embed.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szFieldName            Nombre del campo
 * @param szValue                Valor del campo
 * @param bInline                        Si deseas el campo en una sola linea, establece en true 
 *
 * @noreturn
 */
stock Discord_AddField(dc_data[FOR_DISCORD], const szFieldName[], const szValue[], bool:bInline false)

/**
 * Finaliza el agregar campos al embed.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_AddFieldEnd(dc_data[FOR_DISCORD])

/**
 * Elimina todos los parametros agregados anteriormente al embed.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @noreturn
 */
stock Discord_EmbedReset(dc_data[FOR_DISCORD])

/**
 * Envia el embed al webhook del canal de discord inizializado.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 * @param szHandler                El forward a llamar después de completar la solicitud
 * @param data                    Cualquier dato para pasar al callback forward
 * @param len                     Tamaño máximo de los datos
 *
 * @noreturn
 */
stock Discord_SendEmbed(dc_data[FOR_DISCORD], const szHandler[] = "", const data[] = {}, const len 0)

/**
 * Cierra la conexion al webh1ook inicializado.
 *
 * @param dc_data[FOR_DISCORD]    Variable creada con el enum FOR_DISCORD
 *
 * @noreturn
 */
stock Discord_Close(dc_data[FOR_DISCORD]) 

Ejemplo de uso de la api:
Código PHP:
#include <amxmodx>
#include <discord_webhook>

#define PLUGIN  "Ejemplo de uso Discord WebHook"
#define VERSION "2.5"
#define AUTHOR  "[N]drs"

new const szUrl[] = "url_webhook"

new g_Channel[FOR_DISCORD]

public 
plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)

    
register_clcmd("say /msg""SendMessage")
    
register_clcmd("say /embed""SendEmbed")
    
    
g_Channel[WEBHOOK] = Discord_Open(g_ChannelszUrl)
    
Discord_SetBotName(g_Channel"[N]drs")
    
Discord_SetBotImage(g_Channel"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
}

public 
SendMessage(id)
{
    
Discord_SendMsg(g_Channel"Mensaje desde el cs")

    
/*new Data[1]
    Data[0] = id
    Discord_SendMsg(g_Channel, "Mensaje desde el cs", "DiscordCustomHandler", Data, 1)*/
}

public 
SendEmbed(id)
{
    
Discord_EmbedInit(g_Channel)

    
Discord_EmbedSet(g_ChannelCONTENT"@here Holaaaaaa")
    
Discord_EmbedSet(g_ChannelAUTHOR_NAME"[N]drs")
    
Discord_EmbedSet(g_ChannelAUTHOR_URL"https://amxmodx-es.com/N-drs")
    
Discord_EmbedSet(g_ChannelAUTHOR_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")
    
Discord_EmbedSet(g_ChannelTITLE"[API] Discord WebHook v2.5")
    
Discord_EmbedSet(g_ChannelTITLE_URL"https://amxmodx-es.com/Thread-API-Discord-WebHook-v2-5")
    
Discord_EmbedSet(g_ChannelDESCRIPTION"Esta api te permite enviar mensajes desde tu servidor de Counter-Strike a un canal de discord mediante webhooks")
    
Discord_EmbedSet(g_ChannelCOLOR"114 137 218")

    
Discord_AddFieldStart(g_Channel)
    
Discord_AddField(g_Channel"Include""[API] Discord WebHook"true)
    
Discord_AddField(g_Channel"Versión""2.5"true)
    
Discord_AddField(g_Channel"Autor""[N]drs"true)
    
Discord_AddFieldEnd(g_Channel)

    
Discord_EmbedSet(g_ChannelTHUMBNAIL_URL"https://www.linuxadictos.com/wp-content/uploads/discord.jpg")
    
Discord_EmbedSet(g_ChannelIMAGE_URL"https://amxmodx-es.com/images/am_banner.png")
    
Discord_EmbedSet(g_ChannelFOTTER_TEXT"Escrito por [N]drs")
    
Discord_EmbedSet(g_ChannelFOTTER_ICON_URL"https://amxmodx-es.com/uploads/avatars/avatar_7615.jpeg")

    
Discord_SendEmbed(g_Channel)

    
/*new Data[1]
    Data[0] = id
    Discord_SendEmbed(g_Channel, "DiscordCustomHandler", Data, 1)*/
}

/*public DiscordCustomHandler(CURL:cHandle, CURLcode:iCode, data[1])
{
    if(iCode != CURLE_OK)
    {
        log_amx("[Discord Webhook] > Hubo un error al enviar el mensaje")

        new szError[128]
        curl_easy_strerror(iCode, szError, charsmax(szError))
        server_print("CURL: %s", szError)
    }
    else
    {
        new id = data[0]
        client_print_color(id, print_team_grey, "^4[Discord Webhook] ^3Jugador ^4%n ^3tu mensaje fue enviado correctamente", id)
    }
}*/

public plugin_end()
    
Discord_Close(g_Channel

Resultado:
[Imagen: unknown.png]



RE: [API] Discord WebHook v2.5 - invisibleok - 18/06/2021

Hola [N]drs. Esta perfecto el plugin y te felicito, pero yo quiero que cuando pongan /llamaradmin (Que es para que llame a un admin en un server de mix) se envie un mensaje predeterminado. Como no se mucho de code en AMXX, me podrias ayudar?. Si quieres te paso ejemplos por aqui mismo. Gracias!.


RE: [API] Discord WebHook v2.5 - [N]drs - 18/06/2021

(18/06/2021, 12:58 AM)invisibleok escribió: Hola [N]drs. Esta perfecto el plugin y te felicito, pero yo quiero que cuando pongan /llamaradmin (Que es para que llame a un admin en un server de mix) se envie un mensaje predeterminado. Como no se mucho de code en AMXX, me podrias ayudar?. Si quieres te paso ejemplos por aqui mismo. Gracias!.

El ejemplo de uso está dado en la publicación, si quieres que te hagan un plugin, tienes que publicar en el foro de * pedido de plugins *


RE: [API] Discord WebHook v2.5 - Mía - 21/06/2021

Tiene un tiempo acá pero recién lo leí, muy buen aporte Rainbow