diff --git a/src/extensions/ua-parser-extensions.js b/src/extensions/ua-parser-extensions.js index 1d528c9..46991cc 100644 --- a/src/extensions/ua-parser-extensions.js +++ b/src/extensions/ua-parser-extensions.js @@ -222,22 +222,25 @@ const Fetchers = Object.freeze({ // BingPreview / Mastodon / Pinterestbot / Redditbot / Rogerbot / SiteAuditBot / Telegrambot / Twitterbot / UptimeRobot // Google Site Verifier / Meta / Yahoo! Japan // Yandex Bots - https://yandex.com/bots - /(ahrefssiteaudit|bingpreview|chatgpt-user|mastodon|(?:discord|duckassist|linkedin|pinterest|reddit|roger|siteaudit|telegram|twitter|uptimero)bot|google-site-verification|meta-externalfetcher|y!?j-dlc|yandex(?:calendar|direct(?:dyn)?|searchshop)|yadirectfetcher)\/([\w\.]+)/i, + /(ahrefssiteaudit|bingpreview|chatgpt-user|mastodon|(?:discord|duckassist|linkedin|pinterest|reddit|roger|siteaudit|twitter|uptimero)bot|google-site-verification|meta-externalfetcher|y!?j-dlc|yandex(?:calendar|direct(?:dyn)?|searchshop)|yadirectfetcher)\/([\w\.]+)/i, // Bluesky /(bluesky) cardyb\/([\w\.]+)/i, + // Skype + /(skypeuripreview) preview\/([\w\.]+)/i, + // Slackbot - https://api.slack.com/robots /(slack(?:bot)?(?:-imgproxy|-linkexpanding)?) ([\w\.]+)/i, // WhatsApp - /(whatsapp)\/([\w\.]+)[\/ ][ianw]/i + /(whatsapp)\/([\w\.]+)/i ], [NAME, VERSION, [TYPE, FETCHER]], [ // Google Bots / Cohere / Snapchat / Vercelbot / Yandex Bots - /(cohere-ai|vercelbot|feedfetcher-google|google(?:-read-aloud|producer)|(?=bot; )snapchat|yandex(?:sitelinks|userproxy))/i + /(cohere-ai|vercelbot|feedfetcher-google|google(?:imageproxy|-read-aloud|-pagerenderer|producer)|snap url preview|telegrambot|yandex(?:sitelinks|userproxy))/i ], [NAME, [TYPE, FETCHER]], ] diff --git a/test/data/ua/extension/fetcher.json b/test/data/ua/extension/fetcher.json index 075281e..41d819e 100644 --- a/test/data/ua/extension/fetcher.json +++ b/test/data/ua/extension/fetcher.json @@ -59,6 +59,16 @@ "type" : "fetcher" } }, + { + "desc" : "Google Image Proxy", + "ua" : "Mozilla/5.0 (Windows NT 5.1; rv:11.0) Gecko Firefox/11.0 (via ggpht.com GoogleImageProxy)", + "expect" : + { + "name" : "GoogleImageProxy", + "version" : "undefined", + "type" : "fetcher" + } + }, { "desc" : "Google Read Aloud - Mobile agent", "ua" : "Mozilla/5.0 (Linux; Android 7.0; SM-G930V Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.125 Mobile Safari/537.36 (compatible; Google-Read-Aloud; +https://support.google.com/webmasters/answer/1061943)", @@ -79,6 +89,16 @@ "type" : "fetcher" } }, + { + "desc" : "Google Page Renderer", + "ua" : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36 Google-PageRenderer Google (+https://developers.google.com/+/web/snippet/) ", + "expect" : + { + "name" : "Google-PageRenderer", + "version" : "undefined", + "type" : "fetcher" + } + }, { "desc" : "Google Publisher Center", "ua" : "GoogleProducer; (+https://developers.google.com/search/docs/crawling-indexing/google-producer)", @@ -129,6 +149,36 @@ "type" : "fetcher" } }, + { + "desc" : "Snap URL Preview", + "ua" : "Snap URL Preview Service; bot; snapchat; https://developers.snap.com/robots ", + "expect" : + { + "name" : "Snap URL Preview", + "version" : "undefined", + "type" : "fetcher" + } + }, + { + "desc" : "SkypeUriPreview", + "ua" : "Mozilla/5.0 (Windows NT 6.1; WOW64) SkypeUriPreview Preview/0.5 skype-url-preview@microsoft.com", + "expect" : + { + "name" : "SkypeUriPreview", + "version" : "0.5", + "type" : "fetcher" + } + }, + { + "desc" : "TelegramBot", + "ua" : "TelegramBot (like TwitterBot)", + "expect" : + { + "name" : "TelegramBot", + "version" : "undefined", + "type" : "fetcher" + } + }, { "desc" : "UptimeRobot", "ua" : "Mozilla/5.0 (compatible; UptimeRobot/2.0; http://www.uptimerobot.com/)", @@ -148,5 +198,15 @@ "version" : "undefined", "type" : "fetcher" } + }, + { + "desc" : "WhatsApp", + "ua" : "WhatsApp/2.23.20.0", + "expect" : + { + "name" : "WhatsApp", + "version" : "2.23.20.0", + "type" : "fetcher" + } } ] \ No newline at end of file