GetCallbackQueryAnswer   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 58
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 20
dl 0
loc 58
rs 10
c 0
b 0
f 0
wmc 6

6 Methods

Rating   Name   Duplication   Size   Complexity  
A typeSerialize() 0 7 1
A fromArray() 0 6 1
A getChatId() 0 3 1
A getPayload() 0 3 1
A getMessageId() 0 3 1
A __construct() 0 5 1
1
<?php
2
3
/**
4
 * This phpFile is auto-generated.
5
 */
6
7
declare(strict_types=1);
8
9
namespace PHPTdGram\Schema;
10
11
/**
12
 * Sends a callback query to a bot and returns an answer. Returns an error with code 502 if the bot fails to answer the query before the query timeout expires.
13
 */
14
class GetCallbackQueryAnswer extends TdFunction
15
{
16
    public const TYPE_NAME = 'getCallbackQueryAnswer';
17
18
    /**
19
     * Identifier of the chat with the message.
20
     */
21
    protected int $chatId;
22
23
    /**
24
     * Identifier of the message from which the query originated.
25
     */
26
    protected int $messageId;
27
28
    /**
29
     * Query payload.
30
     */
31
    protected CallbackQueryPayload $payload;
32
33
    public function __construct(int $chatId, int $messageId, CallbackQueryPayload $payload)
34
    {
35
        $this->chatId    = $chatId;
36
        $this->messageId = $messageId;
37
        $this->payload   = $payload;
38
    }
39
40
    public static function fromArray(array $array): GetCallbackQueryAnswer
41
    {
42
        return new static(
43
            $array['chat_id'],
44
            $array['message_id'],
45
            TdSchemaRegistry::fromArray($array['payload']),
46
        );
47
    }
48
49
    public function typeSerialize(): array
50
    {
51
        return [
52
            '@type'      => static::TYPE_NAME,
53
            'chat_id'    => $this->chatId,
54
            'message_id' => $this->messageId,
55
            'payload'    => $this->payload->typeSerialize(),
56
        ];
57
    }
58
59
    public function getChatId(): int
60
    {
61
        return $this->chatId;
62
    }
63
64
    public function getMessageId(): int
65
    {
66
        return $this->messageId;
67
    }
68
69
    public function getPayload(): CallbackQueryPayload
70
    {
71
        return $this->payload;
72
    }
73
}
74