VIMPULSE UPDATE SERVER v2.1 =========================== SERVER ------ Internal: http://10.0.0.30:8765 Public: http://99.232.137.208:8765 The server is online only while run.bat is running. NO FIXED UPDATE FILENAMES ------------------------- You no longer have to name update files something specific. For example, inside: apps\StoryCut\updates\ you can use: StoryCutV2.exe StoryCut New.exe StoryCut September Build.exe StoryCut-final.msi whatever-name-you-want.exe The server automatically scans the folder and selects the newest supported update file by file creation timestamp. SUPPORTED FILE TYPES -------------------- .exe .msi .msix .msixbundle .zip LATEST ENDPOINT --------------- Each client program only needs its application folder URL. Examples: StoryCut http://99.232.137.208:8765/latest/StoryCut StoryRealm Studio http://99.232.137.208:8765/latest/StoryRealm%20Studio RigCore http://99.232.137.208:8765/latest/rigcore A HEAD request to the URL returns metadata for the newest update. Important headers: X-File-Created-Unix X-File-Created Last-Modified X-Update-Filename Content-Length X-Update-Filename tells the client the actual update filename selected by the server. DOWNLOADING ----------- The client performs GET against the SAME /latest/ URL. The server sends the newest update file automatically. This means the client does not need to know or guess the update filename. EXAMPLE WORKFLOW ---------------- 1. Build StoryCut. 2. Name the update anything you want: StoryCutV2.exe 3. Copy it into: apps\StoryCut\updates\ 4. Start run.bat. 5. StoryCut checks: http://99.232.137.208:8765/latest/StoryCut 6. The server finds StoryCutV2.exe automatically. 7. If its creation timestamp is newer than StoryCut's saved timestamp, StoryCut offers the update. If there are multiple valid files in the folder, the newest one wins. FIRST RUN FOLDERS ----------------- apps\StoryCut\updates apps\StoryRealm Studio\updates apps\Vault\updates apps\VimpulseAutoClicker\updates apps\GobhaInk\updates apps\VitalTrack\updates apps\cybervault\updates apps\freshcore\updates apps\rigcore\updates apps\storagemedic\updates apps\vimpulsetechtoolkit\updates apps\vimvnc\updates PORT FORWARD ------------ External TCP port: 8765 Internal IP: 10.0.0.30 Internal port: 8765 Allow inbound TCP 8765 through the server's firewall. SECURITY -------- HTTP works for this design, but HTTPS is recommended before broad public distribution. Keep existing Authenticode/signature/hash validation in each application where available.