- Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ°
Π‘ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ:
git clone https://github.com/Vinniko/SAUEP.git
ΠΠ° ΡΠ΅ΡΠ²Π΅ΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π±Π°Π·Ρ Π΄Π°Π½Π½ΡΡ PostgreSQL, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
sudo -i -u postgres psql CREATE DATABASE MyDatabase
Π’Π΅ΠΏΠ΅ΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ΄Π½ΡΡΡ ΡΡ Π΅ΠΌΡ Π΄Π°Π½Π½ΡΡ :
pgrestore -U postgres -d MyDatabase -1 ../SAUEPDump.sql
ΠΠ΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ Π² ΠΌΠΎΠ΄eΠ»Π΅ ApiServer. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ Π² ./SAUEP.ApiServer/Connections Π Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
cp Connection.json.example Connection.json
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ:
{ "Host": "localhost", "Username": "postgres", "Password": "root", "Database": "MyDatabase" }
ΠΠ»Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Ρ ΠΎΡΡΠ° ΠΈ ΠΏΠΎΡΡΠ° ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ ApiServer, ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡ ./SAUEP.ApiServer/Properties/launchSettings.json ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ΠΏΠΎΠ»Ρ: applicationUrl ΠΈ sslPort.
ΠΠ°ΠΏΡΡΠΊ ApiServer. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡ ./SAUEP.ApiServer/ ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ
dotnet publish --configuration Release
ΠΠΎΡΠ»Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡ ./bin/Release/netcoreapp3.1 ΠΈ Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
dotnet SAUEP.ApiServer.dll &
ΠΠ°Π»Π΅Π΅ Π½Π°ΡΡΡΠΎΠΈΠΌ TcpServer. ΠΠ°ΡΡΡΠΎΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π΅ ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΠΈ Ρ ApiServer. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ./SAUEP.TCPServer/Connections/Connection.json ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ:
{ "Host": "localhost", "Username": "postgres", "Password": "root", "Database": "MyDatabase" }
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΡΡ ΠΈ Ρ ΠΎΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ TcpServer, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ»./SAUEP.TCPServer/Models/SocketModel.cs ΠΡΠΈΠΌΠ΅Ρ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
private const int _listenPort = 8005; private const int _sayPort = 8003; private string _ipAddress = "127.0.0.1";
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ΅Π»ΠΈΠ· Π²Π΅ΡΡΠΈΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ ./SAUEP.TCPServer:
dotnet publish --configuration Release
Π Π·Π°ΠΏΡΡΡΠΈΠΌ ΡΠ΅ΡΠ²Π΅Ρ ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ ./SAUEP.TCPServer/bin/Release/ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
dotnet SAUEP.TCPServer.dll &
ΠΠ°ΡΡΡΠΎΠΈΠΌ ΡΠ΅ΡΡΠΎΠ²ΡΡ Π²Π΅ΡΡΠΈΡ DeviceClient: ΠΠ°ΡΡΡΠΎΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ Π±Π°Π·Π΅. ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ./SAUEP.DeviceClient/Connections Π Π²ΡΠΏΠΎΠ»Π½ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
cp Connection.json.example Connection.json
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ:
{ "Host": "localhost", "Username": "postgres", "Password": "root", "Database": "MyDatabase" }
Π§ΡΠΎΠ±Ρ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΡΡ ΠΈ Ρ ΠΎΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ DeviceServer, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡΠΊΡΡΡΡ ./SAUEP.DeviceClient/Configs Π Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
cp Config.json.example Config.json
ΠΠΎΡΠ»Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΊΠΎΠ½ΡΠΈΠ³. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
{ "Ip": "127.0.0.1", "Port": 8005 }
Π‘ΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ΅Π»ΠΈΠ· Π²Π΅ΡΡΠΈΡ Π² ΠΏΠ°ΠΏΠΊΠ΅ ./SAUEP.DeviceClient:
dotnet publish --configuration Release
Π Π·Π°ΠΏΡΡΡΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ ΡΡΡΡΠΎΠΉΡΡΠ² ΠΈΠ· ΠΏΠ°ΠΏΠΊΠΈ ./SAUEP.DeviceClient/bin/Release/ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:
dotnet SAUEP.DeviceClient.dll &
ΠΠ°ΠΏΡΡΡΠΈΡΡ Desktop-ΠΊΠ»ΠΈΠ΅Π½Ρ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄ Windows. ΠΠ°ΡΡΡΠΎΠΈΠΌ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΊ ApiServer. ΠΡΠΊΡΠΎΠ΅ΠΌ ΡΠ°ΠΉΠ» ./Core/Connections/Connection.json ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΠΌ ConnectionUrl Π½Π° Ρ ΠΎΡΡ ΠΏΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΌ Π·Π°ΠΏΡΡΠ΅Π½ ApiServer. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
{ "ConnectionUrl": "http://localhost:53773/" }
Π ΡΠ°ΠΉΠ»Π΅ ./Core/Models/SocketModel.cs ΠΠ°ΡΡΡΠΎΠΈΠΌ _listenPort ΠΈ _ipAddress ΡΠ΅ΡΠ²Π΅ΡΠ°:
private const int _listenPort = 8003; private string _ipAddress = "127.0.0.1";
ΠΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ SAUEP.exe
- Π‘Π²ΡΠ·Ρ
Email: vinnik_21@bk.ru / vinniko333@gmail.com
Telegram: https://t.me/vinnik0
LinkedIn: https://www.linkedin.com/in/Π°Π»Π΅ΠΊΡΠ΅ΠΉ-Π²ΠΈΠ½Π½ΠΈΠΊ-7450a5208/
HeadHunter: https://spb.hh.ru/resume/f658e91bff090474030039ed1f5a4141446844