Dies ist ein einfacher Inspektionsdienst für den CS2. Der Dienst wird mit Nest.js, TypeORM, Redis und PostgreSQL erstellt.
Es wird empfohlen, pnpm zum Installieren der Abhängigkeiten zu verwenden. Wenn Sie pnpm nicht installiert haben, können Sie es mit dem folgenden Befehl installieren:
$ npm install -g pnpm
Anschließend können Sie die Abhängigkeiten mit dem folgenden Befehl installieren:
$ pnpm install
Sie können den Server mit dem folgenden Befehl bereitstellen:
$ pnpm run build
Der Server wird im dist
-Verzeichnis erstellt. Sie können den Server mit dem folgenden Befehl ausführen:
$ node dist/main.js
Sie können den Server auch mit dem folgenden Befehl ausführen:
$ pnpm run deploy
Dadurch wird der Server in einem Befehl mit PM2 erstellt und ausgeführt.
Sie können den Server auch mit Docker betreiben. Sie können das Docker-Image mit dem folgenden Befehl erstellen:
$ docker build -t cs2-inspect-server .
Anschließend können Sie den Docker-Container mit dem folgenden Befehl ausführen:
$ docker run -p 3000:3000 -d cs2-inspect-server
Der Server ist für die Ausführung auf Port 3000 konfiguriert. Wenn Sie den Port ändern möchten, können Sie dies tun, indem Sie die Umgebungsvariable PORT
in der .env
Datei ändern.
PORT=3000
Der Server verwendet eine PostgreSQL-Datenbank zur Speicherung der Daten. Die Datenbank wird mithilfe der Umgebungsvariablen in der .env
Datei konfiguriert.
POSTGRESQL_HOST=
POSTGRESQL_PORT=
POSTGRESQL_USER=
POSTGRESQL_PASSWORD=
POSTGRESQL_DB=
Der Server verwendet eine Redis-Datenbank zum Speichern der Sitzungsdaten. Die Datenbank wird mithilfe der Umgebungsvariablen in der .env
Datei konfiguriert.
REDIS_HOST=
REDIS_PORT=
REDIS_PASSWORD=
Der Server verwendet einen Proxy, um eine Verbindung zum Internet herzustellen. Der Proxy wird mithilfe der Umgebungsvariablen in der .env
Datei konfiguriert.
PROXY_URL=[socks5 | http]://[username][session]:[password]@[url]:[port]
Sie können die Daten mit Pricempire teilen, indem Sie die Umgebungsvariable PING_PRICEMPIRE
auf true
setzen.
PING_PRICEMPIRE=true
Sie können die Aufkleber aktualisieren, indem Sie die Umgebungsvariable ALLOW_REFRESH
auf true
setzen.
ALLOW_REFRESH=true
Übergeben Sie true
an den refresh
Abfrageparameter, um die Aufkleber zu aktualisieren. (Dies funktioniert nur, wenn ALLOW_REFRESH
auf true
gesetzt ist.) (Es wird nicht empfohlen, den Endpunkt mit Aktualisierungsanfragen zu spammen, da dies zu einem Verbot durch den GC führt.)
$ curl -X GET -H " Content-Type: application/json " http://localhost:3000/ ? url=steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198023809011A35678726741D4649654965632117657 & refresh=true
Sie können die Protokollierung für die PostgreSQL-Datenbank aktivieren, indem Sie die Umgebungsvariable POSTGRESQL_LOGGING
auf true
setzen.
POSTGRESQL_LOGGING=true
Sie können die Protokollierung für GameCoordiantor aktivieren, indem Sie die Umgebungsvariable GC_DEBUG
auf true
setzen.
GC_DEBUG=true
Die Datei accounts.txt
enthält die Konten, die zur Authentifizierung der Benutzer verwendet werden. Die Datei befindet sich im root
.
# accounts.txt
username1:password1
username2:password2
Die .env
Datei enthält die Umgebungsvariablen, die zum Konfigurieren des Servers verwendet werden.
# .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
Sie können den Server mit dem folgenden Befehl ausführen:
$ pnpm start
Der Server startet an dem Port, der in der .env
Datei angegeben ist.
Mit dem folgenden Befehl können Sie den Server im Entwicklungsmodus ausführen:
$ pnpm run start:dev
Der Server startet an dem Port, der in der .env
Datei angegeben ist.
Der Server verfügt über die folgenden API-Endpunkte:
Dieser Endpunkt wird verwendet, um die Daten zu überprüfen, die an den Server gesendet werden.
$ 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) "
}
}
Sie können die Daten aus der alten CSFloat-Datenbank mit dem folgenden Befehl importieren:
$ pnpm run import
Vergessen Sie nicht, die Umgebungsvariablen POSTGRESQL_HOST_SOURCE
, POSTGRESQL_PORT_SOURCE
, POSTGRESQL_USER_SOURCE
, POSTGRESQL_PASSWORD_SOURCE
und POSTGRESQL_DB_SOURCE
in der .env
Datei festzulegen.
# .env
POSTGRESQL_HOST_SOURCE=
POSTGRESQL_PORT_SOURCE=
POSTGRESQL_USER_SOURCE=
POSTGRESQL_PASSWORD_SOURCE=
POSTGRESQL_DB_SOURCE=
Dadurch werden die Daten aus der alten CSFloat-Datenbank in die neue Datenbank importiert.
Wenn Sie zum Projekt beitragen möchten, können Sie dies tun, indem Sie eine Pull-Anfrage erstellen.
Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der LIZENZ-Datei.
Wenn Sie Fragen haben, können Sie mich über Discord kontaktieren.