local wordpress_recent_post = {} wordpress_recent_post.triggers = { "^/([Aa][Kk][Aa]) (.+)$", "^/([Aa][Kk][Aa])$", } local makeOurDate = function(dateString) local pattern = "(%d+)%-(%d+)%-(%d+)" local year, month, day = dateString:match(pattern) return day..'.'..month..'.'..year end function wordpress_recent_post:get_full_url(blog, tag) if tag then url = blog..'/?json=get_search_results&search='..tag else url = blog..'/?json=get_recent_posts' end local res, code = https.request(url) if code ~= 200 then return nil end local data = json.decode(res).posts[1] if not data then return 'NOTFOUND' end local title = unescape(data.title) local from = unescape(data.author.name) local posted_at = makeOurDate(data.date) local content = data.excerpt:match('

(.*)(.*)

') end if not content then content = "" else content = '\n'..unescape(content)..'...' end local url = data.url if data.thumbnail then image_url = data.thumbnail else image_url = nil end local text = ''..title..'\n'..from..' am '..posted_at..''..content..'\nBeitrag aufrufen.' return text, image_url end function wordpress_recent_post:action(msg, config, matches) local blog = 'https://akamaru.de' local text, image_url = wordpress_recent_post:get_full_url(blog, matches[2]) if not text then utilities.send_reply(msg, config.errors.connection) return elseif text == 'NOTFOUND' then utilities.send_reply(msg, config.errors.results) return end if image_url then utilities.send_typing(msg.chat.id, 'upload_photo') utilities.send_photo(msg.chat.id, image_url, nil, msg.message_id) end utilities.send_reply(msg, text, 'HTML') end return wordpress_recent_post