MetaBrainz

Room ID: !hyuEWFORfWYLZitABm:chatbrainz.org

rayyan_seliya123
rayyan_seliya123
So the problem is in the backend I guess as you mentioned me !!
@monkey:chatbrainz.org
monkey
I don't see a problem at the moment. What is the problem you see?
rayyan_seliya123
rayyan_seliya123
That's what I am unable to find where I am missing !!
@monkey:chatbrainz.org
monkey
Is your issue that you cannot test playing a track from the IA cache?
rayyan_seliya123
rayyan_seliya123
Nope I had played two three hardcoded tracks on this latest implementation it was running fine but the problem i am getting is when I am not hardcoding it rely on api on that point I am getting an issue ! Should I go ahead for an explicit search bar for this and then see what's happening?
@monkey:chatbrainz.org
monkey

Let's stop for a second :)

I think what you describe as an issue is not an issue at all, but how BrainzPlayer is supposed to work.
If you have a listen on the page, BP searches for a match using the IA cache. If that song is not in the cache it will not return a result, so it does not play anything.

If you want to play a song that is in the IA cache, you need to add a listen to your dashboard that has the details of that song, so that BP can use that info to search on the IA cache

@m.amanullah7:matrix.org
m.amanullah7
@rayyan_seliya123:matrix.org: i would recommend you shuld manually add listen any song which is available in internet archive and then set IA on top priority list and disable other services and try hope it works!
@monkey:chatbrainz.org
monkey
So pick a song that you know is in the IA cache and add it as a listen on your account. It's easiest to do if the song is in MusicBrainz too, that way you can use the "add listen" menu on your dashboard and paste the MusicBrains URL
@suvid:matrix.org
suvid
lucifer: so should i make it an api endpoint like this: app.register_blueprint(import_bp, url_prefix=API_PREFIX+'/import')?
rayyan_seliya123
rayyan_seliya123
Sure thx will try to do this instead I see there is not a problem i understand now that brainzplayer relies on the listen info to search thbIA chache and if the song is not in the cache it just won't play anything which is expected!
@monkey:chatbrainz.org
monkey
@monkey:chatbrainz.org
monkey
See https://listenbrainz.readthedocs.io/en/latest/users/api-usage.html#submitting-listens If you wan to manually send a listen with basic information you can use this file in the codebase: docs/users/api_usage_examples/submit_listens.py You will need to modify the EXAMPLE_PAYLOAD to have the title and artist that you know is in the IACache
@lucifer:chatbrainz.org
lucifer
Yes sounds fine for now, we can change it before deploying if a better url comes to mind
@monkey:chatbrainz.org
monkey
The question was about the prefix. Currently it is defined without the API_PREFIX. If the endpoint is used as an API endpoint I suggested it should have the prefix (/1/)
rayyan_seliya123
rayyan_seliya123
Thx I was at the peek of asking this how should I manually if the data is not in the musicbrainz yet !
@anshgoyal:matrix.org
ansh
Let's discuss this after the next weekly monday meeting?
state_event = OtherState { state_key: "@_discord_905960423407353866:chatbrainz.org", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some(""), displayname: Some("wmoranh"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: None }) }
@monkey:chatbrainz.org
monkey
If you need your API token, open your local LB website and in the console, inspect the page and look for the script element with id="global-react-props". This is a JSON object with data for the front-end. It contains an object current_user with your auth_token in it.
@anshgoyal:matrix.org
ansh

monkey:

i am not convinced by the similar tracks being presented as a graph like the similar artists. I think the artist name at the very least is missing to make it a useful feature. Personally, I would make it a grid of listencards like we do on the top-tracks page. It would also make the tracks playable without needing to navigate to their respective pages.

I agree, artist name should be added in the node to make the graph more informative. We can also show similar recordings in a grid format, but we'll end up not using the similarity score we have.

