API Datos Steam (Curl+Json)
#1
Requiere Amxx 1.9++ (o la version donde se implemento el json)
Modulo Curl : https://github.com/Polarhigh/AmxxCurl/tr...x_includes

Código PHP:
#include <amxmodx>
#include <curl>
#include <json>

new const API[] = "tu_api_steam"
new const url[] = "http://api.steampowered.com/ISteamUser/GetPlayerSummaries/v0002/?key="

#define CURL_BUFFER_SIZE 1024
#define MAX_STR_NUM_LEN 64

new szFile[33][200]

public 
plugin_init()
{
    
register_plugin("Steam Api Info""1.0""Flys")
    
register_clcmd("say test""testJson");

    if(!
dir_exists("addons/amxmodx/data/steamdata")){
        
mkdir("addons/amxmodx/data/steamdata");
    }
}


public 
client_putinserver(id){
    new 
szAuthID64[18];
    
get_user_info(id"*sid"szAuthID64charsmax(szAuthID64)); 

    
formatex(szFile[id], charsmax(szFile[]), "addons/amxmodx/data/steamdata/%s.txt"szAuthID64)
    
curl_save_player_info(szFile[id], szAuthID64)
}
public 
curl_save_player_info(file[], CommunityID[]){
    new 
data[1]
    
data[0] = fopen(file"wb")
    
server_print("curl start")

    new 
CURL:curl curl_easy_init()
    
curl_easy_setopt(curlCURLOPT_BUFFERSIZECURL_BUFFER_SIZE)
    new 
szURL[200]
    
format(szURLcharsmax(szURL), "%s%s&steamids=%s&format=json"urlAPICommunityID)
    
curl_easy_setopt(curlCURLOPT_URLszURL)
    
curl_easy_setopt(curlCURLOPT_WRITEDATAdata[0])
    
curl_easy_setopt(curlCURLOPT_WRITEFUNCTION"write")
    
curl_easy_perform(curl"complite"datasizeof(data))
}
public 
write(data[], sizenmembfile)
{
    new 
actual_size size nmemb;
    
fwrite_blocks(filedata[23], actual_size-25BLOCK_CHAR)
    return 
actual_size
}
public 
complite(CURL:curlCURLcode:codedata[])
{
    if(
code == CURLE_WRITE_ERROR)
    
server_print("transfer aborted")
    else
    
server_print("curl complete")

    
fclose(data[0])
    
curl_easy_cleanup(curl)
}

