require "ipc/json" require "grok" class DNSManager::Request IPC::JSON.message NewToken, 18 do property domain : String property rrid : UInt32 def initialize(@domain, @rrid) end def handle(dnsmanagerd : DNSManager::Service, event : IPC::Event) : IPC::JSON user = dnsmanagerd.get_logged_user event return Response::ErrorUserNotLogged.new unless user dnsmanagerd.storage.new_token user.uid, @domain, @rrid end end DNSManager.requests << NewToken IPC::JSON.message UseToken, 19 do property token : String property address : String def initialize(@token, @address) end def handle(dnsmanagerd : DNSManager::Service, event : IPC::Event) : IPC::JSON dnsmanagerd.storage.use_token @token, @address end end DNSManager.requests << UseToken end