akrherz/live · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
Weather.IM Live Client
Many moons ago, this client was the browser based interface named NWSChat Live. The National Weather Service (NWS) subsequently migrated to Slack and this client became obsolete. But the weather.im service is still active and this interface is used there to allow browser based access to the XMPP chat rooms.
License
This project is licensed under the GNU General Public License v3.0 (GPLv3). See LICENSE.txt for full terms.
Development
npm installnpm run devnpm run buildnpm run lint
Deployment
Use the deployment script to build and publish the dist/ output:
bash deployment/weather_im.shbash deployment/weather_im.sh --prod
The script will:
- optionally run
npm ci - run
npm run lint - run
npm run build - in default mode: sync
dist/into the deployment destination withrsync - in
--prodmode: run the production deployment branch (customrsynccommand placeholder in the script)
Options:
--prodenable production deployment branch--helpshow script usage
Environment overrides:
DEST(default:/opt/weather.im/html/live)INSTALL_DEPS(1by default, set to0to skipnpm ci)
Hosting Path
- The built client is configured to work when hosted under
/live/(or other subpaths), not just/.
Notes
- This project uses Vite + ES modules while still depending on ExtJS (UMD).
- ExtJS runtime assets are copied from
node_modules/@avalos/extjs-gpl/buildintopublic/vendor/avalos-extjs-gpl/buildautomatically by the Vite config. public/vendoris generated content and should not be committed to git.- This application is desktop/laptop focused and is not designed or supported for mobile phone usage.
XMPP Transport
- Transport is configured in src/config.js.
- Default is websocket (
XMPP_TRANSPORT: "websocket"). - To use websockets, set:
XMPP_TRANSPORT: "websocket"WEBSOCKET: "wss://<your-xmpp-host>/<websocket-endpoint>"
- If websocket transport is selected without a URL, the client derives it
from
BOSHby converting towss://and preserving the path. - The client enforces TLS-only websocket endpoints (
wss://).