public 
testJson(id)
{
    new 
JSON:root_value json_parse(szFile[id], true);
    if (!
json_is_array(root_value))
    {
        
client_print(idprint_chat,"Algo ha salido mal!");
        return;
    }

    new 
JSON:object;
    new 
data[200]; 


    
object json_array_get_value(root_value0);

    
json_object_get_string(object"personaname"datacharsmax(data), true);
    
client_print(idprint_chat"Nombre: %s"data);
    
json_object_get_string(object"avatarfull"datacharsmax(data), true);
    
client_print(idprint_chat"URL_Avatar: %s"data);

    
json_free(object);
    
json_free(root_value);



si se requieren mas datos
Código PHP:
json_object_get_string(object"personaname"datacharsmax(data), true);
client_print(idprint_chat"Nombre: %s"data);
json_object_get_string(object"avatarfull"datacharsmax(data), true);
client_print(idprint_chat"URL_Avatar: %s"data); 
agregar mas campos bajo de:
personaname
avatarfull
Todos los campos estan en https://developer.valvesoftware.com/wiki/Steam_Web_API
Sección Public Data.

.sma   Descargar AMXX / curl.sma (Tamaño: 2.23 KB / Descargas: 35)
[Imagen: 76561198090851442.png]
Responder
#2
Este se ve más interesante, gracias por aportarlo Nothingdohere

Responder
#3
(29/04/2019, 03:30 PM)Skylar escribió: Este se ve más interesante, gracias por aportarlo Nothingdohere
Responder
#4
Obtén el valor del SteamID64 usando: *sid con get_user_info

Puedes crear la carpeta en plugin_init, verifica que no exista y la creas:
Código PHP:
if(!dir_exists("addons/amxmodx/data/steamdata"))
        
mkdir("addons/amxmodx/data/steamdata"); 
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando.
(08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck


Mis aportes

PLUGINS
MAPAS
Menú LANG [SF] Sistema de Frags
Say System (Admin Prefix)
Responder
#5
(29/04/2019, 04:52 PM)totopizza escribió: Obtén el valor del SteamID64 usando: *sid con get_user_info

Puedes crear la carpeta en plugin_init, verifica que no exista y la creas:
Código PHP:
if(!dir_exists("addons/amxmodx/data/steamdata"))
        
mkdir("addons/amxmodx/data/steamdata"); 

como es eso del *sid?
[Imagen: 76561198090851442.png]
Responder
#6
este si ta bueno Fap
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

(18/11/2014, 05:47 PM)Neeeeeeeeeel.- escribió: Por qué necesitan una guía para todo? Meté mano y que salga lo que salga... es la mejor forma de aprender.

(16/05/2016, 11:08 PM)kikizon2 escribió: No cabe duda que tienen mierda en vez de cerebro, par de pendejos v:
Responder
#7
(29/04/2019, 11:01 PM)OsweRRR escribió: este si ta bueno Fap

eres puto XD
[Imagen: 76561198090851442.png]
Responder
#8
(29/04/2019, 10:05 PM)PredatorFlys escribió:
(29/04/2019, 04:52 PM)totopizza escribió: Obtén el valor del SteamID64 usando: *sid con get_user_info

Puedes crear la carpeta en plugin_init, verifica que no exista y la creas:
Código PHP:
if(!dir_exists("addons/amxmodx/data/steamdata"))
        
mkdir("addons/amxmodx/data/steamdata"); 

como es eso del *sid?

Código PHP:
new szAuthID64[18];
get_user_info(id"*sid"szAuthID64charsmax(szAuthID64)); 
[Imagen: EFE914E3D239F52C234EEF47DC8E41FDEC585A0B]
[Imagen: b_350_20_323957_202743_f19a15_111111.png]

Estudia siempre; el tiempo es oro, lo material se puede recuperar pero el tiempo no se puede recuperar.
(02/10/2016, 05:05 PM)meTaLiCroSS escribió: Siempre me gusta ayudar cuando alguien esta interesado realmente en ver que esta programando.
(08/08/2019, 05:32 PM)meTaLiCroSS escribió: grax x el dato cr4ck


Mis aportes

PLUGINS
MAPAS
Menú LANG [SF] Sistema de Frags
Say System (Admin Prefix)
Responder
#9
(29/04/2019, 11:11 PM)totopizza escribió:
(29/04/2019, 10:05 PM)PredatorFlys escribió:
(29/04/2019, 04:52 PM)totopizza escribió: Obtén el valor del SteamID64 usando: *sid con get_user_info

Puedes crear la carpeta en plugin_init, verifica que no exista y la creas:
Código PHP:
if(!dir_exists("addons/amxmodx/data/steamdata"))
        
mkdir("addons/amxmodx/data/steamdata"); 

como es eso del *sid?

Código PHP:
new szAuthID64[18];
get_user_info(id"*sid"szAuthID64charsmax(szAuthID64)); 
[Imagen: EFE914E3D239F52C234EEF47DC8E41FDEC585A0B]

carajo jajajaa porque la vida no te da guia de estas cosas
jajaja

Listo totopo! ahora si quedo corto y facil de entender.
[Imagen: 76561198090851442.png]
Responder
#10
Jajaj como te comí la cabeza con mi comentario eh , genial (y)
Responder
#11
(30/04/2019, 12:18 AM)DiCHANHO escribió: Jajaj como te comí la cabeza con mi comentario eh , genial (y)

para pasar el rato estaba fino.
[Imagen: 76561198090851442.png]
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)