From 653b1bde94b89d91862007a18b8730ff58673f59 Mon Sep 17 00:00:00 2001 From: bodqhrohro Date: Sun, 24 Nov 2019 19:10:29 +0200 Subject: Telegram authorization --- telegram/commands.go | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 telegram/commands.go (limited to 'telegram/commands.go') diff --git a/telegram/commands.go b/telegram/commands.go new file mode 100644 index 0000000..64a5120 --- /dev/null +++ b/telegram/commands.go @@ -0,0 +1,33 @@ +package telegram + +const notEnoughArguments string = "Not enough arguments" +const telegramNotInitialized string = "Telegram connection is not initialized yet" + +// ProcessTransportCommand executes commands sent directly to the component +func (c *Client) ProcessTransportCommand(cmd string, args []string) string { + switch cmd { + case "login", "code", "password": + if cmd == "login" && c.Session.Login != "" { + return "" + } + + if len(args) < 1 { + return notEnoughArguments + } + if c.authorizer == nil { + return telegramNotInitialized + } + + switch cmd { + case "login": + c.authorizer.PhoneNumber <- args[0] + c.Session.Login = args[0] + case "code": + c.authorizer.Code <- args[0] + case "password": + c.authorizer.Password <- args[0] + } + } + + return "" +} -- cgit v1.2.3