The application consists of two main components
- Client (where interactions with the participants happens)
- Presenter (where the results are shown or new interactions are triggered)
Current client/presenter modules
poll
: Presenter triggers a poll which can be viewed and voted on by the participants- Example URL for presenter
- Example URL for client
counter
: A simple Hello World module which counts how many participants are currently listenting to the presenter
const myParams = {'foo': 'hi', 'another': ["1", "2", "3"] ,'bar': '???'};
const u = new URLSearchParams(myParams).toString();
console.log(u);
The ntfy script is located in the /scripts/ntfy
folder. To use the script, navigate to the root directory of the project and run the following commands:
After installing the modules, you can run the script in the following ways.
(Alternatively you can also run the scripts from the package.json
- but be aware that some arguments are expected. Set those in the run configuration)
Publish message to presenter/client topic
- Note that the topic name is the channel name and presenter/client (with
/
delimiter) value (e.g.java-2022/presenter
orjava-2022/client
)
npm run publish -- <channel/audience> <message.json>
Listen to client/presenter topic
npm run subscribeLive -- <channel/audience>
Retrieve last published event
npm run subscribe -- <channel/audience>
To run VAG.app in a development environment, use the following command:
ng serve --configuration development
VAG.app can also be deployed localy using the ntfy api Docker-Image with the docker-compose file named "local-setup.yaml". To deploy the application using Docker, run the following command (for dev enviroment only):
docker-compose -f local-setup.yaml up
Installing the Package Manager HOMEBREW for macOS:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
If your not sure whether you have a clean homebrew docker installation, use this command in terminal to delete your current docker installation:
brew remove docker
Install the docker application:
brew install --cask docker
Install the docker command line tools:
brew install docker
- As an example for the
poll-presenter
component (assumes there is only one such component in the dom) - Here you either can access or trigger a method manually
ng.getComponent(document.getElementsByTagName("app-poll-presenter")[0])
- For now, if you want to flush the stored user, run the following command in the Developer Tools console
ng.getComponent(document.getElementsByTagName("app-poll-presenter")[0]).clearUserHistory();
- Tamayo (@SETA1609))
- Bodo (@Bohdoh)
- Marc (@Knollen)
- Sebastian (@JefCos)
- Alina (@neko5687)
- Tarik (@trklkddr)
- Christian (@Languste1)
- Josi (@Ru79jel)
- Rene (@MeisterRLampe)
- Minh (@yungminox)
- Bacdasch (@Baco98)
- Carl (@biocarl)