|
1 | 1 | program ConsoleBot; |
2 | 2 |
|
3 | 3 | {$APPTYPE CONSOLE} |
4 | | - |
5 | 4 | {$R *.res} |
6 | 5 |
|
7 | 6 | uses |
8 | 7 | TelegAPI.Bot, |
9 | | - TelegAPI.Bot.Recesiver.Console, |
| 8 | + Rest.Json, |
| 9 | + TelegAPI.Recesiver.Console, |
| 10 | + System.SysUtils, |
10 | 11 | TelegAPI.Types, |
11 | | - System.SysUtils; |
| 12 | + TelegAPI.Types.Impl; |
12 | 13 |
|
13 | 14 | procedure Main; |
14 | 15 | var |
15 | | - LBot: TTelegramBot; |
16 | | - LRecesiver: TTgBotRecesiverConsole; |
| 16 | + LBot: ITelegramBot; |
| 17 | + LRecesiver: TtgRecesiverConsole; |
17 | 18 | LStop: string; |
18 | 19 | begin |
19 | | - LBot := TTelegramBot.Create(nil); |
20 | | - LBot.Token := {$I ..\token.inc}; |
21 | | - LRecesiver := TTgBotRecesiverConsole.Create(nil); |
22 | | - LRecesiver.Bot := LBot; |
| 20 | + LBot := CreateTelegramBot('283107814:AAF9VZC6TRv6qKmOMCsLFoI8SBlV_xFMI80'); |
| 21 | + LRecesiver := TtgRecesiverConsole.Create(LBot); |
23 | 22 | try |
| 23 | + LRecesiver.OnStart := |
| 24 | + procedure |
| 25 | + begin |
| 26 | + Writeln('started'); |
| 27 | + end; |
| 28 | + LRecesiver.OnStop := |
| 29 | + procedure |
| 30 | + begin |
| 31 | + Writeln('stoped'); |
| 32 | + end; |
24 | 33 | LRecesiver.OnMessage := |
25 | | - procedure(AMessage: TTgMessage) |
| 34 | + procedure(AMessage: ITgMessage) |
26 | 35 | begin |
27 | 36 | Writeln(AMessage.From.Username, ': ', AMessage.Text); |
| 37 | + LBot.SendMessage(AMessage.Chat.ID, AMessage.Text); |
28 | 38 | end; |
29 | 39 | with LBot.GetMe do |
30 | 40 | begin |
31 | 41 | Writeln('Bot nick: ', Username); |
32 | | - Free; |
33 | 42 | end; |
34 | | - LRecesiver.IsReceiving := True; |
| 43 | + LRecesiver.IsActive := True; |
35 | 44 | while LStop.ToLower.Trim <> 'exit' do |
| 45 | + begin |
36 | 46 | Readln(LStop); |
| 47 | + if LStop.ToLower.Trim = 'stop' then |
| 48 | + LRecesiver.IsActive := False |
| 49 | + else if LStop.ToLower.Trim = 'start' then |
| 50 | + LRecesiver.IsActive := True; |
| 51 | + end; |
37 | 52 | finally |
38 | 53 | LRecesiver.Free; |
39 | | - LBot.Free; |
40 | 54 | end; |
41 | 55 | end; |
42 | 56 |
|
|
46 | 60 | Main; |
47 | 61 | except |
48 | 62 | on E: Exception do |
49 | | - Writeln(E.ClassName, ': ', E.Message); |
| 63 | + Writeln(E.ClassName, ': ', E.message); |
50 | 64 | end; |
| 65 | + |
51 | 66 | end. |
52 | 67 |
|
0 commit comments