1 | import { Intent } from '@maildots/sdk';
|
2 | import { Argument } from '@maildots/sdk';
|
3 |
|
4 | import { SendingClient } from '@maildots/sdk';
|
5 | import { Account } from '@maildots/sdk';
|
6 | import { Message } from '@maildots/sdk';
|
7 | import { EditText } from '@maildots/sdk';
|
8 |
|
9 | class SayHello extends Intent<void> {
|
10 |
|
11 | async execute(args: any) {
|
12 | let result = await this.sendMsg(args);
|
13 | }
|
14 |
|
15 | private async sendMsg (args: any) {
|
16 | return new Promise(async (resolve, reject) => {
|
17 | let sendingClient = new SendingClient();
|
18 | let receiver: Account = new Account(args.AccountAddress).setName('Dano');
|
19 | let editText = new EditText('edt1', 'User');
|
20 | let message = new Message('Hi')
|
21 | .setSubject('Greetings')
|
22 | .setReceivers([receiver])
|
23 | .setInputs([editText])
|
24 | let result = await sendingClient.sendMessage(message);
|
25 | return resolve(result);
|
26 | })
|
27 | }
|
28 |
|
29 | static Args = class Args implements Argument {
|
30 | private accountAddress: string;
|
31 |
|
32 | constructor (accountAddress: string) {
|
33 | this.accountAddress = accountAddress;
|
34 | }
|
35 |
|
36 | get AccountAddress() { return this.accountAddress }
|
37 | }
|
38 | }
|
39 |
|
40 | export { SayHello };
|