From 6201dd66dc7f39a1acf6ea853edc4bc8db707e28 Mon Sep 17 00:00:00 2001 From: yago Date: Sat, 11 Oct 2014 16:27:37 +0200 Subject: [PATCH] fixed YT thumbnail --- bot/bot.lua | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/bot/bot.lua b/bot/bot.lua index 07a044e..b95927d 100644 --- a/bot/bot.lua +++ b/bot/bot.lua @@ -17,7 +17,7 @@ function on_msg_receive (msg) if is_image_url(msg.text) then send_image_from_url (msg) elseif is_youtube_url(msg.text) then - send_youtube_thumbnail(msg.text) + send_youtube_thumbnail(msg) else if is_file_url(msg.text) then send_file_from_url(msg) @@ -71,14 +71,26 @@ end function is_youtube_url(text) -- http://stackoverflow.com/questions/19377262/regex-for-youtube-url - not_full_yt_url = string.match(text, "youtube.com/watch%?v=([A-Za-z0-9-]*)") == nil - not_short_yt_url = string.match(text, "youtu.be/([A-Za-z0-9-]*)") == nil - yt = full_yt_url or short_yt_url - return yt + if string.match(text, "youtube.com/watch%?v=([A-Za-z0-9-]+)") then + return true + end + if string.match(text, "youtu.be/([A-Za-z0-9-]+)") then + return true + end + return false end function send_youtube_thumbnail(msg) - yt_thumbnail = "http://img.youtube.com/vi/".. string.match(msg.text, "([A-Za-z0-9-]*)").."/hqdefault.jpg" + local yt_normal = string.match(msg.text, "youtube.com/watch%?v=([A-Za-z0-9-]+)") + if yt_normal then + yt_code = yt_normal + end + yt_short = string.match(msg.text, "youtu.be/([A-Za-z0-9-]+)") + if yt_short then + yt_code = yt_short + end + yt_thumbnail = "http://img.youtube.com/vi/".. yt_code .."/hqdefault.jpg" + print (yt_thumbnail) file = download_to_file(yt_thumbnail) send_photo(get_receiver(msg), file, ok_cb, false) end