-
Notifications
You must be signed in to change notification settings - Fork 0
/
example-script.lua
78 lines (71 loc) · 2.06 KB
/
example-script.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
-- This script is based on telegram-cli sample lua script by @vysheng,
-- written to demonstrate how to use tdlib.lua for your telegram-cli bot.
-- Load tdcli library.
tdcli = dofile('tdcli.lua')
-- Print message format. Use serpent for prettier result.
function vardump(value, depth, key)
local linePrefix = ''
local spaces = ''
if key ~= nil then
linePrefix = key .. ' = '
end
if depth == nil then
depth = 0
else
depth = depth + 1
for i=1, depth do
spaces = spaces .. ' '
end
end
if type(value) == 'table' then
mTable = getmetatable(value)
if mTable == nil then
print(spaces .. linePrefix .. '(table) ')
else
print(spaces .. '(metatable) ')
value = mTable
end
for tableKey, tableValue in pairs(value) do
vardump(tableValue, depth, tableKey)
end
elseif type(value) == 'function' or
type(value) == 'thread' or
type(value) == 'userdata' or
value == nil then
print(spaces .. tostring(value))
elseif type(value) == 'string' then
print(spaces .. linePrefix .. '"' .. tostring(value) .. '",')
else
print(spaces .. linePrefix .. tostring(value) .. ',')
end
end
-- Print callback
function dl_cb(arg, data)
vardump(arg)
vardump(data)
end
function tdcli_update_callback(data)
--vardump(data)
if (data.ID == "UpdateNewMessage") then
local msg = data.message_
-- If the message is text message
if msg.content_.ID == "MessageText" then
-- And content of the text is...
if msg.content_.text_ == "ping" then
-- Reply with regular text
tdcli.sendMessage(msg.chat_id_, msg.id_, 1, 'pong', 1)
-- And if content of the text is...
elseif msg.content_.text_ == "PING" then
-- Reply with formatted text
tdcli.sendMessage(msg.chat_id_, 0, 1, '<b>PONG</b>', 1, 'html')
end
end
elseif (data.ID == "UpdateOption" and data.name_ == "my_id") then
tdcli_function ({
ID="GetChats",
offset_order_="9223372036854775807",
offset_chat_id_=0,
limit_=20
}, dl_cb, nil)
end
end