You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
854 B
37 lines
854 B
2 years ago
|
# Music Aggregator
|
||
|
|
||
|
Music Aggregator is a Capturer of sorts, but uses information coming from other
|
||
|
services to produce its result.
|
||
|
|
||
|
## Configuration
|
||
|
|
||
|
Requires the IP and PORT of the Store, and a list of musical Capturers that are
|
||
|
running.
|
||
|
|
||
|
## Internals
|
||
|
|
||
|
The service must receive Artist Name, Album Name and Song Title. It aggregates
|
||
|
information on all musical services and produces a count of each played song.
|
||
|
|
||
|
We keep:
|
||
|
|
||
|
- `artist`: Text.
|
||
|
- `album`: Text.
|
||
|
- `song`: Text.
|
||
|
- `count`: int, increases on each song send.
|
||
|
|
||
|
Also, we need to keep a list of capturers we receive per day:
|
||
|
|
||
|
- `day`: Day being generated.
|
||
|
- `capturer`: Capturer name.
|
||
|
|
||
|
The output is not produced till all musical Capturers send their information.
|
||
|
|
||
|
## Output
|
||
|
|
||
|
```
|
||
|
{% for song in todays_songs %}
|
||
|
{{ song.name }}, by {{ song.artist }} played {{ song.count }} times.
|
||
|
{% endfor %}
|
||
|
```
|