bot.incolumitas.com
Open in
urlscan Pro
167.99.241.135
Public Scan
URL:
https://bot.incolumitas.com/
Submission: On October 13 via manual from US — Scanned from DE
Submission: On October 13 via manual from US — Scanned from DE
Form analysis
0 forms found in the DOMText Content
CURATED LIST OF BOT / HEADLESS CHROME DETECTION TESTS v0.6.1 (29th June 2022) 🚀 [Changelog] Use with Puppeteer Use with Playwright Use with Google Chrome Use with Advanced Bot Use with Selenium This page attempts to detect if you are a Bot or Not. The tests are constantly kept up to date, please check the changelog here. Table of Contents 1. Behavioral Classification 2. More Sources and Links 3. Bot Challenge 4. New Detection Tests 5. Old Detection Tests 6. Datacenter IP Address API 7. Proxy/VPN Detection Tests 8. Http Headers 9. TCP/IP Fingerprint 10. TLS Fingerprint 11. JA3 TLS Fingerprint 12. Browser Fingerprint 13. Canvas Fingerprint 14. WebGL Fingerprint 15. Web Worker 16. Service Worker 17. Browser Data -------------------------------------------------------------------------------- BEHAVIORAL BOT CLASSIFICATION The test behavioralClassificationScore gives a rating between 0 (Bot) and 1 (Human) based on advanced behavioral heuristics. A score below 0.5 means that you are most likely a bot. The first score is computed after 1,5 seconds of browsing on this site. Then, the behavioral score is updated after 4 seconds, 7 seconds, 10 seconds and 15 seconds. Don't worry if you are browsing this page and you are given a score between 0.7 and 1.0, the behavioralClassificationScore consist of 30+ individual classificators and it is normal that there are false positives. In order to test your bot with a real world problem, your bot has to solve the challenge below. Your Behavioral Score: 1 Behavioral Bot Score after 1500ms: 1 Behavioral Bot Score after 4000ms: 1 Behavioral Bot Score after 7000ms: 1 Behavioral Bot Score after 10000ms: 1 Behavioral Bot Score after 15000ms: 1 -------------------------------------------------------------------------------- MORE SOURCES/INFORMATION Expand all Sources / Links -------------------------------------------------------------------------------- RESOURCES AND SOURCES 1. Kinda outdated (selenium, phantomjs): bot.sannysoft.com and a GitHub repo from early 2019 with similar detection techniques. 2. Headless detection GitHub Repo, last update in 2019 3. Lot of good stuff from here: puppeteer-extra-plugin-stealth 4. Antoine Vastel: antoinevastel.com/bots and a more recent detection page using HTTP Headers and his employers datadome detection page 5. Pretty active GitHub Gist about preventing puppeteer detection 6. Rather new detection method found on GitHub 7. Vastel is detecting puppeteer with HTTP headers in early 2019... 8. hacker news discussion started by Vastel 9. And the response from Evan Sangaline, where he passes the new detection again 10. Rather recent article (February 2020) about Bot Detection 101 principles 11. Very recent (31 January 2021) and powerful bot / headless / puppeteer detection techniques 12. Che Browser, is it any good? 13. SecretAgent, The Web Browser Built for Scraping 14. CanvasBlocker nice Firefox plugin to prevent canvas fingerprinting 15. A very good article from pixelprivacy.com about Browser Fingerprinting OTHER BOT DETECTION SITES * browserleaks.com (very valuable information) * pixelscan (quite good and new) * creepjs (this guy is crazy) * f.vision (seems to do a very good job) * whatleaks.com (focuses on proxy detection and the networking detection aspects) THE CATS: ANTI BOT COMPANIES The following Anti Bot companies are all using their custom JavaScript detection algorithms. * Kasada * Shape Security * DataDome * Distil Networks (Acuired) * Imperva * Incapsula (Imperva now) * PerimeterX * Akamai * FingerprintJS * WhiteOps * ShieldSquare * F5 * Cloudflare (The End Boss) * Arkose Labs * Forter Protection * reCAPTCHA * BioCatch MOUSES: BOT/PROXY COMPANIES (SELECTION) The following Bot/Proxy companies are either selling bot/scraping or anonymization technology (Proxies, VPN) * ZenScrape * Luminati.io / Brightdata * Oxylabs * Smartproxy * Storm Proxies * scraperapi.com * scrapingrobot.com * GeoSurf * NetNut * SOAX * scrapinghub * PacketStream * Apify * scrapingbee.com -------------------------------------------------------------------------------- BOT CHALLENGE Your bot has to fill out the form below and submit it. Then you are prompted to confirm the pop-up dialoge. After confirmation, you will see a table with basket items and prices. Update the prices of this table and scrape the data as a final step. Completing all those steps provides enough behaviroal information in order to classify you as BotOrNot. Show Code to Solve The Bot Challenge -------------------------------------------------------------------------------- Bot Challenge Username Email Number of Cookies One Cookie Two Cookies Three Cookies I want all the Cookies I agree to the terms and conditions I like Cats I like big Cats Submit Name Price URL Price Update -------------------------------------------------------------------------------- NEW DETECTION TESTS [1] [2] [3] [4] { "puppeteerEvaluationScript": "OK", "webdriverPresent": "OK", "connectionRTT": "FAIL", "refMatch": "FAIL", "overrideTest": "FAIL", "overflowTest": "FAIL", "puppeteerExtraStealthUsed": "OK", "inconsistentUserAgent": "OK", "inconsistentLanguages": "FAIL", "inconsistentWebWorkerNavigatorPropery": "FAIL", "inconsistentServiceWorkerNavigatorPropery": "FAIL", "behavioralClassificationScore": 1 } -------------------------------------------------------------------------------- OLD BOT DETECTION TESTS (INTOLI.COM TESTS + ADDITIONS, FINGERPRINT SCANNER TESTS) { "intoli": { "userAgent": "OK", "webDriver": "OK", "webDriverAdvanced": "OK", "pluginsLength": "OK", "pluginArray": "OK", "languages": "OK" }, "fpscanner": { "PHANTOM_UA": "OK", "PHANTOM_PROPERTIES": "OK", "PHANTOM_ETSL": "OK", "PHANTOM_LANGUAGE": "OK", "PHANTOM_WEBSOCKET": "OK", "MQ_SCREEN": "OK", "PHANTOM_OVERFLOW": "OK", "PHANTOM_WINDOW_HEIGHT": "OK", "HEADCHR_UA": "OK", "WEBDRIVER": "FAIL", "HEADCHR_CHROME_OBJ": "OK", "HEADCHR_PERMISSIONS": "OK", "HEADCHR_PLUGINS": "OK", "HEADCHR_IFRAME": "OK", "CHR_DEBUG_TOOLS": "OK", "SELENIUM_DRIVER": "OK", "CHR_BATTERY": "OK", "CHR_MEMORY": "OK", "TRANSPARENT_PIXEL": "OK", "SEQUENTUM": "OK", "VIDEO_CODECS": "OK" } } -------------------------------------------------------------------------------- DATACENTER IP ADDRESS API [1] I maintain a public API to check whether an IP address belongs to a data center IP address range such as Azure, AWS, Digitalocean, Google Cloud Platform and many other cloud providers. Please read the full blog article for more a thorough introduction. { "ip": "81.95.5.42", "rir": "RIPE NCC", "is_bogon": false, "is_datacenter": false, "is_tor": false, "is_proxy": false, "is_abuser": false, "company": { "name": "Core-Backbone GmbH", "domain": "core-backbone.com", "network": "81.95.0.0 - 81.95.15.255", "whois": "https://api.incolumitas.com/?whois=81.95.0.0" }, "asn": { "asn": 201011, "route": "81.95.0.0/20", "descr": "NETZBETRIEB-GMBH, DE", "country": "de", "active": true, "org": "AS33891 Netzbetrieb GmbH", "domain": "as33891.net", "type": "business", "created": "2015-02-20", "updated": "2018-09-04", "rir": "ripe", "whois": "https://api.incolumitas.com/?whois=AS201011" }, "location": { "country": "DE", "continent": "EU", "state": "Bavaria", "city": "Lappersdorf (Kareth)", "latitude": "49.0533", "longitude": "12.0726", "ipdeny_country": "de", "maxmind_geolite2_country": "de", "ipip_country": "de", "ip2location_country": "DE", "ip2location_state": "Bayern", "ip2location_city": "Nuremberg" }, "elapsed_ms": 8.28 } -------------------------------------------------------------------------------- PROXY/VPN DETECTION TESTS Visit the Proxy/VPN detection Test Page The Proxy/VPN detection test can be found on a dedicated page because the large test battery would otherwise clog this detection page. Those techniques are: * Latency Test: Compare ping from browser to server with ping from web server to external IP address * WebRTC Test: Check if WebRTC leaks the real IP address * TCP/IP Fingerprint Test: Compare the OS induced from the TCP/IP fingerprint with the OS advertised by the User-Agent * Open Ports Test: Check if the host connecting to the web server has open ports * Datacenter IP Test: Check if the IP address belongs to a datacenter * DNS Leak Test: Check if the DNS server of the client leaks any data * IP Timezone vs Browser Timezone Test: Compare the IP geolocation timezone with the browser timezone * HTTP Proxy Headers Test: Look for suspicious proxy headers in the HTTP headers * And many other tests that are constantly being updated! -------------------------------------------------------------------------------- HTTP HEADERS { "host": "abs.incolumitas.com", "x-real-ip": "81.95.5.42", "connection": "close", "pragma": "no-cache", "cache-control": "no-cache", "accept-language": "de-DE,de;q=0.9", "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "accept": "*/*", "origin": "https://bot.incolumitas.com", "sec-fetch-site": "same-site", "sec-fetch-mode": "cors", "sec-fetch-dest": "empty", "referer": "https://bot.incolumitas.com/", "accept-encoding": "gzip, deflate, br" } -------------------------------------------------------------------------------- ZARDAXT.PY - PASSIVE TCP/IP FINGERPRINT [1] Several fields such as TCP Options or TCP Window Size or IP Fragment Flag depend heavily on the OS type and version. Detecting operating systems by analyzing the first incoming SYN packet is surely no exact science, but it's better than nothing. The TCP/IP fingerprinting API allows you to get your TCP/IP fingerprint. It can be used for various purposes such as: Networking traffic analysis, Malware detection, bot detection, Proxy / VPN detection and so on. { "avgScoreOsClass": { "Android": "avg=7.13, N=230", "Linux": "avg=8.56, N=360", "Windows": "avg=4.77, N=1378", "iOS": "avg=4.84, N=152", "macOS": "avg=4.69, N=791" }, "bestNGuesses": [ { "os": "Linux", "score": "9.0/11.5" }, { "os": "Linux", "score": "9.0/11.5" }, { "os": "Linux", "score": "9.0/11.5" } ], "fp": { "dst_ip": "167.99.241.135", "dst_port": "443", "ip_df": 1, "ip_frag_off": 16384, "ip_hdr_length": 20, "ip_mf": 0, "ip_opts": [], "ip_ttl": 57, "packet_received": 1749325.12059187, "src_ip": "81.95.5.42", "src_port": "33268", "tcp_ack": 0, "tcp_flags": 2, "tcp_header_length": 160, "tcp_mss": 1326, "tcp_options": "M1326,S,T,N,W7,", "tcp_seq": 1835435615, "tcp_timestamp": 3858644118, "tcp_timestamp_echo_reply": 0, "tcp_urp": 0, "tcp_window_scaling": 7, "tcp_window_size": 64240, "ts": 1665683662, "uptime_interpolation": { "hz": "unknown", "hz_observed": 129.37296537436157, "num_timestamps": 8, "uptime": "345 days, 4:55:37.601626" } }, "ip": "81.95.5.42", "os_mismatch": true, "perfectScore": 11.5, "vpn_detected": false } -------------------------------------------------------------------------------- TLS FINGERPRINT [1] The TLS fingerprinting API allows you to get your TLS fingerprint. It can be used for various purposes such as: Networking traffic analyisis, Malware detection and Bot detection. { "num_fingerprints": 7, "sha3_384": "679debde30e70ab9700797eaa2aa3062b960efb75443103f94b3d68abb66d706d46c9885b9e52fcb91f5838378e815e0", "tls_fp": { "ciphers": "GREASE,4865,4866,4867,49195,49199,49196,49200,52393,52392,49171,49172,156,157,47,53", "client_hello_version": "TLS 1.2", "ec_point_formats": "0", "extensions": "0,23,10,11,16,5,13,18,51,45,43,27", "record_version": "TLS 1.0", "signature_algorithms": "1027,2052,1025,1283,2053,1281,2054,1537", "supported_groups": "29,23,24" }, "user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "utc_now": "2022-10-13 17:54:22.890957" } -------------------------------------------------------------------------------- JA3 - PASSIVE SSL/TLS FINGERPRINT [1] [] -------------------------------------------------------------------------------- FINGERPRINTJS - BROWSER FINGERPRINT [1] a2d0ce014e78ed2cbdd2e7e815a3f70a -------------------------------------------------------------------------------- CANVAS FINGERPRINT [1] 162F4A67 -------------------------------------------------------------------------------- WEBGL FINGERPRINT [1] 7e3c427c5519a2ac8a89717666f0fa4a2837689149bf1ce101133ef5b4b2055b -------------------------------------------------------------------------------- WEB WORKER NAVIGATORY PROPERTY [1] { "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "appVersion": "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "platform": "Linux x86_64", "deviceMemory": 8, "hardwareConcurrency": 12, "language": "en-US", "languages": [ "en-US" ] } -------------------------------------------------------------------------------- SERVICE WORKER DATA [1] { "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/106.0.5249.119 Safari/537.36", "appVersion": "5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/106.0.5249.119 Safari/537.36", "platform": "Linux x86_64", "deviceMemory": 8, "hardwareConcurrency": 12, "language": "en-US", "languages": [ "en-US" ] } -------------------------------------------------------------------------------- FP-COLLECT INFO (MODIFIED BY ME) { "byteLength": "unknown", "appVersion": "5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "onLine": true, "doNotTrack": null, "hardwareConcurrency": 4, "timezone": 0, "timezone2": "Etc/Unknown", "systemTime": "Thu Oct 13 2022 17:54:23 GMT+0000 (GMT)", "getTimezoneOffset": 0, "toLocaleString": "10/13/2022, 5:54:23 PM", "historyLength": 2, "indexedDB": true, "openDatabase": false, "product": "Gecko", "fmget": false, "domAutomation": false, "cookieEnabled": true, "sendBeaconAvailable": true, "appName": "Netscape", "vendor": "Google Inc.", "appCodeName": "Mozilla", "userMediaAvailable": true, "javaEnabled": false, "batteryDetails": { "charging": true, "chargingTime": 0, "dischargingTime": null, "level": 1 }, "plugins": [ "Chrome PDF Plugin::Portable Document Format::internal-pdf-viewer::__application/x-google-chrome-pdf~pdf~Portable Document Format", "Chrome PDF Viewer::::mhjfbmdgcfjbbpaeojofohoefgiehjai::__application/pdf~pdf~", "Native Client::::internal-nacl-plugin::__application/x-nacl~~Native Client Executable,application/x-pnacl~~Portable Native Client Executable" ], "mimeTypes": [ "~~application/pdf~~pdf", "Portable Document Format~~application/x-google-chrome-pdf~~pdf", "Native Client Executable~~application/x-nacl~~", "Portable Native Client Executable~~application/x-pnacl~~" ], "userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.5249.119 Safari/537.36", "platform": "Win32", "language": "en-US", "languages": [ "en-US", "en" ], "screen": { "wInnerHeight": 1200, "wOuterHeight": 1200, "wOuterWidth": 1600, "wInnerWidth": 1600, "wScreenX": 0, "wPageXOffset": 0, "wPageYOffset": 0, "cWidth": 1600, "cHeight": 5192, "sWidth": 1600, "sHeight": 1200, "sAvailWidth": 1600, "sAvailHeight": 1200, "sColorDepth": 24, "sPixelDepth": 24, "wDevicePixelRatio": 1 }, "touchScreen": [ 0, false, false ], "videoCard": [ "Intel Inc.", "Intel Iris OpenGL Engine" ], "multimediaDevices": { "speakers": 0, "micros": 0, "webcams": 0 }, "productSub": "20030107", "navigatorPrototype": [ "vendorSub~~~function get vendorSub() { [native code] }", "productSub~~~function get productSub() { [native code] }", "vendor~~~function get vendor() { [native code] }", "maxTouchPoints~~~function get maxTouchPoints() { [native code] }", "scheduling~~~function get scheduling() { [native code] }", "userActivation~~~function get userActivation() { [native code] }", "doNotTrack~~~function get doNotTrack() { [native code] }", "geolocation~~~function get geolocation() { [native code] }", "connection~~~function get connection() { [native code] }", "plugins~~~get() {\n return value\n }", "mimeTypes~~~get() {\n return value\n }", "pdfViewerEnabled~~~function get pdfViewerEnabled() { [native code] }", "webkitTemporaryStorage~~~function get webkitTemporaryStorage() { [native code] }", "webkitPersistentStorage~~~function get webkitPersistentStorage() { [native code] }", "hardwareConcurrency~~~function get hardwareConcurrency() { [native code] }", "cookieEnabled~~~function get cookieEnabled() { [native code] }", "appCodeName~~~function get appCodeName() { [native code] }", "appName~~~function get appName() { [native code] }", "appVersion~~~function get appVersion() { [native code] }", "platform~~~function get platform() { [native code] }", "product~~~function get product() { [native code] }", "userAgent~~~function get userAgent() { [native code] }", "language~~~function get language() { [native code] }", "languages~~~function get languages() { [native code] }", "onLine~~~function get onLine() { [native code] }", "webdriver~~~function get webdriver() { [native code] }", "getGamepads~~~function getGamepads() { [native code] }", "javaEnabled~~~function javaEnabled() { [native code] }", "sendBeacon~~~function sendBeacon() { [native code] }", "vibrate~~~function vibrate() { [native code] }", "constructor~~~function Navigator() { [native code] }", "clipboard~~~function get clipboard() { [native code] }", "credentials~~~function get credentials() { [native code] }", "keyboard~~~function get keyboard() { [native code] }", "managed~~~function get managed() { [native code] }", "mediaDevices~~~function get mediaDevices() { [native code] }", "storage~~~function get storage() { [native code] }", "serviceWorker~~~function get serviceWorker() { [native code] }", "virtualKeyboard~~~function get virtualKeyboard() { [native code] }", "wakeLock~~~function get wakeLock() { [native code] }", "deviceMemory~~~function get deviceMemory() { [native code] }", "ink~~~function get ink() { [native code] }", "hid~~~function get hid() { [native code] }", "locks~~~function get locks() { [native code] }", "mediaCapabilities~~~function get mediaCapabilities() { [native code] }", "mediaSession~~~function get mediaSession() { [native code] }", "permissions~~~function get permissions() { [native code] }", "presentation~~~function get presentation() { [native code] }", "serial~~~function get serial() { [native code] }", "usb~~~function get usb() { [native code] }", "windowControlsOverlay~~~function get windowControlsOverlay() { [native code] }", "xr~~~function get xr() { [native code] }", "userAgentData~~~function get userAgentData() { [native code] }", "clearAppBadge~~~function clearAppBadge() { [native code] }", "getUserMedia~~~function getUserMedia() { [native code] }", "requestMIDIAccess~~~function requestMIDIAccess() { [native code] }", "requestMediaKeySystemAccess~~~function requestMediaKeySystemAccess() { [native code] }", "setAppBadge~~~function setAppBadge() { [native code] }", "webkitGetUserMedia~~~function webkitGetUserMedia() { [native code] }", "getBattery~~~function getBattery() { [native code] }", "getInstalledRelatedApps~~~function getInstalledRelatedApps() { [native code] }", "registerProtocolHandler~~~function registerProtocolHandler() { [native code] }", "unregisterProtocolHandler~~~function unregisterProtocolHandler() { [native code] }", "constructor~~~function Navigator() { [native code] }", "__defineGetter__~~~", "__defineSetter__~~~", "hasOwnProperty~~~", "__lookupGetter__~~~", "__lookupSetter__~~~", "isPrototypeOf~~~", "propertyIsEnumerable~~~", "toString~~~", "valueOf~~~", "__proto__~~~", "toLocaleString~~~" ], "navigatorProperties": [ "vendorSub", "productSub", "vendor", "maxTouchPoints", "scheduling", "userActivation", "doNotTrack", "geolocation", "connection", "plugins", "mimeTypes", "pdfViewerEnabled", "webkitTemporaryStorage", "webkitPersistentStorage", "hardwareConcurrency", "cookieEnabled", "appCodeName", "appName", "appVersion", "platform", "product", "userAgent", "language", "languages", "onLine", "webdriver", "getGamepads", "javaEnabled", "sendBeacon", "vibrate", "constructor", "clipboard", "credentials", "keyboard", "managed", "mediaDevices", "storage", "serviceWorker", "virtualKeyboard", "wakeLock", "deviceMemory", "ink", "hid", "locks", "mediaCapabilities", "mediaSession", "permissions", "presentation", "serial", "usb", "windowControlsOverlay", "xr", "userAgentData", "clearAppBadge", "getUserMedia", "requestMIDIAccess", "requestMediaKeySystemAccess", "setAppBadge", "webkitGetUserMedia", "getBattery", "getInstalledRelatedApps", "registerProtocolHandler", "unregisterProtocolHandler", "constructor", "__defineGetter__", "__defineSetter__", "hasOwnProperty", "__lookupGetter__", "__lookupSetter__", "isPrototypeOf", "propertyIsEnumerable", "toString", "valueOf", "__proto__", "toLocaleString" ], "etsl": 33, "screenDesc": "function get width() { [native code] }", "phantomJS": [ false, false, false ], "nightmareJS": false, "selenium": [ false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false, false ], "webDriver": true, "webDriverValue": false, "errorsGenerated": [ "azeaze is not defined", null, null, null, null, null, null, "Failed to construct 'WebSocket': The URL 'itsgonnafail' is invalid." ], "resOverflow": { "depth": 10446, "errorMessage": "Maximum call stack size exceeded", "errorName": "RangeError", "errorStacklength": 914 }, "accelerometerUsed": false, "screenMediaQuery": true, "hasChrome": true, "detailChrome": { "webstore": "TypeError: Cannot read properties of undefined (reading 'constructor')", "runtime": "function Object() { [native code] }", "app": "function Object() { [native code] }", "csi": "function Function() { [native code] }", "loadTimes": "function Function() { [native code] }", "connect": "Error in invocation of runtime.connect(optional string extensionId, optional object connectInfo): chrome.runtime.connect() called from a webpage must specify an Extension ID (string) for its first argument.", "sendMessage": "Error in invocation of runtime.sendMessage(optional string extensionId, any message, optional object options, optional function responseCallback): No matching signature." }, "permissions": { "state": "prompt", "permission": "default" }, "allPermissions": { "ambient-light-sensor": { "error": "TypeError: Failed to execute 'query' on 'Permissions': GenericSensorExtraClasses flag is not enabled." }, "bluetooth": { "error": "TypeError: Failed to execute 'query' on 'Permissions': Failed to read the 'name' property from 'PermissionDescriptor': The provided value 'bluetooth' is not a valid enum value of type PermissionName." }, "device-info": { "error": "TypeError: Failed to execute 'query' on 'Permissions': Failed to read the 'name' property from 'PermissionDescriptor': The provided value 'device-info' is not a valid enum value of type PermissionName." }, "nfc": { "error": "TypeError: Failed to execute 'query' on 'Permissions': Web NFC is not enabled." }, "push": { "error": "NotSupportedError: Failed to execute 'query' on 'Permissions': Push Permission without userVisibleOnly:true isn't supported yet." }, "speaker-selection": { "error": "TypeError: Failed to execute 'query' on 'Permissions': Failed to read the 'name' property from 'PermissionDescriptor': The provided value 'speaker-selection' is not a valid enum value of type PermissionName." }, "accelerometer": { "state": "prompt", "permission": "default" }, "background-fetch": { "state": "prompt", "permission": "default" }, "background-sync": { "state": "prompt", "permission": "default" }, "camera": { "state": "prompt", "permission": "default" }, "clipboard-write": { "state": "prompt", "permission": "default" }, "display-capture": { "state": "prompt", "permission": "default" }, "geolocation": { "state": "prompt", "permission": "default" }, "gyroscope": { "state": "prompt", "permission": "default" }, "magnetometer": { "state": "prompt", "permission": "default" }, "microphone": { "state": "prompt", "permission": "default" }, "midi": { "state": "prompt", "permission": "default" }, "notifications": { "state": "prompt", "permission": "default" }, "persistent-storage": { "state": "prompt", "permission": "default" } }, "iframeChrome": "object", "debugTool": false, "battery": true, "deviceMemory": 8, "tpCanvas": { "0": 0, "1": 0, "2": 0, "3": 0 }, "sequentum": false, "audioCodecs": { "ogg": "probably", "mp3": "probably", "wav": "probably", "m4a": "maybe", "aac": "probably" }, "videoCodecs": { "ogg": "probably", "h264": "probably", "webm": "probably", "mpeg4v": "", "mpeg4a": "", "theora": "" }, "webSocketSupportTimeout": false }