Advertisement
Guest User

Untitled

a guest
May 27th, 2015
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. -- fct to split a string by a delimeter
  2. local function split(s, delimiter)
  3. local result = {}
  4. for match in (s..delimiter):gmatch("(.-)"..delimiter) do
  5. table.insert(result, match)
  6. end
  7. return result
  8. end
  9.  
  10. -- convert hex to char
  11. local hex_to_char = function(x)
  12. return string.char(tonumber(x, 16))
  13. end
  14.  
  15. -- unespace special chars in URL
  16. local unescape = function(url)
  17. return url:gsub("%%(%x%x)", hex_to_char)
  18. end
  19.  
  20. return function(request, next_middleware)
  21. local response = next_middleware()
  22. local hookURL = "meurl"
  23.  
  24. if(request.uri == '/hook') then
  25. local params = split(request.body,'&')
  26. local decoded_params = {}
  27.  
  28. -- turn urlencoded string into an object
  29. for i=1,#params do
  30. local p = split(params[i],'=')
  31. decoded_params[p[1]] = p[2]
  32. end
  33. msg = 'Hey '..decoded_params.user_name..' I heard you like cats '..'\xF0\x9F\x98\xB8'
  34. local r = http.json.post(hookURL,'{"text": "'..msg..'","channel":"#'.. decoded_params.channel_name..'","icon_emoji":":cat:"}')
  35. console.log(r.status, r.body)
  36. end
  37. return response
  38. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement