From 6f9d010ed35004a5836d22bb97dd72c089b50d89 Mon Sep 17 00:00:00 2001 From: Sivagiri Visakan Date: Sat, 9 Dec 2017 15:32:16 +0530 Subject: [PATCH] bots: Refactor Youtube bot. --- .../youtube/__init__.py | 0 .../youtube/assets/youtube-api-enabled.png | Bin 0 -> 82048 bytes .../bots/youtube/assets/youtube-error.png | Bin 0 -> 7063 bytes .../bots/youtube/assets/youtube-list.png | Bin 0 -> 29545 bytes .../bots/youtube/assets/youtube-not-found.png | Bin 0 -> 9382 bytes .../bots/youtube/assets/youtube-search.png | Bin 0 -> 32846 bytes zulip_bots/zulip_bots/bots/youtube/doc.md | 64 ++++++ .../youtube/fixtures/test_invalid_key.json | 31 +++ .../bots/youtube/fixtures/test_keyok.json | 64 ++++++ .../bots/youtube/fixtures/test_multiple.json | 195 ++++++++++++++++++ .../bots/youtube/fixtures/test_noresult.json | 28 +++ .../bots/youtube/fixtures/test_single.json | 64 ++++++ .../zulip_bots/bots/youtube/test_youtube.py | 80 +++++++ .../zulip_bots/bots/youtube/youtube.conf | 4 + zulip_bots/zulip_bots/bots/youtube/youtube.py | 133 ++++++++++++ .../youtube/assets/screen.png | Bin 82639 -> 0 bytes .../bots_unmaintained/youtube/doc.md | 11 - .../bots_unmaintained/youtube/youtube.py | 31 --- 18 files changed, 663 insertions(+), 42 deletions(-) rename zulip_bots/zulip_bots/{bots_unmaintained => bots}/youtube/__init__.py (100%) create mode 100644 zulip_bots/zulip_bots/bots/youtube/assets/youtube-api-enabled.png create mode 100644 zulip_bots/zulip_bots/bots/youtube/assets/youtube-error.png create mode 100644 zulip_bots/zulip_bots/bots/youtube/assets/youtube-list.png create mode 100644 zulip_bots/zulip_bots/bots/youtube/assets/youtube-not-found.png create mode 100644 zulip_bots/zulip_bots/bots/youtube/assets/youtube-search.png create mode 100644 zulip_bots/zulip_bots/bots/youtube/doc.md create mode 100644 zulip_bots/zulip_bots/bots/youtube/fixtures/test_invalid_key.json create mode 100644 zulip_bots/zulip_bots/bots/youtube/fixtures/test_keyok.json create mode 100644 zulip_bots/zulip_bots/bots/youtube/fixtures/test_multiple.json create mode 100644 zulip_bots/zulip_bots/bots/youtube/fixtures/test_noresult.json create mode 100644 zulip_bots/zulip_bots/bots/youtube/fixtures/test_single.json create mode 100644 zulip_bots/zulip_bots/bots/youtube/test_youtube.py create mode 100644 zulip_bots/zulip_bots/bots/youtube/youtube.conf create mode 100644 zulip_bots/zulip_bots/bots/youtube/youtube.py delete mode 100644 zulip_bots/zulip_bots/bots_unmaintained/youtube/assets/screen.png delete mode 100644 zulip_bots/zulip_bots/bots_unmaintained/youtube/doc.md delete mode 100644 zulip_bots/zulip_bots/bots_unmaintained/youtube/youtube.py diff --git a/zulip_bots/zulip_bots/bots_unmaintained/youtube/__init__.py b/zulip_bots/zulip_bots/bots/youtube/__init__.py similarity index 100% rename from zulip_bots/zulip_bots/bots_unmaintained/youtube/__init__.py rename to zulip_bots/zulip_bots/bots/youtube/__init__.py diff --git a/zulip_bots/zulip_bots/bots/youtube/assets/youtube-api-enabled.png b/zulip_bots/zulip_bots/bots/youtube/assets/youtube-api-enabled.png new file mode 100644 index 0000000000000000000000000000000000000000..1a0d752b0ba9b1ad94de0d286e02c4e093aea353 GIT binary patch literal 82048 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 literal 0 HcmV?d00001 diff --git a/zulip_bots/zulip_bots/bots/youtube/assets/youtube-error.png b/zulip_bots/zulip_bots/bots/youtube/assets/youtube-error.png new file mode 100644 index 0000000000000000000000000000000000000000..79ce50469db67dea5cfe93b6ef9655f802b02455 GIT binary patch literal 7063 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 literal 0 HcmV?d00001 diff --git a/zulip_bots/zulip_bots/bots/youtube/assets/youtube-list.png b/zulip_bots/zulip_bots/bots/youtube/assets/youtube-list.png new file mode 100644 index 0000000000000000000000000000000000000000..1ebd50f4b792cddbc21b5ab0f65df1fdddd8f224 GIT binary patch literal 29545 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 O2#}LfmaG*w3Hcu{^&Xl4 literal 0 HcmV?d00001 diff --git a/zulip_bots/zulip_bots/bots/youtube/assets/youtube-search.png b/zulip_bots/zulip_bots/bots/youtube/assets/youtube-search.png new file mode 100644 index 0000000000000000000000000000000000000000..6c1ee275896a0e1e595a7bde4671fb01543785e6 GIT binary patch literal 32846 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 PzfoIVU#$-282i5fv{nG& literal 0 HcmV?d00001 diff --git a/zulip_bots/zulip_bots/bots/youtube/doc.md b/zulip_bots/zulip_bots/bots/youtube/doc.md new file mode 100644 index 0000000..4a89ee8 --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/doc.md @@ -0,0 +1,64 @@ +# YouTube bot + +The YouTube bot is a Zulip bot that can search for videos from [YouTube](https://www.youtube.com/). + +To use the YouTube bot, you can simply call it with `@YouTube` followed +by a keyword(s), like so: + +``` +@YouTube funny cats +``` + +## Setup + +Before starting you will need a Developer's API key to run the bot. +To obtain a API key, follow the following steps : + + 1. Create a project in the [Google Developers Console](https://console.developers.google.com/) + + 2. Open the [API Library](https://console.developers.google.com/apis/library?project=_) + in the Google Developers Console. If prompted, select a project or create a new one. + In the list of APIs, select `Youtube Data API v3` and make sure it is enabled . + + 3. Open the [Credentials](https://console.developers.google.com/apis/credentials?project=_) page. + + 4. In the Credentials page , select *Create Credentials > API key* + + 5. Open `zulip_bots/bots/youtube/youtube.conf` in an editor and + and change the value of the `key` attribute to the API key + you generated above. + + 6. And that's it ! See Configuration section on configuring the bot. +{!running-a-bot.md!} + +## Configuration + +This section explains the usage of options `youtube.conf` file in configuring the bot. + - `key` - Used for setting the API key. See the above section on setting up the bot. + + - `number_of_results` - The maximum number of videos to show when searching + for a list of videos with the `@YouTube list ` command. + + - `video_region` - The location to be used for searching. + The bot shows only the videos that are available in the given `` + +## Usage + +1. `@YouTube ` + - This command search YouTube with the given keyword and gives the top result of the search. + This can also be done with the command `@YouTube top ` + - Example usage: `@YouTube funny cats` , `@YouTube top funny dogs` + ![](/static/generated/bots/youtube/assets/youtube-search.png) + +2. `@YouTube list ` + - This command search YouTube with the given keyword and gives a list of videos associated with the keyword. + - Example usage: `@YouTube list origami` + ![](/static/generated/bots/youtube/assets/youtube-list.png) + +2. If a video can't be found for a given keyword, the bot will + respond with an error message + ![](/static/generated/bots/youtube/assets/youtube-not-found.png) + +3. If there's a error while searching, the bot will respond with an + error message + ![](/static/generated/bots/youtube/assets/youtube-error.png) diff --git a/zulip_bots/zulip_bots/bots/youtube/fixtures/test_invalid_key.json b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_invalid_key.json new file mode 100644 index 0000000..a1fc608 --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_invalid_key.json @@ -0,0 +1,31 @@ +{ + "request": { + "api_url": "https://www.googleapis.com/youtube/v3/search", + "params": { + "part": "id,snippet", + "maxResults": 1, + "key": "somethinginvalid", + "q": "test", + "alt": "json", + "type": "video", + "regionCode": "US" + } + }, + "response": { + "error": { + "errors": [ + { + "domain": "usageLimits", + "reason": "keyInvalid", + "message": "Bad Request" + } + ], + "code": 400, + "message": "Bad Request" + } + }, + "response-headers": { + "status": 400, + "content-type": "application/json; charset=utf-8" + } +} diff --git a/zulip_bots/zulip_bots/bots/youtube/fixtures/test_keyok.json b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_keyok.json new file mode 100644 index 0000000..0eacfe9 --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_keyok.json @@ -0,0 +1,64 @@ +{ + "request": { + "api_url": "https://www.googleapis.com/youtube/v3/search", + "params": { + "part": "id,snippet", + "maxResults": 1, + "key": "12345678", + "q": "test", + "alt": "json", + "type": "video", + "regionCode": "US" + } + }, + "response": { + + "kind": "youtube#searchListResponse", + "etag": "\"etag\"", + "nextPageToken": "CAEQAA", + "regionCode": "IN", + "pageInfo": { + "totalResults": 1000000, + "resultsPerPage": 1 + }, + "items": [ + { + "kind": "youtube#searchResult", + "etag": "\"etag\"", + "id": { + "kind": "youtube#video", + "videoId": "randomID" + }, + "snippet": { + "publishedAt": "2016-12-24T10:30:00.000Z", + "channelId": "randomChannelID", + "title": "some random title", + "description": "This would be the description of the video", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/randomID/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/randomID/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/randomID/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "title", + "liveBroadcastContent": "none" + } + } + ] +}, + "response-headers": { + "status": 200, + "content-type": "application/json; charset=utf-8" + } +} diff --git a/zulip_bots/zulip_bots/bots/youtube/fixtures/test_multiple.json b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_multiple.json new file mode 100644 index 0000000..cc4af0d --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_multiple.json @@ -0,0 +1,195 @@ +{ + "request": { + "api_url": "https://www.googleapis.com/youtube/v3/search", + "params": { + "part": "id,snippet", + "maxResults": 5, + "key": "12345678", + "q": "marvel", + "alt": "json", + "type": "video", + "regionCode": "US" + } + }, + "response": { + "kind": "youtube#searchListResponse", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/G9CmYGTc8DpRgZib1bcD0ZeBW2o\"", + "nextPageToken": "CAUQAA", + "regionCode": "US", + "pageInfo": { + "totalResults": 1000000, + "resultsPerPage": 5 + }, + "items": [ + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/HSKDFkwbVuEgNHxkHX5mHYrnwJU\"", + "id": { + "kind": "youtube#video", + "videoId": "6ZfuNTqbHE8" + }, + "snippet": { + "publishedAt": "2017-11-29T13:26:24.000Z", + "channelId": "UCvC4D8onUfXzvjTOM-dBfEA", + "title": "Marvel Studios' Avengers: Infinity War Official Trailer", + "description": "\"There was an idea…\" Avengers: Infinity War. In theaters May 4. ▻ Subscribe to Marvel: http://bit.ly/WeO3YJ Follow Marvel on Twitter: https://twitter.com/marvel Like Marvel on FaceBook:...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/6ZfuNTqbHE8/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/6ZfuNTqbHE8/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/6ZfuNTqbHE8/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Marvel Entertainment", + "liveBroadcastContent": "none" + } + }, + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/lPJT_xBo3mCrT-XHBvtwkKLT-hw\"", + "id": { + "kind": "youtube#video", + "videoId": "xjDjIWPwcPU" + }, + "snippet": { + "publishedAt": "2017-10-16T13:00:07.000Z", + "channelId": "UCvC4D8onUfXzvjTOM-dBfEA", + "title": "Marvel Studios' Black Panther - Official Trailer", + "description": "Long live the king. Watch the new trailer for Marvel Studios #BlackPanther. In theaters February 16! ▻ Subscribe to Marvel: http://bit.ly/WeO3YJ Follow Marvel on Twitter: https://twitter.com/...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/xjDjIWPwcPU/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/xjDjIWPwcPU/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/xjDjIWPwcPU/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Marvel Entertainment", + "liveBroadcastContent": "none" + } + }, + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/vuAgL_ymZ4dpC95w3-5JcrrqERM\"", + "id": { + "kind": "youtube#video", + "videoId": "6HTPCTtkWoA" + }, + "snippet": { + "publishedAt": "2017-12-07T19:00:01.000Z", + "channelId": "UCxwitsUVNzwS5XBSC5UQV8Q", + "title": "MARVEL RISING BEGINS! | The Next Generation of Marvel Heroes (EXCLUSIVE)", + "description": "With “Marvel Rising,” the next generation of Marvel heroes has arrived. Rising 2018. --- Cast: Kathleen Khavari – Kamala Khan/Ms. Marvel Milana Vayntrub – Doreen Green/Squirrel Girl...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/6HTPCTtkWoA/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/6HTPCTtkWoA/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/6HTPCTtkWoA/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Marvel HQ", + "liveBroadcastContent": "none" + } + }, + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/NC5lIdIK3cIT6mlmTtw8YSUUf2A\"", + "id": { + "kind": "youtube#video", + "videoId": "-8uqxdcJ9WM" + }, + "snippet": { + "publishedAt": "2017-12-07T16:00:00.000Z", + "channelId": "UCvC4D8onUfXzvjTOM-dBfEA", + "title": "Marvel Contest of Champions Taskmaster Spotlight", + "description": "Subscribe to Marvel: http://bit.ly/WeO3YJ Follow Marvel on Twitter: https://twitter.com/marvel Like Marvel on FaceBook: https://www.facebook.com/Marvel For even more news, stay...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/-8uqxdcJ9WM/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/-8uqxdcJ9WM/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/-8uqxdcJ9WM/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Marvel Entertainment", + "liveBroadcastContent": "none" + } + }, + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/O3fss6u7H9TJ8My3sTMgB1Y4SzU\"", + "id": { + "kind": "youtube#video", + "videoId": "l7rrsGKJ_O4" + }, + "snippet": { + "publishedAt": "2017-12-07T20:59:49.000Z", + "channelId": "UCesCyJp53gCYwhr8fGYEpNw", + "title": "5* Crystal Opening! SO LUCKY! - Marvel Contest Of Champions", + "description": "yoooooooooo i cannot beleive this man.... i honestly dont know why but i decided to open up a basic 5* Crystal...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/l7rrsGKJ_O4/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/l7rrsGKJ_O4/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/l7rrsGKJ_O4/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Lagacy69", + "liveBroadcastContent": "none" + } + } + ] + }, + "response-headers": { + "status": 200, + "content-type": "application/json; charset=utf-8" + } +} diff --git a/zulip_bots/zulip_bots/bots/youtube/fixtures/test_noresult.json b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_noresult.json new file mode 100644 index 0000000..8f3dd73 --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_noresult.json @@ -0,0 +1,28 @@ +{ + "request": { + "api_url": "https://www.googleapis.com/youtube/v3/search", + "params": { + "part": "id,snippet", + "maxResults": 1, + "key": "12345678", + "q": "somethingrandomwithnoresult", + "alt": "json", + "type": "video", + "regionCode": "US" + } + }, + "response": { + "kind": "youtube#searchListResponse", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/-f6JA5_OcXz2RWuH1mpAA2_9mM8\"", + "regionCode": "US", + "pageInfo": { + "totalResults": 0, + "resultsPerPage": 5 + }, + "items": [] + }, + "response-headers": { + "status": 200, + "content-type": "application/json; charset=utf-8" + } +} diff --git a/zulip_bots/zulip_bots/bots/youtube/fixtures/test_single.json b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_single.json new file mode 100644 index 0000000..a2438cc --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/fixtures/test_single.json @@ -0,0 +1,64 @@ +{ + "request": { + "api_url": "https://www.googleapis.com/youtube/v3/search", + "params": { + "part": "id,snippet", + "maxResults": 1, + "key": "12345678", + "q": "funny cats", + "alt": "json", + "type": "video", + "regionCode": "US" + } + }, + "response": { + + "kind": "youtube#searchListResponse", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/XGKpndf94WPFq2HVzaP1-nslXCQ\"", + "nextPageToken": "CAEQAA", + "regionCode": "IN", + "pageInfo": { + "totalResults": 1000000, + "resultsPerPage": 1 + }, + "items": [ + { + "kind": "youtube#searchResult", + "etag": "\"7991kDR-QPaa9r0pePmDjBEa2h8/u2n3wez7ljBkwPSV6WkGrkhsBlI\"", + "id": { + "kind": "youtube#video", + "videoId": "5dsGWM5XGdg" + }, + "snippet": { + "publishedAt": "2016-12-24T10:30:00.000Z", + "channelId": "UCKy3MG7_If9KlVuvw3rPMfw", + "title": "Cats are so funny you will die laughing - Funny cat compilation", + "description": "Cats are simply the funniest and most hilarious pets, they make us laugh all the time! Just look how all these cats & kittens play, fail, get along with dogs and ...", + "thumbnails": { + "default": { + "url": "https://i.ytimg.com/vi/5dsGWM5XGdg/default.jpg", + "width": 120, + "height": 90 + }, + "medium": { + "url": "https://i.ytimg.com/vi/5dsGWM5XGdg/mqdefault.jpg", + "width": 320, + "height": 180 + }, + "high": { + "url": "https://i.ytimg.com/vi/5dsGWM5XGdg/hqdefault.jpg", + "width": 480, + "height": 360 + } + }, + "channelTitle": "Tiger Productions", + "liveBroadcastContent": "none" + } + } + ] +}, + "response-headers": { + "status": 200, + "content-type": "application/json; charset=utf-8" + } +} diff --git a/zulip_bots/zulip_bots/bots/youtube/test_youtube.py b/zulip_bots/zulip_bots/bots/youtube/test_youtube.py new file mode 100644 index 0000000..465de5c --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/test_youtube.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python + +from __future__ import absolute_import + +from unittest.mock import patch +from requests.exceptions import HTTPError, ConnectionError + +from zulip_bots.test_lib import StubBotHandler, StubBotTestCase, get_bot_message_handler +from typing import Any, Union, Dict +class TestYoutubeBot(StubBotTestCase): + bot_name = "youtube" + normal_config = {'key': '12345678', + 'number_of_results': '5', + 'video_region': 'US'} # type: Dict[str,str] + + def test_single(self) -> None: + bot_response = 'Here is what I found for `funny cats` : \n'\ + 'Cats are so funny you will die laughing - ' \ + 'Funny cat compilation - [Watch now](https://www.youtube.com/watch?v=5dsGWM5XGdg)' + + with self.mock_config_info(self.normal_config), \ + self.mock_http_conversation('test_single'): + self.verify_reply('funny cats', bot_response) + + def test_invalid_key(self) -> None: + bot = get_bot_message_handler(self.bot_name) + bot_handler = StubBotHandler() + + with self.mock_config_info({'key': 'somethinginvalid', 'number_of_results': '5', 'video_region': 'US'}), \ + self.mock_http_conversation('test_invalid_key'), \ + self.assertRaises(SystemExit) as se: # type: ignore + bot.initialize(bot_handler) + + def test_multiple(self) -> None: + bot = get_bot_message_handler(self.bot_name) + bot_handler = StubBotHandler() + + bot_response = 'Here is what I found for `marvel` : ' \ + '\n * Marvel Studios\' Avengers: Infinity War Official Trailer - [Watch now](https://www.youtube.com/watch/6ZfuNTqbHE8)' \ + '\n * Marvel Studios\' Black Panther - Official Trailer - [Watch now](https://www.youtube.com/watch/xjDjIWPwcPU)' \ + '\n * MARVEL RISING BEGINS! | The Next Generation of Marvel Heroes (EXCLUSIVE) - [Watch now](https://www.youtube.com/watch/6HTPCTtkWoA)' \ + '\n * Marvel Contest of Champions Taskmaster Spotlight - [Watch now](https://www.youtube.com/watch/-8uqxdcJ9WM)' \ + '\n * 5* Crystal Opening! SO LUCKY! - Marvel Contest Of Champions - [Watch now](https://www.youtube.com/watch/l7rrsGKJ_O4)' + + with self.mock_config_info(self.normal_config), \ + self.mock_http_conversation('test_multiple'): + self.verify_reply('list marvel', bot_response) + + def test_noresult(self) -> None: + bot_response = 'Oops ! Sorry I couldn\'t find any video for `somethingrandomwithnoresult` ' \ + ':slightly_frowning_face:' + + with self.mock_config_info(self.normal_config), \ + self.mock_http_conversation('test_noresult'): + self.verify_reply('somethingrandomwithnoresult', bot_response,) + + def test_help(self) -> None: + help_content = "*Help for YouTube bot* :robot_face: : \n\n" \ + "The bot responds to messages starting with @mention-bot.\n\n" \ + "`@mention-bot ` will return top Youtube video for the given ``.\n" \ + "`@mention-bot top ` also returns the top Youtube result.\n" \ + "`@mention-bot list ` will return a list Youtube videos for the given .\n \n" \ + "Example:\n" \ + " * @mention-bot funny cats\n" \ + " * @mention-bot list funny dogs" + + with self.mock_config_info(self.normal_config), \ + self.mock_http_conversation('test_keyok'): + self.verify_reply('help', help_content) + self.verify_reply('list', help_content) + self.verify_reply('help list', help_content) + self.verify_reply('top', help_content) + self.verify_reply('', help_content) + + def test_connection_error(self) -> None: + with self.mock_config_info(self.normal_config), \ + patch('requests.get', side_effect=ConnectionError()), \ + patch('logging.exception'): + self.verify_reply('Wow !', 'Uh-Oh, couldn\'t process the request ' + 'right now.\nPlease again later') diff --git a/zulip_bots/zulip_bots/bots/youtube/youtube.conf b/zulip_bots/zulip_bots/bots/youtube/youtube.conf new file mode 100644 index 0000000..064cf4d --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/youtube.conf @@ -0,0 +1,4 @@ +[youtube] +key = +number_of_results = 5 +video_region = US \ No newline at end of file diff --git a/zulip_bots/zulip_bots/bots/youtube/youtube.py b/zulip_bots/zulip_bots/bots/youtube/youtube.py new file mode 100644 index 0000000..d975cc1 --- /dev/null +++ b/zulip_bots/zulip_bots/bots/youtube/youtube.py @@ -0,0 +1,133 @@ +from __future__ import absolute_import + +import requests +import logging +import sys + +from requests.exceptions import HTTPError, ConnectionError +from typing import Dict, Any, Union, List, Tuple + +commands_list = ('list', 'top', 'help') + +class YoutubeHandler(object): + + def usage(self) -> str: + return ''' + This plugin will allow users to search + for a given search term on Youtube. + Use '@mention-bot help' to get more information on the bot usage. + ''' + help_content = "*Help for YouTube bot* :robot_face: : \n\n" \ + "The bot responds to messages starting with @mention-bot.\n\n" \ + "`@mention-bot ` will return top Youtube video for the given ``.\n" \ + "`@mention-bot top ` also returns the top Youtube result.\n" \ + "`@mention-bot list ` will return a list Youtube videos for the given .\n \n" \ + "Example:\n" \ + " * @mention-bot funny cats\n" \ + " * @mention-bot list funny dogs" + + def initialize(self, bot_handler: Any) -> None: + self.config_info = bot_handler.get_config_info('youtube') + # Check if API key is valid. If it is not valid, don't run the bot. + try: + search_youtube('test', self.config_info['key'], self.config_info['video_region']) + except HTTPError as e: + if (e.response.json()['error']['errors'][0]['reason'] == 'keyInvalid'): + logging.error('Invalid key.' + 'Follow the instructions in doc.md for setting API key.') + sys.exit(1) + else: + raise + except ConnectionError: + logging.warning('Bad connection') + + def handle_message(self, message: Dict[str, str], bot_handler: Any) -> None: + + if message['content'] == '' or message['content'] == 'help': + bot_handler.send_reply(message, self.help_content) + else: + cmd, query = get_command_query(message) + bot_response = get_bot_response(query, + cmd, + self.config_info) + logging.info(bot_response.format()) + bot_handler.send_reply(message, bot_response) + + +def search_youtube(query: str, key: str, + region: str, max_results: int = 1) -> List[List[str]]: + + videos = [] + params = { + 'part': 'id,snippet', + 'maxResults': max_results, + 'key': key, + 'q': query, + 'alt': 'json', + 'type': 'video', + 'regionCode': region} # type: Dict[str, Union[str, int]] + + url = 'https://www.googleapis.com/youtube/v3/search' + try: + r = requests.get(url, params=params) + except ConnectionError as e: # Usually triggered by bad connection. + logging.exception('Bad connection') + raise + r.raise_for_status() + search_response = r.json() + # Add each result to the appropriate list, and then display the lists of + # matching videos, channels, and playlists. + for search_result in search_response.get('items', []): + if search_result['id']['kind'] == 'youtube#video': + videos.append([search_result['snippet']['title'], + search_result['id']['videoId']]) + return videos + + +def get_command_query(message: Dict[str, str]) -> Tuple[Union[None, str], str]: + blocks = message['content'].lower().split() + command = blocks[0] + if command in commands_list: + query = message['content'][len(command) + 1:].lstrip() + return command, query + else: + return None, message['content'] + + +def get_bot_response(query: Union[str, None], command: Union[str, None], config_info: Dict[str, str]) -> str: + + key = config_info['key'] + max_results = int(config_info['number_of_results']) + region = config_info['video_region'] + reply = 'Here is what I found for `' + query + '` : ' + video_list = [] # type: List[List[str]] + try: + if query == '' or query is None: + return YoutubeHandler.help_content + if command is None or command == 'top': + video_list = search_youtube(query, key, region) + + elif command == 'list': + video_list = search_youtube(query, key, region, max_results) + + elif command == 'help': + return YoutubeHandler.help_content + + except (ConnectionError, HTTPError): + return 'Uh-Oh, couldn\'t process the request ' \ + 'right now.\nPlease again later' + + if len(video_list) == 0: + return 'Oops ! Sorry I couldn\'t find any video for `' + query + '` :slightly_frowning_face:' + elif len(video_list) == 1: + return (reply + '\n%s - [Watch now](https://www.youtube.com/watch?v=%s)' % (video_list[0][0], video_list[0][1])).strip() + + for title, id in video_list: + reply = reply + \ + '\n * %s - [Watch now](https://www.youtube.com/watch/%s)' % (title, id) + # Using link https://www.youtube.com/watch/ to + # prevent showing multiple previews + return reply + + +handler_class = YoutubeHandler diff --git a/zulip_bots/zulip_bots/bots_unmaintained/youtube/assets/screen.png b/zulip_bots/zulip_bots/bots_unmaintained/youtube/assets/screen.png deleted file mode 100644 index 95998c645940974d3e83645f76f39eec0305ac82..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82639 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 -``` - -![example usage](assets/screen.png) diff --git a/zulip_bots/zulip_bots/bots_unmaintained/youtube/youtube.py b/zulip_bots/zulip_bots/bots_unmaintained/youtube/youtube.py deleted file mode 100644 index 5a78ad4..0000000 --- a/zulip_bots/zulip_bots/bots_unmaintained/youtube/youtube.py +++ /dev/null @@ -1,31 +0,0 @@ -# See readme.md for instructions on running this bot. -import requests -from bs4 import BeautifulSoup - -class YoutubeHandler(object): - def usage(self): - return ''' - This bot will return the first Youtube search result for the give query. - ''' - - def handle_message(self, message, bot_handler): - help_content = ''' - To use the, Youtube Bot send `@mention-bot search terms` - Example: - @mention-bot funny cats - '''.strip() - if message['content'] == '': - bot_handler.send_reply(message, help_content) - else: - text_to_search = message['content'] - url = "https://www.youtube.com/results?search_query=" + text_to_search - r = requests.get(url) - soup = BeautifulSoup(r.text, 'lxml') - video_id = soup.find(attrs={'class': 'yt-uix-tile-link'}) - try: - link = 'https://www.youtube.com' + video_id['href'] - bot_handler.send_reply(message, link) - except TypeError: - bot_handler.send_reply(message, 'No video found for specified search terms') - -handler_class = YoutubeHandler