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
|
# File 'lib/huginn_ruby_agent/sdk.rb', line 14
def code
" require 'json'\n require 'base64'\n\n module Huginn\n class API\n attr_reader :changed_credentials\n\n def initialize(serialized_credentials: nil)\n @serialized_credentials = serialized_credentials\n @changed_credentials = {}\n end\n\n def credentials\n @credentials ||=\n begin\n @serialized_credentials.nil? ? {} : deserialize(@serialized_credentials) \n end\n end\n\n def serialize(payload)\n Base64.urlsafe_encode64(payload.to_json)\n end\n\n def deserialize(serialized_payload)\n JSON.parse Base64.urlsafe_decode64(serialized_payload.strip), symbolize_names: true\n end\n\n def credential(name)\n credentials[name.to_sym]\n end\n\n def set_credential(name, value)\n credentials[name.to_sym] = value\n changed_credentials[name.to_sym] = value\n\n puts serialize({ action: :set_credential, payload: { name: name, value: value } })\n end\n\n def create_event(payload)\n puts serialize({ action: :create_event, payload: payload })\n end\n\n def log(message)\n puts serialize({ action: :log, payload: message })\n end\n\n def error(message)\n puts serialize({ action: :error, payload: message })\n end\n end\n end\n CODE\nend\n"
|