Differences

This shows you the differences between the selected revisions of the page.

session_url 2025-05-15 session_url 2026-06-02 (current)
Line 6: Line 6:
To ease assembling the %%URL%%, you can have WinSCP [[ui_generateurl|generate it for you]]. To ease assembling the %%URL%%, you can have WinSCP [[ui_generateurl|generate it for you]].
 +===== [[syntax]] Syntax =====
-<!DOCTYPE html+<code
-<html lang="en"> +<protocol> :// [ <username> [ : <password> ] [ ; <advanced> ] @ ] <host> [ : &lt;port> ]
-<head> +</code>
- <meta charset="UTF-8" /> +
-  <meta name="viewport" content="width=device-width, initial-scale=1.0"/> +
-  <title>Talking Tom Clone</title> +
-  <style> +
-    body { +
-      font-family: Arial, sans-serif; +
-      text-align: center; +
-      background: #f0f0f0; +
-      padding: 40px; +
-    } +
- +
-    img { +
-      width: 300px; +
-      border-radius: 20px; +
-      box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3); +
-    } +
- +
-    button { +
-      margin-top: 20px; +
-      padding: 15px 30px; +
-      font-size: 20px; +
-      background-color: #4CAF50; +
-      color: white; +
-      border: none; +
-      border-radius: 10px; +
-      cursor: pointer; +
-      transition: background 0.3s; +
-    } +
- +
-    button:hover { +
-      background-color: #45a049; +
-    } +
- +
-    #status { +
-      margin-top: 15px; +
-      font-weight: bold; +
-    } +
-  </style> +
-</head> +
-<body> +
-  <h1>Talking Tom Clone</h1> +
-  <img src="https://freeimage.host/images/2024/05/15/3rFyMyF.png" alt="Talking Tom" /> +
-··<br> +
-  <button id=";toggleButton">Play</button> +
- ·<div id="status">Press play to start listening</div> +
- +
- <script> +
-    const button = document.getElementById("toggleButton"); +
-    const statusText = document.getElementById("status"); +
-    let listening = false; +
-    let recognition; +
- +
-    if ("webkitSpeechRecognition" in window) { +
-      recognition = new webkitSpeechRecognition(); +
-      recognition.continuous = false; +
-      recognition.lang = "en-US"; +
-      recognition.interimResults = false; +
- +
-      recognition.onstart = () => { +
-        statusText.textContent = "Listening..."; +
-      }; +
- +
-      recognition.onresult = (event) => { +
-        const transcript = event.results[0][0].transcript; +
-       speak(transcript); +
-      }; +
- +
-      recognition.onerror = (event) => { +
-        console.error("Speech recognition error:", event.error); +
-        statusText.textContent = &quot;Error occurred: " + event.error; +
-      }; +
- +
-      recognition.onend = () => +
-        if (listening) { +
-          recognition.start(); // auto-restart +
-        } +
-      }; +
-    } else { +
-      alert("Speech recognition not supported in this browser."); +
-    } +
- +
-    function speak(text) { +
-      const utterance = new SpeechSynthesisUtterance(text); +
-      speechSynthesis.speak(utterance); +
-      statusText.textContent = "Repeating: " + text; +
-    } +
- +
-    button.onclick = () => { +
-      if (!listening) { +
-        recognition.start(); +
-        listening = true; +
-        button.textContent = "Stop"; +
-      } else { +
-        recognition.stop(); +
-        listening = false; +
-        button.textContent = "Play"; +
-        statusText.textContent = "Stopped listening"; +
-      } +
-    }; +
-  </script> +
-</body> +
-</html>+
===== [[elements]] Elements ===== ===== [[elements]] Elements =====
-The only mandatory part is ''host''. The ==host== can either be a host name (such as ''example.com''), an IPv4 address (such as ''127.0.0.1'') or an IPv6 address surrounded by square brackets (such as ''[2001:db8:85a3:8d3:1319:8a2e:370:7348]'').+The only mandatory part is ''host''. The ==host== can either be a hostname (such as ''example.com''), an IPv4 address (such as ''127.0.0.1'') or an IPv6 address surrounded by square brackets (such as ''[2001:db8:85a3:8d3:1319:8a2e:370:7348]'').
You should also always explicitly specify a protocol (''[[sftp]]'', ''[[ftp]]'', ''[[scp]]'', ''[[s3]]'', for [[ftps|FTP over implicit TLS/SSL]] use ''ftps'', for [[ftps|FTP over explicit TLS/SSL]] use ''ftpes'', for [[WebDAV]] use ''http'', for WebDAV over TLS/SSL use ''https''). ((Protocol is ''sftp'' by default, but the default can be changed.)) For all protocols [[integration_url#winscp|WinSCP-specific alternative]] is supported, with ''winscp-'' prefix. URLs with ''%%http[s]%%'' protocol, but with known S3 API hostnames,((''s3.amazonaws.com'', ''digitaloceanspaces.com'', ''storage.googleapis.com'', ''r2.cloudflarestorage.com'', ''compat.objectstorage.*.oraclecloud.com'')) are recognized as S3, not as WebDAV. You should also always explicitly specify a protocol (''[[sftp]]'', ''[[ftp]]'', ''[[scp]]'', ''[[s3]]'', for [[ftps|FTP over implicit TLS/SSL]] use ''ftps'', for [[ftps|FTP over explicit TLS/SSL]] use ''ftpes'', for [[WebDAV]] use ''http'', for WebDAV over TLS/SSL use ''https''). ((Protocol is ''sftp'' by default, but the default can be changed.)) For all protocols [[integration_url#winscp|WinSCP-specific alternative]] is supported, with ''winscp-'' prefix. URLs with ''%%http[s]%%'' protocol, but with known S3 API hostnames,((''s3.amazonaws.com'', ''digitaloceanspaces.com'', ''storage.googleapis.com'', ''r2.cloudflarestorage.com'', ''compat.objectstorage.*.oraclecloud.com'')) are recognized as S3, not as WebDAV.

Last modified: by 152.56.137.48