rayyan_seliya123
rayyan_seliya123
Sure it is super helpful for me now I'll use the submit_listens.py script and update the payload with a track which I know is in the IA cache also grab this API token as you described !!
@monkey:chatbrainz.org
monkey
There's definitely no space in those circles though. So you could define a new square (rounded corners?) component with enough space....which is suspiciously starting to sound like a listencard.
@anshgoyal:matrix.org
ansh
Umm...true
@monkey:chatbrainz.org
monkey
Do we have CAA ids for the similar tracks? If so direct benefit of using listencard is we get cover art
@anshgoyal:matrix.org
ansh
lemme check
@monkey:chatbrainz.org
monkey
Maybe the listenCard element can even be used directly in the SVG graph? With a foreignObject like I did in the top-$entity charts
@anshgoyal:matrix.org
ansh
The endpoint does not give us the caa ids, but since we fetch this data in the backend, we can fetch them from the database
@monkey:chatbrainz.org
monkey
https://github.com/metabrainz/listenbrainz-server/blob/master/frontend/js/src/user/charts/UserEntityChart.tsx#L64C1-L90C1
@monkey:chatbrainz.org
monkey
worth a try, but it might look bad. :P If it looks bad I vote for the grid layout
@anshgoyal:matrix.org
ansh
Having a large node might not look good
@monkey:chatbrainz.org
monkey
Yeah.
@anshgoyal:matrix.org
ansh
Let's switch to the grid for v1, and we can re explore in v2?
@monkey:chatbrainz.org
monkey
Note in that code above I set a small max-width
@monkey:chatbrainz.org
monkey
That sounds wise to me. Easy to implement, and an easy path to a possible improvement
@anshgoyal:matrix.org
ansh
so something easy like this right?
@anshgoyal:matrix.org
ansh
image.png
@anshgoyal:matrix.org
ansh
Yep! This PR has already been delayed a lot. We can have the improvements in a separate PR
@monkey:chatbrainz.org
monkey
@monkey:chatbrainz.org
monkey
state_event = OtherState { state_key: "@_discord_620492146406981642:chatbrainz.org", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/gKsusWLHNuRsUjChnZQHWZcM"), displayname: Some("thnlqd#0"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: Some(RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/rwLztoXzDYqcQuOCKuCnBXbj"), displayname: Some("thnlqd"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }) }) }
state_event = OtherState { state_key: "@_discord_620492146406981642:chatbrainz.org", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/gKsusWLHNuRsUjChnZQHWZcM"), displayname: Some("thnlqd"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: Some(RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/gKsusWLHNuRsUjChnZQHWZcM"), displayname: Some("thnlqd#0"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }) }) }
rayyan_seliya123
rayyan_seliya123
image.png
rayyan_seliya123
rayyan_seliya123
thx monkey followed your steps of manually adding and got the recording playable !
@monkey:chatbrainz.org
monkey
@bitmap:chatbrainz.org
bitmap
sorry didn't get pinged about this for some reason. that works for me, cc @reosarevok and @yvanzo
@anshgoyal:matrix.org
ansh
@reosarevok:chatbrainz.org
reosarevok
@reosarevok:chatbrainz.org
reosarevok
state_event = OtherState { state_key: "@tim:millerhub.net", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: None, displayname: Some("Tim"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: Some(RoomMemberEventContent { avatar_url: None, displayname: Some("tim"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }) }) }
@suvid:matrix.org
suvid
Also monkey I am passing token right now for auth
is it even needed?
as i am not using the token decorator in the backend
only the login_required decorator
@suvid:matrix.org
suvid
* Also monkey I am passing token right now for auth from the frontend
is it even needed?
as i am not using the token decorator in the backend
only the login_required decorator
@suvid:matrix.org
suvid
I wanna get done with the frontend part (or at least the initiating the upload functionality from the frontend by the end of this week 🙏 As it's taking a lot of time I feel now
@suvid:matrix.org
suvid
image.png
@suvid:matrix.org
suvid
will the auth token even be needed? as i am making a request while logged in
@suvid:matrix.org
suvid
and the decorator on backend is @login_required
@lucifer:chatbrainz.org
lucifer
@suvid:matrix.org the login required decorator doesn't check the token for auth. It checks cookies.
@suvid:matrix.org
suvid
thanks for clearing that!
@suvid:matrix.org
suvid
lucifer: this one as well pls
is the change required or should i let it be for now?
@lucifer:chatbrainz.org
lucifer
Ah I see.
@lucifer:chatbrainz.org
lucifer
Let me think about it a bit.
@aerozol:matrix.org
aerozol
state_event = OtherState { state_key: "@_discord_998344009309229136:chatbrainz.org", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/FxVAvipRZbeAwMvKBoPxDAGB"), displayname: Some("rubinho2.0."), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: None }) }
state_event = OtherState { state_key: "@jade:ellis.link", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some("mxc://ellis.link/xhCeG80fDVUQ3rsfrnV3vvK3kItYP0zs"), displayname: Some("Jade (gone)"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: Some(RoomMemberEventContent { avatar_url: Some("mxc://ellis.link/xhCeG80fDVUQ3rsfrnV3vvK3kItYP0zs"), displayname: Some("Jade"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }) }) }
@leftmostcat:matrix.org
leftmostcat
What are the barriers to offering entity type-agnostic search? As in, a search bar where I can enter "Lúnasa" and it will give me back both the artist Lúnasa and their self-titled album.
__BrainzGit (IRC)
__BrainzGit (IRC)
[listenbrainz-server] anshg1214 opened pull request #3322 (master…ansh/fix-entity-page-routes): fix: Errors on Entity page https://github.com/metabrainz/listenbrainz-server/pull/3322
@lucifer:chatbrainz.org
lucifer
@leftmostcat:matrix.org mostly a matter of supporting it on the search server (solr), currently each each entity is organized separately in its own collection. so in the current structure you would need to search all the collections separately and then combine the results which can be very inefficient, to do it more efficiently a new collection that has the data from all entities would be needed.
@leftmostcat:matrix.org
leftmostcat
So configuration of solr (and sir, presumably) rather than any technical barriers with solr?
@lucifer:chatbrainz.org
lucifer
Won't know about the technical barriers until the configuration is done and we test it :)
@leftmostcat:matrix.org
leftmostcat
Fair!
@leftmostcat:matrix.org
leftmostcat
If no one is actively working on that, I may toy around with it.
@leftmostcat:matrix.org
leftmostcat
* If no one is actively working on that, I may toy with it.
@leftmostcat:matrix.org
leftmostcat
I'd need solr and sir running locally, I assume.
state_event = OtherState { state_key: "@_discord_265427419832385537:chatbrainz.org", content: RoomMember(Original { content: RoomMemberEventContent { avatar_url: Some("mxc://chatbrainz.org/zDVSatkEraqemUGIAXGrOoxa"), displayname: Some("commandmc"), is_direct: None, membership: "join", third_party_invite: None, blurhash: None, reason: None, join_authorized_via_users_server: None }, prev_content: None }) }
@julian45:julian45.net
julian45
kellnerd: how aggressive is the cache for harmony (or at least the current public instance)? even though the result for this search doesn't include itunes results, the API endpoint indicated in the error does return results, so i'm wondering how long i might need to wait before the itunes response will be included in harmony's results
@julian45:julian45.net
julian45
(though this might just be an issue with itunes' response, not necessarily harmony's cache)
@julian45:julian45.net
julian45
* kellnerd: how aggressive is the cache for harmony (or at least the current public instance)? even though the result for this search (permalink here) doesn't include itunes results, the API endpoint indicated in the error does return results, so i'm wondering how long i might need to wait before the itunes response will be included in harmony's results
@julian45:julian45.net
julian45
* kellnerd: how aggressive is the cache for harmony (or at least the current public instance)? even though the result for this search (permalink here) doesn't include itunes results, the API endpoint indicated in the error does return results if curled, so i'm wondering how long i might need to wait before the itunes response will be included in harmony's results
@julian45:julian45.net
julian45
same deal with another fresh search/permalink, so methinks this is related to harmony's calls to itunes API/their responses
@julian45:julian45.net
julian45
zas: latest dnscontrol version from a few days ago supports concurrency for porkbun now, i'll update the github action accordingly
@rdswift:matrix.org
Bob Swift
Heads up in case you haven't seen this in the community forum... https://community.metabrainz.org/t/certificate-warning-for-blog-metabrainz-org/773114
@julian45:julian45.net
julian45
mayhem: reosarevok : do one or more of you have access to the WordPress dashboard for blog.meb.o? wordpress seems to have borked the cert renewal. documentation for reference
@zas666:matrix.org
zas
@julian45:julian45.net
julian45
perhaps this is a good reminder for me to put some time into the static site-ification project...
@mayhem:chatbrainz.org
mayhem
I do, but I need to run off right now. reosarevok you around?
@bitmap:chatbrainz.org
bitmap
julian45: I have access, what needs doing?
@julian45:julian45.net
julian45
could you please look at the SSL settings and see if there are any errors?
@julian45:julian45.net
julian45
link to WP.com documentation in my previous message
@bitmap:chatbrainz.org
bitmap
maybe I don't have the right credentials, since there are no "Upgrades" or "Hosting" sections in the wp-admin for me. I did eventually find a "Domains" page when I hover over the WordPress icon, but there are no domains listed there
@bitmap:chatbrainz.org
bitmap
Screenshot 2025-07-18 at 11.15.17 AM.png
@julian45:julian45.net
julian45
argh
@julian45:julian45.net
julian45
paging reosarevokto see if you have any better luck
@kellnerd:matrix.org
kellnerd
Failed requests are not cached by Harmony, so this isn't a cache issue.
@kellnerd:matrix.org
kellnerd
According to the server logs, iTunes API is currently returning lots of 403 errors.
@kellnerd:matrix.org
kellnerd
Might be a weird way to signal a rate limit error. I think I had investigated this once, but found no documentation about status codes.
@julian45:julian45.net
julian45
@reosarevok:chatbrainz.org
reosarevok
@julian45:julian45.net
julian45
rate limit value is possibly 20 calls per minute? based on this page i found but yeah there's no info about how rate limit is handled for this API
@julian45:julian45.net
julian45
bitmap: reosarevok zas : reo was able to get to the WP.com admin panel for the site; found the cert there showing as in a "pending" state, but upon attempts to manually issue thru a button to do so, got a bogus error "Sorry, we weren't able to provision the certificate. Please verify your DNS configuration and try again." Tried adding a CAA for blog.meb.o but dnscontrol throws an error that you can't have a CAA and CNAME for the same name, which makes sense
@julian45:julian45.net
julian45

iirc our WP.com site is on a paid plan, right? if so, might be time to contact paid support (flow to do so begins near the bottom of the page) and get assistance

clearly cert issuance/renewal with our dns config has been fine before, considering cert issuance history for this domain

@bitmap:chatbrainz.org
bitmap
it said we're on a free plan in the navbar for me (though I'm not authorized to view the plan page either)
@julian45:julian45.net
julian45