August 17Aug 17 What is Music SpiderMusic Spider finds concerts for music you like. It does this by building a list of your most-listened-to artists (Plex via Tautulli and/or Spotify), searching event APIs (Ticketmaster, Resident Advisor) to find upcoming shows near you, and (optionally) notifying you by email, calendar, or a generic webhook. It only finds events based on the artists you listen to - never recommending X because you like Y.This incarnation of the project is about a month old as of writing. I wrote the first incarnation of it in Google Apps Script in 2023. It came about because I almost missed out on a concert I would've regretted missing - and I don't want to use some service that's going to sell my data and send me spam mail. This version is the same idea adapted as a selfhosted tool. Obviously there are services out there that do this so this is just meant to be a version of that which you control.At the time of writing, it has just been me testing this. So If you have suggestions or questions let me know. Create an issue or reply here.FeaturesTop Artists tracking: from Plex (via Tautulli), Spotify, both, or manual-only (no API fetching, just artists added to custom list); ranks your top artists in short term, medium term, and long-term windows; optional scheduled auto-refresh.Custom list: manually pin artists to always includeIgnore list: exclude specific artists from top-artists and event search entirely (e.g. artists who are not alive, not touring, or you're just not going to see them live)Event search: Ticketmaster and/or Resident Advisor matched against your list of artists - schedule weekly event searches to update the list or start the search manuallyEvents UI: Peruse the discovered events in card and list views, sortable columns, per-event delete/ignoreNotification Methods:Weekly event digest emailGoogle Calendar sync - via a connected Google account (OAuth) or a GCP service account (no OAuth consent screen or HTTPS needed),generic JSON webhook (e.g. Discord, Home Assistant)Settings UI: Supply API keys, set your location, and set up any notification methodsTheming: Grayscale and Catppuccin Mocha themesTech StackFramework: Next.js 16 (App Router) with React 19Styling: Tailwind CSS 4Runtime: Node 20, packaged as a Docker imageStorage: flat JSON files on disk (no database) - settings, event store, artist lists, and caches, managed through a small file-store moduleAuth: OAuth flows for Spotify and Google, using popup windows for the consent stepExternal APIs:Tautulli API,Spotify Web API,Ticketmaster Discovery API,Resident Advisor's public GraphQL API,Google Gmail/Calendar APIsDeployment: Docker / Docker Compose, instructions for Unraid as wellRequirementsDockerArtists Source Options:Tautulli: API key (from Tautulli settings)Spotify: create an API key from developer.spotify.com (and an HTTPS connection for OAuth if not viewing WebUI from 127.0.0.1)Event Search options:Ticketmster: API key from developer.ticketmaster.comOptions for Notifications:Weekly email events digest (connect using SMTP, Google OAuth)Add events to a calendar (connect to calendar using CalDAV, Google OAuth, Google Cloud Project service account)Custom webhook - can be used to send event summary to Discord, Slack, etc.InstallationUnraid: It is not in CA yet so follow these to get the :latest from the Docker Hub repositoryDocker ComposeConfiguring the appConfiguration Edited August 21Aug 21 by vxlx
August 20Aug 20 HiThanks for your app !Two comments :The Tautulli URL must not end with a "/", otherwise it won’t work. Perhaps this should be mentioned in the documentation or in the field’s placeholderResident Advisor’s suggestions aren’t displayingTo display them, you need to either:- remove the ‘absolute’ class from the list, but in that case the box will expand to fit the content- remove the ‘overflow-hidden’ class from both parent divs
August 20Aug 20 Author 8 hours ago, deadnote said:The Tautulli URL must not end with a "/", otherwise it won’t work. Perhaps this should be mentioned in the documentation or in the field’s placeholderThanks for the heads up. I'll patch this so that it's more flexible.8 hours ago, deadnote said:Resident Advisor’s suggestions aren’t displayingTo display them, you need to either:- remove the ‘absolute’ class from the list, but in that case the box will expand to fit the content- remove the ‘overflow-hidden’ class from both parent divsDid you specify what region you're in in the settings? If so, can you clarify or send a screenshot? If you don't mind, in events.json can you see if Resident Advisor shows up there. I want to figure out if it is not searching Resident Advisor or if its finding them and not displaying them properly.I think I understand what you mean now - the region search dropdown for RA. I'll implement a fix for this as well. Edited August 20Aug 20 by vxlx
August 20Aug 20 Author Patched both issues. Thanks for the heads up @deadnote . Let me know if you have any other issues (edit: or if either of these persists). Edited August 20Aug 20 by vxlx
August 21Aug 21 Can you tell me where can I find the tricketmaster api key ? Edited August 21Aug 21 by deadnote
August 21Aug 21 Author Consumer key. I'll rename this in the settings.Edit: Patched in 0.2.3. Edited August 21Aug 21 by vxlx
August 22Aug 22 Another question about ticketmaster settings : what is the expected format for lat/lng ? With space "45.764042 4.835659" ? With separator "45.764042/4.835659" ? Another one ?Is it possible to add more than one location ?Thanks
August 22Aug 22 Author Separated by a comma. E.g. "45.764042, 4.835659". I'll patch it so that it is more flexible and will accept multiple ways.At the moment it's not possible to add another location for Ticketmaster. I can make it possible like with Resident Advisor. Edited August 22Aug 22 by vxlx
August 22Aug 22 Author Added a mutli-line text area for the Ticketmaster latitude/longitude parameter. So now you can add one per line if you want to search multiple locations. It's also much more flexible about how you write the coordinates - can be separated by comma, space, slash, semicolon, etc. Edited August 22Aug 22 by vxlx
Wednesday at 11:49 AM1 day HiI think, I missing something in my configuration.Example with "Placebo".The group is present in the artist list.A show is sheduled https://www.ticketmaster.fr/fr/manifestation/placebo-billet/idmanif/653390 at Decine Charpieu. Is less than 10km from Lyon (45.764042-4.835659) But nothing appears in the events list.The logs shows "Ticketmaster Search complete - Results: []"
Wednesday at 05:01 PM1 day Author The first thing that jumps out is the way you're writing the latitute/longitude. Using a - dash as a separator is confusing because there are negative longitudes. So it could be turning that into a different location than you intend. It might work better if you use a comma or a space between them.I tried this myself though and I'm not getting results either so I'm going to dig into it more and see what I can figure out. I'll get back once I learn some more. Edited Wednesday at 08:37 PM1 day by vxlx
Wednesday at 06:44 PM1 day Author I figured out what caused it. If you don't force it to include all locales, the API assumed English-only locales and dropped all other event results. I've added something to force it to accept all locales by adding locale: "*" to the API request. I'll push this patch and that update should fix it for you. Let me know if not though. Edited Wednesday at 08:36 PM1 day by vxlx
Wednesday at 08:12 PM1 day Author This also highlighted a different issue. Placebo, in this case, came up with multiple results that are different "hospitality packages" (VIP, etc). The app was only accepting the first result it found and ignoring the rest, which sometimes was a hospitality package.Now, I've added an option to include these package tickets if one wants. When off, it will only drop these if it also finds the original source event. So no events will be hidden unless it finds a source event that isn't a "hospitality package". It defaults to being off (hiding hospitality package listings). Edited 18 hours ago18 hr by vxlx
2 hours ago2 hr Thanks for the fixes !I edited the locations with a coma, I have any more results.There are still a few concerts missing, especially around Lyon, but I don't know why.Exemple : https://www.ticketmaster.fr/fr/resultat?ipSearch=cult+of+luna @ la Rayonnehttps://www.ticketmaster.fr/fr/resultat?ipSearch=ANNEKE+VAN+GIERSBERGEN+%26+BAND @ O Totem
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.