|
e0fa65fbd7
|
Decided to remove inotify watcher from playlist.
|
2023-10-05 17:31:12 +04:00 |
|
|
6ae8a40493
|
In oggtag.go a struct named OggFIle was created, ReadFile turned into a constructor NewOggFile. And GetTag and GetDuration turned into methods.
|
2023-10-05 17:26:13 +04:00 |
|
|
10bc3a3785
|
In Playlist embed a sync.Mutex instead.
|
2023-10-04 18:37:13 +04:00 |
|
|
1c6d288cd7
|
In song.go: added comments; embed sync.Mutex in SongList instead of having it as a field; changed a json field name duration_milliseconds to duration_msec; listMaxLen field was renamed to maxLen; Len() was renamed to MaxLen().
|
2023-10-04 18:10:17 +04:00 |
|
|
98ed4035a7
|
In ListenersDec() handler added a missing return.
|
2023-10-02 18:09:25 +04:00 |
|
|
0bf81f93c8
|
In Song.DurationString() updated format.
|
2023-10-02 18:08:57 +04:00 |
|
|
64c2868fcf
|
Updated CheckAndUpdateMostListenedSong() func.
|
2023-10-02 15:04:51 +04:00 |
|
|
1990f1c7f0
|
In a PlaylistNext handler return a \n character as well.
|
2023-10-02 15:03:47 +04:00 |
|
|
29714b30ca
|
A file listeners.go was renamed to listener_counter.go.
|
2023-10-02 04:33:11 +04:00 |
|
|
9757f5f748
|
Oh, time.Duration works a little differently...
|
2023-10-02 03:55:17 +04:00 |
|
|
f1e2eca876
|
Added a DurationString() method for a Song that returns time in format 04:05 or 15:04:05 if a song is one hour or more long.
|
2023-10-02 03:52:26 +04:00 |
|
|
010774d775
|
Return a formatted string alongside with duration in milliseconds.
|
2023-10-02 03:48:31 +04:00 |
|
|
0519bc979c
|
Status() and LastSong() handlers was removed from main handlers.
|
2023-10-02 03:20:48 +04:00 |
|
|
bd9b80076a
|
Updated CheckAndUpdateMostListenedSong() to work with a new Song struct.
|
2023-10-02 03:19:23 +04:00 |
|
|
58b3d18288
|
Pass a SongList instead of instantiating.
|
2023-10-02 03:18:54 +04:00 |
|
|
f9d85d45f5
|
Song_ was renamed to Song. Also added Len() method to a SongList.
|
2023-10-02 03:18:30 +04:00 |
|
|
5e8e9943f9
|
Icecast-specific code was removed, because now it all is controled inside a service.
|
2023-10-02 03:15:05 +04:00 |
|
|
f0438ff822
|
In ListenersGet() text/plain was replaced by application/json.
|
2023-10-02 02:35:01 +04:00 |
|
|
d2851c6fb8
|
Added http.Error() to a PlaylistNext() handler.
|
2023-10-02 02:29:18 +04:00 |
|
|
f709ac4b02
|
Added a MostListenedSong() handler.
|
2023-10-02 02:28:46 +04:00 |
|
|
8322d2a7a8
|
In Status handler: added missing Content-Type; Added most listened song; Removed with-list query, just return everything; Added http.Error().
|
2023-10-02 02:22:14 +04:00 |
|
|
3ed0f7b62a
|
Added MarshalJSON() method to MostListenedSong.
|
2023-10-02 02:07:39 +04:00 |
|
|
ddf5f3d0f7
|
Added check if mostListened set.
|
2023-10-02 02:07:08 +04:00 |
|
|
7cc228968d
|
In handlers made use of oggtag.ReadFile() func. Also updated func names.
|
2023-10-02 01:27:14 +04:00 |
|
|
c054c3b32e
|
Added a duration field to Song_ struct.
|
2023-10-02 01:26:22 +04:00 |
|
|
aaf14e0c83
|
A /status endpoint was added that returns all data available. At this time cur song, listeners cur and peak, and a list of prev songs.
|
2023-10-01 22:07:04 +04:00 |
|
|
96baa42fe0
|
/song endpoint was broken into two, the second one is /songs that returns a list of prev played songs, and /song just a current one.
|
2023-10-01 22:05:39 +04:00 |
|
|
381da691a4
|
For ListenerCounter implemented MarshalJSON() method.
|
2023-10-01 22:03:26 +04:00 |
|
|
2be516236b
|
SongList.Current() will return nil if current song wasn't set yet.
|
2023-10-01 22:02:54 +04:00 |
|
|
dea283df27
|
Listeners struct was renamed to ListenerCounter.
|
2023-10-01 20:32:07 +04:00 |
|
|
dc3658d6de
|
Decided to implement an inotify watcher for a playlist file. Dunno if it works correctly, but it seems like, not tested yet.
|
2023-10-01 06:44:36 +04:00 |
|
|
4faf2a0309
|
In Playlist a method Load() was renamed into load(), and a public Reload() method created.
|
2023-10-01 06:40:05 +04:00 |
|
|
6ebe24fa5a
|
In SongList Add check if a current song wasn't set yet.
|
2023-10-01 06:37:47 +04:00 |
|
|
a4f7366213
|
In handlers made use of a SongList.
|
2023-10-01 05:43:52 +04:00 |
|
|
8c1e46900a
|
Added a SongList and Song_ types. An underscore is temporary and is because there is an another Song type in an icecast.go file.
|
2023-10-01 05:42:55 +04:00 |
|
|
cbfc1549ed
|
Added a mutex for Listeners struct for thread safety.
|
2023-10-01 04:18:43 +04:00 |
|
|
07d11ce3ff
|
A dummy Song handler was added.
|
2023-10-01 03:35:33 +04:00 |
|
|
88b5f21343
|
Added playlist handler.
|
2023-10-01 01:32:57 +04:00 |
|
|
3d2b172deb
|
Replaced unused r arg with _ in handlers.
|
2023-10-01 01:32:17 +04:00 |
|
|
2e6f9f27c4
|
Added a Playlist struct.
|
2023-10-01 00:47:07 +04:00 |
|
|
978a2602d8
|
Added handlers used in a radiodj service. Currently just for listeners.
|
2023-09-30 23:59:48 +04:00 |
|
|
328dbc644e
|
A struct to hold a number of current and peak listeners was added.
|
2023-09-30 23:57:31 +04:00 |
|
|
4b8ab610d5
|
Added comments for separator* consts.
|
2023-09-17 19:18:18 +04:00 |
|
|
b1428812c8
|
Comment out log in a benchmark.
|
2023-09-15 04:24:12 +04:00 |
|
|
60045d4ca2
|
icecastLastPlayedSongs was replaced by icecastCurrentSong that fetch only one song at the very end of a playlist.log. Also added a benchmark for this func.
|
2023-09-15 04:19:28 +04:00 |
|
|
7bb91cfcbe
|
A little reorganisation in icecast.go.
|
2023-09-15 03:20:12 +04:00 |
|
|
e8ad10a16d
|
In CheckAndUpdateMostListenedSong pass cur and prev songs by pointer.
|
2023-09-15 03:17:44 +04:00 |
|
|
2cf6e1a6cb
|
append() was replaced with more efficient copy() (only 1 allocation with make).
|
2023-09-14 18:20:47 +04:00 |
|
|
978b4c6454
|
Removed unused error returning (error is always nil).
|
2023-09-14 17:59:14 +04:00 |
|
|
a6f92b56da
|
Reorganised Handlers struct fields.
|
2023-09-14 17:58:35 +04:00 |
|
|
eccf0ff4e9
|
Removed unused const FormatISO8601.
|
2023-09-14 17:51:15 +04:00 |
|
|
c020031127
|
Do not overwrite mostlistenedsong file if a song wasn't changed.
|
2023-09-10 18:23:06 +04:00 |
|
|
e082527edc
|
In case of an http error show Offline in a Now playing field.
|
2023-08-21 18:31:06 +04:00 |
|
|
9ac60e9f28
|
Don't show server start date and time on a page.
|
2023-08-21 18:30:21 +04:00 |
|
|
5c16576fa4
|
Removed one nesting level by removing select statement.
|
2023-08-21 06:08:21 +04:00 |
|
|
76b3e2e8ad
|
For some log messages changed capital letter to lowercase.
|
2023-08-21 05:45:12 +04:00 |
|
|
f9b2afdd50
|
Added log for failed attempts on retrieving songs from playlist.log.
|
2023-08-20 18:03:51 +04:00 |
|
|
48bbd32eb8
|
Remove a debug print accidenatlly commited.
|
2023-08-20 03:27:08 +04:00 |
|
|
075e171b40
|
Populate a freshly created cache with songs if there are any.
|
2023-08-20 03:26:14 +04:00 |
|
|
7df94bef12
|
Only then call make on cache if it is nil.
|
2023-08-20 03:20:49 +04:00 |
|
|
1df162445e
|
Removed configuration file.
|
2023-08-06 03:19:26 +04:00 |
|
|
a1bf9cf30a
|
Use flags instead of config file. Also replaced HttpServer with a new code.
|
2023-08-06 03:17:18 +04:00 |
|
|
4cc4d0138a
|
Return an empty IcecastStatus struct instead of nil in case of an error.
|
2023-07-22 23:08:18 +04:00 |
|
|
877b5d4013
|
Playlist file renamed to playlist.m3u.
|
2023-07-22 22:58:42 +04:00 |
|
|
38f04aa9f8
|
Removed code for liquidsoap.
|
2023-07-22 22:15:24 +04:00 |
|
|
cac5751ede
|
Removed AssetsFS() since it is not needed anymore.
|
2023-05-27 00:36:03 +04:00 |
|
|
8b439bbd5a
|
Removed httprouter.
|
2023-05-26 23:55:40 +04:00 |
|
|
3e513087ca
|
Let's dynamically calculate bufferSize with 320 bytes per line.
|
2023-05-21 23:11:15 +04:00 |
|
|
47bc1a8e02
|
Added sitemap.xml.
|
2023-05-21 22:44:09 +04:00 |
|
|
2987cf4a2a
|
Moved RobotsTxt handler out of Handlers struct.
|
2023-05-21 22:42:17 +04:00 |
|
|
ca4391784a
|
Added /favicon.svg endpoint.
|
2023-05-21 22:35:37 +04:00 |
|
|
eb6b0c68b3
|
No need in preloading. Because in this moment liquidsoap starts and adds a new song that Icecast writes in playlist.log so IN_MODIFY is being triggered.
|
2023-03-13 05:35:39 +04:00 |
|
|
c02442ebcd
|
Okay, there is actually a new line at the end of file. Let's skip that.
|
2023-03-13 05:10:17 +04:00 |
|
|
31a892e43d
|
Remove log section from config, since it is not used anymore.
|
2023-03-13 03:31:40 +04:00 |
|
|
8e0d5e4fb7
|
Date format was moved out to a const.
|
2023-03-13 02:12:21 +04:00 |
|
|
95e9d97a22
|
Updated web.Index() call in a handler.
|
2023-03-13 02:12:02 +04:00 |
|
|
0fffbce646
|
First try to load currently playing song.
|
2023-03-13 01:53:52 +04:00 |
|
|
2e60f2bb8a
|
Check for empty prev song.
|
2023-03-13 01:42:24 +04:00 |
|
|
f24953ae7c
|
Amount of listeners of next song is actually how much listeners was by the end of a prev song.
|
2023-03-13 01:42:00 +04:00 |
|
|
1b91f70edd
|
Added most_listened_song_file_path option.
|
2023-03-13 01:40:30 +04:00 |
|
|
e84a811a1d
|
Update most listened song.
|
2023-03-13 00:04:34 +04:00 |
|
|
8f16b5d96f
|
Implemented a functionality for storing and showing most listened song.
|
2023-03-13 00:03:59 +04:00 |
|
|
53d24c5781
|
Store current song in a separate variable. A base for most listened song functionality.
|
2023-03-12 22:25:58 +04:00 |
|
|
63fcb36e60
|
Nah, 3KiB should be enought to read.
|
2023-03-12 22:06:15 +04:00 |
|
|
d48972caa0
|
Okay, now let's return original idea of adding songs one by one.
|
2023-03-12 21:48:01 +04:00 |
|
|
6d4a276dd8
|
IcecastLastSongs() (formerly known as IcecastLastPlayedSongs()) args were changed, so let's delete unneeded arg.
|
2023-03-12 21:32:29 +04:00 |
|
|
517dd0e534
|
Fixed last songs displaying.
|
2023-03-12 21:31:18 +04:00 |
|
|
0409da3ca3
|
Oh, last commit led to loading of full list of prev songs. Let's remove this code.
|
2023-03-12 04:01:32 +04:00 |
|
|
10048c671e
|
Prevent reading latest song from a log right after a service started.
|
2023-03-12 03:53:09 +04:00 |
|
|
db02047268
|
Now lastPlayedCache's initial capacity is not hardcoded to 10. And it will be filled slowly, instead of initial read of last N songs from a playlist.log.
|
2023-03-12 02:19:07 +04:00 |
|
|
47e3ff37ba
|
Reduced bufferSize because 16KiB is more than enough for a max of 10 songs.
|
2023-03-12 02:16:55 +04:00 |
|
|
83cdc222c7
|
Change arav.top to arav.su.
|
2023-02-23 17:49:01 +04:00 |
|
|
edfcb9526b
|
Fixed MIME type to text/html.
|
2023-02-19 22:26:25 +04:00 |
|
|
77183bb14e
|
Added Content-Type header for filelist.
|
2023-02-19 21:41:58 +04:00 |
|
|
aa0d818488
|
Added robots.txt endpoint.
|
2023-02-19 21:22:56 +04:00 |
|
|
182a4c02c9
|
Added reading of filelist.html file from disk.
|
2023-02-19 21:18:36 +04:00 |
|
|
6d26d695ec
|
Pass ListLastNSongs to an Index template in handlers.go.
|
2023-02-07 02:46:10 +04:00 |
|
|
dc8ec51530
|
Func LoadConfiguration() was renamed to Load(). Added a comment for it. Edited a comment for SplitNetworkAddress() func.
|
2023-02-07 02:29:45 +04:00 |
|
|
bde8a59a31
|
Removed a comment for type Configuration that was from httpprocprobed service.
|
2023-02-07 02:28:54 +04:00 |
|
|
7c5e1465af
|
handlers moved to internal/http. Logging changed to std log. Type RadioHandlers renamed to Handlers.
|
2023-02-07 02:27:30 +04:00 |
|