Commit Graph

74 Commits

Author SHA1 Message Date
Buster "Silver Eagle" Neece 058f306c15
Make entity functions line up with propertyaccess. 2021-11-06 23:02:44 -06:00
Buster "Silver Eagle" Neece 798bfd1eb2
Feature/vue webhooks (#4655) 2021-10-06 22:00:53 -05:00
Buster "Silver Eagle" Neece 1d7ed8038a
Code style and test updates. 2021-08-12 08:30:59 -05:00
Buster "Silver Eagle" Neece 465d9eaab9
Move NowPlaying API entries into subfolder. 2021-08-11 10:31:02 -05:00
Buster "Silver Eagle" Neece 45515fcf32
Add Matomo analytics support. 2021-08-09 23:50:57 -05:00
Buster "Silver Eagle" Neece 5cbacd5df6
System-Wide Strict Types (#4405) 2021-07-19 00:53:45 -05:00
Buster "Silver Eagle" Neece e9ee70e0fa
Fix issue where NP API URLs flip-flop between "preferred" and "unpreferred" URIs. 2021-06-15 12:53:28 -05:00
Buster "Silver Eagle" Neece a320c1a6a0
More code cleanup. 2021-06-09 22:22:13 -05:00
Buster "Silver Eagle" Neece 3f23efa076
PHP code style fixes. 2021-06-08 01:40:49 -05:00
Buster "Silver Eagle" Neece f83a9310e9
#4139 -- Optimize router handling to avoid hammering the DB. 2021-05-11 09:05:23 -05:00
Buster "Silver Eagle" Neece e893a93981
Routine PHP 8 code inspection sweep
- Removing explicit calls to default values
 - Add strict parameter arguments
 - Use PHP8 built-in functions when possible
2021-04-23 17:12:47 -05:00
Buster "Silver Eagle" Neece f117644649
Apply PHP8-specific improvements. 2021-04-23 00:24:12 -05:00
Buster "Silver Eagle" Neece 2dc41d080a
Switch Settings to be a flat single entity to use EntityManager built-in functions. (#4045) 2021-04-21 16:15:52 -05:00
Buster "Silver Eagle" Neece ace826dae5
Add e-mail webhook. 2021-03-06 03:27:55 -06:00
Buster "Silver Eagle" Neece 0c390bd13d
#3733 -- Simplify webhook dispatch and add rate-limiting. 2021-02-04 15:47:08 -06:00
Buster "Silver Eagle" Neece f134d45cf0
Listener tracking improvements
- Add the mount/remote that a listener is connected to, and show it in reports
 - Create a new Google Analytics webhook that will post live listeners to GA using the measurement protocol.
2021-01-27 11:42:54 -06:00
Buster "Silver Eagle" Neece 2f4f10ce57
#3535 -- Fix testing webhook with no NP data loaded yet. 2020-12-10 23:03:31 -06:00
Buster "Silver Eagle" Neece 4ca8ce0bc6
Split Utilities apart into individual categories. 2020-12-10 20:43:58 -06:00
Buster "Silver Eagle" Neece 4aa1902dae
#3525 -- Rework settings to be fetched on-demand to avoid collisions. 2020-12-10 16:46:03 -06:00
Buster "Silver Eagle" Neece 0a8c41542d
Make environment immutable and strictly use function calls. 2020-12-06 05:57:39 -06:00
Buster "Silver Eagle" Neece aed854a17c
Settings overhaul, part 2
Make Settings a controlled entity.
2020-12-04 02:41:55 -06:00
Buster "Silver Eagle" Neece 5727f12b6f
Settings refactor part 1: Rename App\Settings to App\Environment.
Previously AzuraCast had two very similar `$settings` variables, one that was from environment and the other from the database. This refactor distinguishes the two much more clearly.
2020-12-02 22:18:06 -06:00
Buster "Silver Eagle" Neece fff8124409
Create new "API Generator" classes and use them systemwide. 2020-10-19 05:41:15 -05:00
Vaalyn 9a94e6a178
Add PHPCS for code style checks (#3273) 2020-10-14 17:19:31 -05:00
Buster "Silver Eagle" Neece a6ec36b21c
Analytics Overhaul and InfluxDB Removal (#3243)
- Make the Analytics table in the database the primary one for handling statistics for all stations, removing the InfluxDB dependency entirely
 - Expand the Analytics table to also track unique listeners per hour and day
 - Properly clean up the Listeners table according to each installation's history retention settings
 - Implement a cute new animated "waiting for services" startup message that avoids previous wait messages that looked more like errors
2020-10-07 18:50:30 -05:00
Buster "Silver Eagle" Neece a42fd321a5
Code quality improvements. 2020-10-05 01:27:12 -05:00
Buster "Silver Eagle" Neece 41937eb4eb
#3199 -- Fix test dispatch of webhooks. 2020-09-25 15:00:50 -05:00
Buster "Silver Eagle" Neece a5a0149d26
Implement lazy-loading service locator for Webhook and Sync locators. 2020-08-28 05:32:33 -05:00
Buster "Silver Eagle" Neece 93ff68881f
Webhook and Sync Task Refactor
Moving service locator dependencies to their own Collections and make webhooks dispatch via MessageQueue messages.
2020-08-28 02:04:23 -05:00
Buster "Silver Eagle" Neece 2abb8bf623
Routine code cleanup. 2020-07-08 02:03:50 -05:00
Buster "Silver Eagle" Neece 4bcfad3eb5
Updates preparing for Doctrine 3.0
- Switch to EntityManagerInterface for EM uses
 - Wrap EntityManager in close-resilient wrapper
 - Close/clear/reopen EM with every request
 - Rework tests to be em->clear() resilient.
2020-06-26 15:22:53 -05:00
Buster "Silver Eagle" Neece 85991b7546
Preemptive changes to prepare for Doctrine ORM 3.0. 2020-06-25 13:44:26 -05:00
TychoWerner ddb8c43c53
TuneIn Webhook actually send the album instead of the artist twice. (#2863)
The TuneIn Webhook currently sends the artist name as the album which is not correct obviously. Because of this, the TuneIn interface would show Artist - Song (Artist) instead of Artist - Song (Album).

This $np->now_playing->song->album should exist as it is in the Now Playing API. When empty it should be ignored and TuneIn wll deals with it.
2020-05-21 16:29:12 -05:00
Buster "Silver Eagle" Neece b0144d8d57
Minor changes to improve NChan compatibility on Focal installs. 2020-05-03 08:58:10 -05:00
Buster "Silver Eagle" Neece 0fb3c8e2eb
Fix URLs in webhook tests; force HTTPS on thumbnail/image URLs. 2020-04-20 22:57:57 -05:00
Buster "Silver Eagle" Neece 4b74264441
Refactor to make Azura's AutoDJ prefer duplicate prevention higher. 2020-02-29 08:26:03 -06:00
Buster "Silver Eagle" Neece 4d4d75ad4d
Reunify AzuraCore and AzuraCast repositories. 2020-02-05 20:35:13 -06:00
Buster "Silver Eagle" Neece 8e08b7b798
Remove now-redundant PHPDoc blocks that don't add context. 2019-12-07 17:42:23 -06:00
Buster "Silver Eagle" Neece 1a6d1d620d
Add PHP 7.4 type hinting everywhere except Entities. 2019-12-07 06:19:49 -06:00
Buster "Silver Eagle" Neece d7819a6993
Migrate Doctrine repositories to composited, DI-friendly classes. 2019-09-29 02:50:24 -05:00
Buster "Silver Eagle" Neece a8048c339b
Remove escaped front slashes in JSON API responses. 2019-09-26 18:00:16 -05:00
Buster "Silver Eagle" Neece bd42b64de0
Add spaces to phpdoc blocks and optimize imports. 2019-09-20 11:44:38 -05:00
Buster "Silver Eagle" Neece daf78fa738
Move Settings and Logging to static system-wide functions. 2019-09-12 00:31:01 -05:00
Buster "Silver Eagle" Neece 513d04f7d2
Code cleanup! 2019-09-04 13:00:51 -05:00
Buster Neece 9790307266
Update AzuraCore; switch to PSR-16 SimpleCache interface. 2019-08-07 12:50:48 -05:00
Buster "Silver Eagle" Neece 639dddf989
Slim PHP Framework 4 Update (#1822)
Implement an upgrade of the codebase to use Slim Framework version 4, which includes the following changes:
 - Updating to Slim version 4 and the corresponding AzuraCore updates.
 - Making all objects PSR-7 Request/Response agnostic (and creating RequestHelper and ResponseHelper objects to interact with the PSR-7 Req/Resp objects).
 - Moving to PHP-DI as a DI container and implementing its autowiring support.
2019-08-06 23:33:55 -05:00
Buster Neece 64bd51244d
Make the AzuraCast AutoDJ log messages even in production instances. 2019-08-01 10:40:02 -05:00
Buster Neece e1944d696a
Switch back to HTTP client method to avoid creating zombie procs. 2019-08-01 09:31:14 -05:00
Buster Neece be7459c57d
Switch to older (but more reliable) way of sending nchan messages. 2019-07-31 13:23:03 -05:00
Buster Neece 83f3d407a5
Bring nchan back. 2019-07-25 23:54:25 -05:00