VKBotCore C # рдкрд░ рдЖрдзрд╛рд░рд┐рдд VK рдЪреИрдЯрдмреЙрдЯ рдХрд╛ рдирд┐рд░реНрдорд╛рдг

рдпрд╣ рд▓реЗрдЦ рдЖрд▓рд╕реА рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХреЛрдб рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рд╕рднреА "рднрд░рд╛рдИ" рд╕реЗ рдирд┐рдкрдЯрддреЗ рд╣реИрдВред

рд╕рдореВрд╣ рдкреНрд░рд╢рд┐рдХреНрд╖рдг


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдПрдХ рд╕рдореБрджрд╛рдп рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдЬреЛ рд╣рдорд╛рд░реЗ рдмреЙрдЯ рд╕реЗ рдмрдВрдзрд╛ рд╣реЛрдЧрд╛ред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, "рд╕рдореБрджрд╛рдп" рдЕрдиреБрднрд╛рдЧ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ "рд╕рдореБрджрд╛рдп рдмрдирд╛рдПрдВ" рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред

рдЫрд╡рд┐

рдЕрдм рд╣рдо рдЗрд╕реЗ рдХреЙрд▓рдмреИрдХ-рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВрдЧреЗ // рдХреЙрд▓рдмреИрдХ-рдПрдкреАрдЖрдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ

"рдкреНрд░рдмрдВрдзрди" рдкрд░ рдЬрд╛рдПрдВ >> >>

рдЫрд╡рд┐

>> "рд╕реЗрдЯрд┐рдВрдЧреНрд╕" >> "рдПрдкреАрдЖрдИ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛"

рдЫрд╡рд┐

рд╣рдо рд╕рднреА рдЕрдиреБрдорддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдПрдХреНрд╕реЗрд╕ рдХреБрдВрдЬреА рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХрд╛рдо рдореЗрдВ рдЖрдПрдЧрд╛ред

рдЫрд╡рд┐

рдЗрд╕рдХреЗ рдмрд╛рдж, рдХреЙрд▓рдмреИрдХ-рдПрдкреАрдЖрдИ рдЯреИрдм рдкрд░ рдЬрд╛рдПрдВ, рдПрдкреАрдЖрдИ рдХреЗ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЪрдпрди рдХрд░реЗрдВ рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдкреБрд╖реНрдЯрд┐ рдХреЛрдб рд▓рд┐рдЦреЗрдВред рдЗрд╕рдореЗрдВ

рдЫрд╡рд┐

рд╕рдВрджреЗрд╢ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдмрд╛рдХреА рд╣реИред рдЕрдиреБрднрд╛рдЧ "рд╕рдВрджреЗрд╢" >> "рдмреЙрдЯ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕" рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╕реЗрдЯрд┐рдВрдЧ рдХреЛ рд╕рд╣реЗрдЬреЗрдВ

рдЫрд╡рд┐


рд╕рд░реНрд╡рд░ рдХреА рддреИрдпрд╛рд░реА



рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдмреЙрдЯ рдХреЛ рдПрдХ рдЬрдЧрд╣ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬрд╣рд╛рдВ рдЗрд╕реЗ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдХреЛрдИ рднреА рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рднреА рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕реЗ .NET рдХреЛрд░ рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЙрдмрдВрдЯреВ 18.04 рдкрд░ рд╡реАрдкреАрдПрд╕ рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ред

рдмреЙрдЯ рдХреЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдл рд╕рд░реНрд╡рд░ рдкрд░, рдЖрдкрдХреЛ .NET рдХреЛрд░ рдХреЛ рдХрдо рд╕реЗ рдХрдо рд╕рдВрд╕реНрдХрд░рдг 2.2 рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ:
Microsoft рдХреБрдВрдЬреА рдФрд░ рд╡реЗрдм рдлрд╝реАрдб рд░рдЬрд┐рд╕реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб:

> wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb

рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдЙрддреНрдкрд╛рджреЛрдВ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдирд╛:

> sudo apt-get update
> sudo apt-get install apt-transport-https
> sudo apt-get update

рдЕрдм рдиреЗрдЯ рдХреЛрд░ рдЦреБрдж рдХреЛ рд╕реНрдерд╛рдкрд┐рддред
рдХреЗ рд▓рд┐рдП рд░рдирдЯрд╛рдЗрдо рд╕рдВрд╕реНрдХрд░рдг, рдЖрджреЗрд╢ рджрд░реНрдЬ рдХрд░реЗрдВ:

> sudo apt-get install aspnetcore-runtime-3.1

рдХреЗ рд▓рд┐рдП рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕ рдХрд┐рдЯ рд╕рдВрд╕реНрдХрд░рдг:

> sudo apt-get install dotnet-sdk-3.1

рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде рдЗрд╕рдХреА рддрддреНрдкрд░рддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░реЗрдВ:

> dotnet --info

рд╕реНрдерд╛рдкрдирд╛ рдФрд░ рд╕реЗрдЯрдЕрдк


рд╣рдо рд╕реАрдзреЗ рдмреЙрдЯ рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВред

рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд╕рд╛рде рд╕рдВрдЧреНрд░рд╣ рдХреЛ рдЕрдирд▓реЛрдб рдХрд░реЗрдВред Appsettings.json

рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓реЗрдВ ред AccessToken рдорд╛рди рдФрд░ рдкреБрд╖реНрдЯрд┐рдХрд░рдг рдорд╛рди

рдЫрд╡рд┐

рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╕рд╣реЗрдЬреА рдЧрдИ рдПрдХреНрд╕реЗрд╕ рдХреБрдВрдЬреА рдФрд░ рдкреБрд╖реНрдЯрд┐ рдХреБрдВрдЬреА рдбрд╛рд▓реЗрдВ ред рд╕рд╣реЗрдЬреЗрдВ рдФрд░ рдХрдВрд╕реЛрд▓ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдПрдВред Folder the рдХрдорд╛рдВрдб рдХреЗ рд╕рд╛рде, рдЕрд╕реЗрдВрдмрд▓реА рдлреЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░реЗрдВ:

рдЫрд╡рд┐



cd " "

> dotnet vkBotCore.dll

рдпрд╣ рдмреЙрдЯ рдХреЛ рд╕рдореВрд╣ рдореЗрдВ рдмрд╛рдБрдзрдиреЗ рдХреЗ рд▓рд┐рдП рд░рд╣рддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреЙрд▓рдмреИрдХ-рдПрдкреАрдЖрдИ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ, рдкрддрд╛ рдлрд╝реАрд▓реНрдб рдореЗрдВ, рдЙрд╕ рдбреЛрдореЗрди рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рд╕рд░реНрд╡рд░ рдкрде / рдПрдкреАрдЖрдИ / рдХреЙрд▓рдмреИрдХ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИред

рдЫрд╡рд┐

рдпрджрд┐ рд╕рдм рдХреБрдЫ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреБрд╖реНрдЯрд┐ рдХреЗ рдмрд╛рдж рдПрдХ рд╣рд░реЗ рд░рдВрдЧ рдХрд╛ рдЪреЗрдХрдорд╛рд░реНрдХ рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред

рдкреНрд▓рдЧрдЗрди рдирд┐рд░реНрдорд╛рдг


рдЪреИрдЯрдмреЙрдЯ рдХреЗ рд░реВрдк рдореЗрдВ VkBotCore рдХреЗ рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдХреЗрд╡рд▓ 2 рдХрдорд╛рдВрдб рд╢рд╛рдорд┐рд▓ рд╣реИрдВ: / рдорджрдж рдФрд░ / рд╕рднреАред
рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдкреНрд▓рдЧрдЗрди рд▓рд┐рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдкреНрд▓рдЧрдЗрдиреНрд╕ рдПрдХ рдХреНрд▓рд╛рд╕ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИрдВ, рдЬрд┐рд╕реЗ рдкреНрд▓рдЧрдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдмреБрдирд┐рдпрд╛рджреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╣реИред

рдЪрд▓реЛ рдПрдХ рдирдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдмрдирд╛рддреЗ рд╣реИрдВред vkBotCore.dll

рдЫрд╡рд┐

рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ рдЕрд╕реЗрдВрдмрд▓реА рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВред vkBotCore.Plugins

рдЫрд╡рд┐

рдЫрд╡рд┐

рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЬреЛрдбрд╝реЗрдВ рдФрд░ рдкреНрд▓рдЧрд┐рди рд╕реЗ рдореБрдЦреНрдп рд╡рд░реНрдЧ рд╡рд╛рд░рд┐рд╕ рдХрд░реЗрдВ

using vkBotCore.Plugins;

namespace myPlugin
{
    public class MyFirstPlugin : Plugin
    {
    }
}

рдирдорд╕реНрддреЗ рдХрдорд╛рдВрдб рдЬреЛрдбрд╝реЗрдВ рддрд╛рдХрд┐ рдпрд╣ рд╣рд╛рдп {рдирд╛рдо} рдХрд╛ рдЬрд╡рд╛рдм рджреЗ

using vkBotCore.Plugins;
using vkBotCore.Plugins.Attributes;

namespace myPlugin
{
    public class MyFirstPlugin : Plugin
    {
        [Command]
        public void Hello(CommandContext context)
        {
            context.Chat.SendMessage($" {context.Sender.GetMentionLine()}");
        }
    }
}

рдЕрдм рдЕрд╕реЗрдВрдмрд▓реА рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдирдпрд╛ рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдПрдВ рдЬрд┐рд╕реЗ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЗрд╕рдореЗрдВ рдЕрд╕реЗрдВрдмрд▓ рдХрд┐рдП рдЧрдП рдкреНрд▓рдЧрдЗрди

рдЫрд╡рд┐

p.s. рдХреЛ рд╕реЗрд╡ рдХрд░реЗрдВ ред рдЖрджреЗрд╢ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Calback-API >> рдЗрд╡реЗрдВрдЯ рдкреНрд░рдХрд╛рд░ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ, рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕реВрдЪрдирд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИред

рдЫрд╡рд┐

рдЪрд▓рд╛рдПрдВ рдФрд░ рдЬрд╛рдВрдЪреЗрдВ:

рдЫрд╡рд┐

рд╕рдВрдмрдВрдзрд┐рдд рд╕рд╛рдордЧреНрд░реА


рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рдкрд░реАрдХреНрд╖рдг рдкреНрд▓рдЧрдЗрди рдХреЗ
рдЕрднрд┐рд▓реЗрдЦ VkBotCore рд╕реНрд░реЛрдд рдХреЛрдб
ASP.NET рдХреЛрд░, VkNet # # рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдПрдХ рдЪреИрдЯ рдмреЙрдЯ рдХреЗ рд╕рд╛рде рдЕрдиреБрдЪреНрдЫреЗрдж

All Articles