New Availability module decorates each people-tile with a vertical status bar on the avatar and a dot+timestamp under the status text, showing ZeitConsens loggedIn state per extension. Status and Availability now share a single AvailabilityService that polls /availability every 30s, halving the API load. Avatars are enlarged to 57px and vertically centered to fit the new layout.
3CX TAPI
Inject CPA TAPI functions into the 3CX Webclient
dev
- Allow Tampermonkey's access to local file URIs tampermonkey/faq
- install deps with
npm iornpm ci. npm run devto start your development.- open
webpack-userscript-template/dist/index.dev.user.jsin your Chrome and install it with your userscript manager.
this userscript's meta contains // @require file://path/to/dist/index.prod.user.js,
it will run the code in index.prod.user.js,
which take src/js/index.js as entry point.
every times you edit your metadata, you'll have to install it again, because Tampermonkey don't read it from dist every times.
- edit src/js/index.js with es6, you can even import css or less files. You can use scss if you like.
livereload is default enabled, use this chrome extension
dependencies
There are two ways to using a package on npm.
UserScript way
Like original UserScript way, you will need to add them to your user script metadata's require section , and exclude them in config/webpack.config.base.js
Webpack way
just install a package and import it in your js file. webpack will pack them with in your final production js file.
build
npm run build
dist/3CX TAPI.prod.user.js is the final script.
distribution
Userscript is included in server docker image
see also
Based on webpack-userscript-template