Este es un servicio de inspección simple para CS2. El servicio se crea con Nest.js, TypeORM, Redis y PostgreSQL.
Se recomienda utilizar pnpm para instalar las dependencias. Si no tiene pnpm instalado, puede instalarlo usando el siguiente comando:
$ npm install -g pnpm
Luego, puede instalar las dependencias usando el siguiente comando:
$ pnpm install
Puede implementar el servidor usando el siguiente comando:
$ pnpm run build
El servidor se construirá en el directorio dist
. Puede ejecutar el servidor usando el siguiente comando:
$ node dist/main.js
También puede utilizar el siguiente comando para ejecutar el servidor:
$ pnpm run deploy
Esto construirá y ejecutará el servidor en un solo comando con PM2.
También puedes ejecutar el servidor usando Docker. Puede crear la imagen de Docker usando el siguiente comando:
$ docker build -t cs2-inspect-server .
Luego, puede ejecutar el contenedor Docker usando el siguiente comando:
$ docker run -p 3000:3000 -d cs2-inspect-server
El servidor está configurado para ejecutarse en el puerto 3000. Si desea cambiar el puerto, puede hacerlo modificando la variable de entorno PORT
en el archivo .env
.
PORT=3000
El servidor utiliza una base de datos PostgreSQL para almacenar los datos. La base de datos se configura utilizando las variables de entorno en el archivo .env
.
POSTGRESQL_HOST=
POSTGRESQL_PORT=
POSTGRESQL_USER=
POSTGRESQL_PASSWORD=
POSTGRESQL_DB=
El servidor utiliza una base de datos Redis para almacenar los datos de la sesión. La base de datos se configura utilizando las variables de entorno en el archivo .env
.
REDIS_HOST=
REDIS_PORT=
REDIS_PASSWORD=
El servidor utiliza un proxy para conectarse a Internet. El proxy se configura utilizando las variables de entorno en el archivo .env
.
PROXY_URL=[socks5 | http]://[username][session]:[password]@[url]:[port]
Puede compartir los datos con Pricempire configurando la variable de entorno PING_PRICEMPIRE
en true
.
PING_PRICEMPIRE=true
Puede actualizar las pegatinas configurando la variable de entorno ALLOW_REFRESH
en true
.
ALLOW_REFRESH=true
Pase true
al parámetro de consulta refresh
para actualizar las pegatinas. (Esto solo funcionará si ALLOW_REFRESH
está configurado en true
) (No se recomienda enviar spam al punto final con solicitudes de actualización, ya que resultará en una prohibición por parte del GC).
$ curl -X GET -H " Content-Type: application/json " http://localhost:3000/ ? url=steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198023809011A35678726741D4649654965632117657 & refresh=true
Puede habilitar el registro para la base de datos PostgreSQL configurando la variable de entorno POSTGRESQL_LOGGING
en true
.
POSTGRESQL_LOGGING=true
Puede habilitar el registro para GameCoordiantor configurando la variable de entorno GC_DEBUG
en true
.
GC_DEBUG=true
El archivo accounts.txt
contiene las cuentas que se utilizan para autenticar a los usuarios. El archivo se encuentra en el directorio root
.
# accounts.txt
username1:password1
username2:password2
El archivo .env
contiene las variables de entorno que se utilizan para configurar el servidor.
# .env
PORT=3000
POSTGRESQL_HOST=
POSTGRESQL_PORT=
POSTGRESQL_USER=
POSTGRESQL_PASSWORD=
POSTGRESQL_DB=
REDIS_HOST=
REDIS_PORT=
REDIS_PASSWORD=
PROXY_URL=[socks5 | http]://[username][session]:[password]@[url]:[port]
POSTGRESQL_LOGGING=false
GC_DEBUG=false
PING_PRICEMPIRE=true
ALLOW_REFRESH=false
Puede ejecutar el servidor usando el siguiente comando:
$ pnpm start
El servidor se iniciará en el puerto especificado en el archivo .env
.
Puede ejecutar el servidor en modo de desarrollo usando el siguiente comando:
$ pnpm run start:dev
El servidor se iniciará en el puerto especificado en el archivo .env
.
El servidor tiene los siguientes puntos finales API:
Este punto final se utiliza para inspeccionar los datos que se envían al servidor.
$ curl -X GET -H " Content-Type: application/json " http://localhost:3000/ ? url=steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198023809011A35678726741D4649654965632117657
{
"iteminfo" : {
"stickers" : [
{
"slot" : 0 ,
"stickerId" : 5935 ,
"codename" : " csgo10_blue_gem_glitter " ,
"material" : " csgo10/blue_gem_glitter " ,
"name" : " Blue Gem (Glitter) "
}
],
"itemid" : " 35675800220 " ,
"defindex" : 1209 ,
"paintindex" : 0 ,
"rarity" : 4 ,
"quality" : 4 ,
"paintseed" : 0 ,
"inventory" : 261 ,
"origin" : 8 ,
"s" : " 76561198023809011 " ,
"a" : " 35675800220 " ,
"d" : " 12026419764860007457 " ,
"m" : " 0 " ,
"floatvalue" : 0 ,
"min" : 0.06 ,
"max" : 0.8 ,
"weapon_type" : " Sticker " ,
"item_name" : " - " ,
"rarity_name" : " Remarkable " ,
"quality_name" : " Unique " ,
"origin_name" : " Found in Crate " ,
"full_item_name" : " Sticker | Blue Gem (Glitter) "
}
}
Puede importar los datos de la antigua base de datos CSFloat usando el siguiente comando:
$ pnpm run import
No olvide configurar las variables de entorno POSTGRESQL_HOST_SOURCE
, POSTGRESQL_PORT_SOURCE
, POSTGRESQL_USER_SOURCE
, POSTGRESQL_PASSWORD_SOURCE
, POSTGRESQL_DB_SOURCE
en el archivo .env
.
# .env
POSTGRESQL_HOST_SOURCE=
POSTGRESQL_PORT_SOURCE=
POSTGRESQL_USER_SOURCE=
POSTGRESQL_PASSWORD_SOURCE=
POSTGRESQL_DB_SOURCE=
Esto importará los datos de la antigua base de datos CSFloat a la nueva base de datos.
Si desea contribuir al proyecto, puede hacerlo creando una solicitud de extracción.
Este proyecto tiene la licencia MIT; consulte el archivo de LICENCIA para obtener más detalles.
Si tienes alguna pregunta, puedes contactarme en Discord.