ProHoster > Блог > Whakahaerenga > Te hanga i te karetao Discord i runga i te .NET Core me te tuku ki te tūmau VPS
Te hanga i te karetao Discord i runga i te .NET Core me te tuku ki te tūmau VPS
Kia ora Khabrovites!
I tenei ra ka kite koe i tetahi tuhinga e whakaatu ana ki a koe me pehea te hanga karetao ma te whakamahi i te C # i runga i te .NET Core me te whakahaere i runga i te tūmau mamao.
Ko te tuhinga he papamuri, he waahi whakarite, tuhi arorau me te whakawhiti i te karetao ki tetahi tūmau mamao.
Te ti'aturi nei au ka awhina tenei tuhinga ki te maha o nga kaitoi.
prehistory
I timata katoa i tetahi po ngahuru kore moe i noho ahau i runga i te tūmau Discord. I te mea kua uru atu ahau ki a ia, ka timata ahau ki te ako ia ia ki runga, ki raro. I te kitenga o te hongere kuputuhi "Waahi", ka aro ahau, ka whakatuwherahia, ka kitea i roto i nga tuku kaore i pai ki a au, ko enei:
Te whai waahi ki te tautoko me te whakaawe i te kaupapa e pai ana koe;
Te whai wheako ki te mahi i roto i te roopu;
Te whai waahi ki te whakaatu me te whakapai ake i nga pukenga o naianei.
I aro tonu tenei ki ahau. Ae, kaore ratou i utu mo tenei mahi, engari kaore i tono mai i a koe etahi herenga, kaore hoki e nui ake i roto i te putea. Na reira, i tuhi ahau ki te kaiwhakahaere o te tūmau, a ka tono mai ia ki ahau kia tuhia he karetao hei whakaatu i nga tatauranga a te kaitakaro ki te Ao o Tanks.
Te waahi takawaenga
Whakakore
I mua i to tiimata ki te tuhi i ta maatau bot, me hanga e maatau mo Discord. Me:
Ka haere matou ki "Aku tono" ka paato i te paatene "Taapirihia he tono hou", ka hoatu te ingoa o te tono me te kowhiri i tona momo.
Tiaki i te Taupānga ID
pūmanawa
Te vai noa ra te tiamâraa no te maitiraa. Ka whakamahi tetahi i te Visual Studio, tetahi Rider, he kaha te tangata, ka tuhi i te waehere ki Vim (i muri i nga mea katoa, ka whakamahia e te hunga hötaka pono te papapātuhi, tika?). Heoi, kia kore ai e whakatinana i te Discord API, ka taea e koe te whakamahi i te whare pukapuka C# kore mana "DSharpPlus". Ka taea e koe te whakauru mai i a NuGet, ma te hanga ranei i nga puna mai i te putunga.
Mo te hunga kaore e mohio, kua wareware ranei ki te whakauru i nga tono mai i NuGet.Tohutohu mo Visual Studio
Haere ki te ripa Kaupapa - Manage NuGet Packages;
Paatohia te arotake me te waahi rapu tomo "DSharpPlus";
Tīpakohia ka tāuta anga;
PROFIT!
Kua mutu te waahi whakarite, ka taea e koe te haere tonu ki te tuhi i te bot.
Te tuhi arorau
E kore matou e whakaaro ki te arorau katoa o te tono, ka whakaatu noa ahau me pehea te mahi me te haukoti o nga karere na te bot, me pehea te mahi me te Wargaming API.
Ko te mahi tahi me te karetao Discord ka puta mai i roto i te Taumahi async pateko MainTask(string[] args);
Hei karanga i tenei mahi, i roto i te Main me rehita koe
Kei hea te tohu te tohu o to bot.
Na, na roto i te lambda, ka tuhia e matou nga whakahau e tika ana kia mahia e te bot:
discord.MessageCreated += async e =>
{
string message = e.Message.Content;
if (message.StartsWith("&"))
{
await e.Message.RespondAsync(“Hello, ” + e.Author.Username);
}
};
Kei hea e.Author.Username te ingoa ingoa o te kaiwhakamahi.
Ma tenei ara, ka tukuna e koe tetahi karere ka tiimata me te &, ka mihi te karetao ki a koe.
I te mutunga o tenei mahi, me tuhi koe await discord.ConnectAsync(); ka tatari i te Mahi.Taroa(-1);
Ma tenei ka taea e koe te whakahaere i nga whakahau i te papamuri me te kore e tango i te miro matua.
Inaianei me mahi maatau ki te Wargaming API. He ngawari nga mea katoa i konei - tuhia nga tono CURL, tikina he whakautu ki te ahua o te aho JSON, toia mai nga raraunga e tika ana mai i reira ka mahia he raweke ki runga.
He tauira mo te mahi tahi me WargamingAPI
public Player FindPlayer(string searchNickname)
{
//https://api.worldoftanks.ru/wot/account/list/?application_id=y0ur_a@@_id_h3r3search=nickname
urlRequest = resourceMan.GetString("url_find_player") + appID + "&search=" + searchNickname;
Player player = null;
string resultResponse = GetResponse(urlRequest);
dynamic parsed = JsonConvert.DeserializeObject(resultResponse);
string status = parsed.status;
if (status == "ok")
{
int count = parsed.meta.count;
if (count > 0)
{
player = new Player
{
Nickname = parsed.data[0].nickname,
Id = parsed.data[0].account_id
};
}
else
{
throw new PlayerNotFound("Игрок не найден");
}
}
else
{
string error = parsed.error.message;
if (error == "NOT_ENOUGH_SEARCH_LENGTH")
{
throw new PlayerNotFound("Минимум три символа требуется");
}
else if (error == "INVALID_SEARCH")
{
throw new PlayerNotFound("Неверный поиск");
}
else if (error == "SEARCH_NOT_SPECIFIED")
{
throw new PlayerNotFound("Пустой никнейм");
}
else
{
throw new Exception("Something went wrong.");
}
}
return player;
}
Te aro! Kaore i te tino tūtohutia kia penapena nga tohu katoa me nga ID tono i roto i nga tuhinga maamaa! I te iti rawa, ka whakakorehia e Discord nga tohu penei ina uru ana ratou ki te whatunga o te ao, a, i te nui rawa atu, ka timata te bot ki te whakamahi i nga kaiwhaiwhai.
Tukuna ki VPS - tūmau
Ka oti ana koe ki te karetao, me manaaki i runga i te tūmau e mahi tonu ana 24/7. Ko te mea tenei i te wa e rere ana to tono, kei te rere ano te bot. Ka whakawetohia e koe te tono, ka moe ano to karetao.
He maha nga kaiwhakarato VPS kei tenei ao, i runga i te Matapihi me te Linux, heoi, i te nuinga o te waa, he iti ake te utu ki te manaaki i runga i te Linux.
I runga i te tūmau Discord, i tohutohuhia ahau vscale.io, a ka hanga tonu e ahau he tūmau mariko i runga i te Ubuntu ki runga, ka tukuna atu te bot. E kore ahau e whakaahua me pehea te mahi o tenei pae, engari ka haere tika ki nga tautuhinga bot.
I muri mai, me tuku e koe te karetao ki te ratonga Git, penei i a GitHub me era atu mea, ka kati ki te tūmau VPS, ka tango ranei i to karetao i etahi atu huarahi. Kia mahara ka whiwhi koe i te papatohu anake, karekau he GUI. Katoa.
I muri i to tango i to bot, me whakahaere e koe. Mo tenei, ka hiahia koe:
Whakahokia nga whakawhirinakitanga katoa: dotnet restore
Hanga tono: dotnet build name_project.sln -c Tuku
Haere ki te hanga DLL;
dotnet name_of_file.dll
Kia ora! Kei te rere to bot. Heoi, ko te karetao, ko te kino, kei te noho i te papatohu, a ehara i te mea ngawari ki te puta i te tūmau VPS. Ano hoki, mena ka timata ano te tūmau, me timata koe i te karetao ma te huarahi hou. E rua nga huarahi ki waho o te ahuatanga. Ko enei katoa e pa ana ki te whakarewatanga i te tiimata o te tūmau:
Tāpiri hōtuhi rere ki /etc/init.d
Waihangatia he ratonga ka haere i te tiimatanga.
Kaore au e kite i te waahi ki te noho ki runga i a raatau, kua whakaahuahia nga mea katoa i runga i te Ipurangi.
kitenga
Kei te koa ahau ki te kawe i tenei mahi. Koinei taku wheako whanaketanga karetao tuatahi, a kei te koa ahau kua whiwhi matauranga hou ahau ki te C #, me te mahi tahi me Linux.