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
|
# File 'lib/eureka_bot/tg/resolver.rb', line 2
def resolve
if callback_query.present?
version, controller, action, *data = callback_query['data'].split(':')
return {
controller: controller,
action: action.to_sym,
params: {raw: data, version: version}
}
end
if simple_message.present?
if simple_message['text'].to_s[0] == '/'
parts = simple_message['text'].split(' ')
return {
controller: 'commands',
action: parts[0].gsub('/', '').to_sym,
params: {raw: parts[1..-1], version: 'v1'}
}
end
if simple_message['photo'].present?
return {
controller: 'photos',
action: :photo,
params: {photos: simple_message['photo'], version: 'v1'}
}
end
if simple_message['document'].present?
return {
controller: 'documents',
action: :document,
params: {document: simple_message['document'], version: 'v1'}
}
end
if simple_message['text'].present?
return {
controller: 'text',
action: :text,
params: {raw: simple_message['text'], version: 'v1'}
}
end
end
{
controller: 'system',
action: :nothing
}
end
|