Client support as in:
When you upload media in a Note on client it goes to your Blossom server (instead of the client default host)?
I imagine you have your personal Haven relay in your list of relays on your client so all of your notes are being published there so it’s just the media factor, right?
I HAVE MADE A GRAVE MISTAKE
NONE OF THE GIFS ON GIFBUDDY WERE BEING PUBLISHED TO RELAYS FOR THE FUTURE OF GIF SEARCH
All gifs were still uploaded to @nostr.build, but the File Metadata under the NIP94 standard was never broadcasted
This was a major blunder on my end and I appreciate the help from @The Fishcake🐶🐾 and @Don't ₿elieve the Hype 🦊 for helping me discover the issue
I have since corrected the problem so now everything should be working as intended
I added an NIP94 gif counter to the front page so that we can all track our progress, which currently stands at a measly 35 gifs
Please help me correct this mistake by sending as many #gifs as possible and telling your family to do the same
https://media.tenor.com/iD6b9jYPFH8AAAAC/hangover-fudged-up-guys.gif
@Moel, so I think this one failed because there's actually a video (not a gif) and then the app tried to translate this 1 second clip with no audio and failed
I translated it to english above
Remember that you can always translate text only (cheaper) by specifying "Translator english text"
Adding the "text" keyword removes any media from being quoted/analyzed
Nevertheless, there's something I still gotta figure here so thanks for letting me know 😉
I made another change
It definitely failed because of the 1 second .mp4 file that doesn't have a detectable language
I made the quote replies more clear as to what is being quoted exactly
The solution is kind of hacky because I'm tired, but I wanted to do something to make you proud🫡
I moved over from the 'pynostr' library to 'nostr_sdk' because it's being actively maintained, but every once in awhile I get stuck
Why doesn't this filter work to search events in the NIP94 File Metadata?
Filter().kind(Kind(1063)).custom_tag(SingleLetterTag.lowercase(Alphabet.M), "image/gif").search("dinosaur")
Is there a way to search custom tags that aren't of "SingleLetterTag" type (e.g. "summary", "alt", "ox")?
#asknostr #python
@Yuki Kishimoto@NotBiebs@The Fishcake🐶🐾https://m.primal.net/LfIy.png
I see
I figured the search term was for the “content” field, but wasn’t certain
The problem I have is that this filter doesn’t reduce the size of the request enough (error from relay that request is too large) and I can’t think of a way to filter it down farther without using custom tags that aren’t single letters
If you have any advice, let me know
Thanks for helping!
@Don't ₿elieve the Hype 🦊 do you have any good advice on how to navigate this note above?
Trying to figure out how to filter NIP94 events (kind 1063) enough to be a service for gif search
I’m not seeing a way to parse these notes by other tags
Hoping you’re familiar with this library 🤞
Nice! I’ll definitely try it out and let you know how it goes
I was playing with it more last night and discovered some things
I think the next problem I have is trying to find the right relays to add
Nostr.Build uses Blastr so the NIP94 events are published to whatever relay is online and working, which makes it challenging to know where to look
For example, if you just add the Damus relay you get 94 events, I added like 4 more and got up to almost 900, but I know we’ve uploaded more GIFs than that
Just need to find where they are hiding
I think you can help me with this one:
I've gotten the library and filter working now (I think), but I'm only seeing 95 events when connected to the damus relay. I added a bunch more relays (nostr band, nos.lol, primal, nostr.wine, nostr-pub) and now I'm up to 892 events (590 are unique hashes/gifs).
But I know we've uploaded more than that since the launch of gifbuddy.
According to Fishcake, nostr.build uses Blastr when sending NIP94 events, but if that's the case then why am I not seeing way more gifs on these relays?
My goal is to make this a simple function for clients to use so that we can get gif buttons without using Tenor and GIPHY
Hoping you come in clutch on this one
https://media.tenor.com/ZrHDWRIOCi4AAAAC/fingers-crossed-i-hope.gif
I don't get how to search nip94 events if I don't know what relay ask events from
Current process:
- Gifbuddy uploads to Nostr.Build
- Nostr.Build publishes a NIP94 event to Blastr
- Blastr goes to whatever relays are online and working (I don't 100% understand this area)
I expect Blastr would include publishing to popular relays like damus, primal, nos.lol, nostr.band, etc. Yet when I add these relays and search for such events (Kind 1063) I get less than 900 results for gifs, which can't be right.
Nostr.Build definitely has more than 900 gifs uploaded assuming that every file uploaded to Nostr.Build has a corresponding nip94 event published.
I can keep adding relays, but I don't think that's the right answer
Hopefully I'm making sense, but this is where I'm at right now:
https://media.tenor.com/UsxDt3pIYPoAAAAC/crazy-pills-will-ferrell.gif
Nah, I figured it out with Fishcake in DMs: I messed up
When I upload a gif to nostr.build, I get nip94 event data in the response, which I’m suppose to publish, but I interpreted that at the time as it’s already been published
So gifs have been uploading to nostr.build, but haven’t been publishing nip94 events, which super sucks
Working on fixing it this weekend
You wouldn't happen to know how to use Blastr in python with nostr-sdk, would you?
I pretty much finished the nip94 update to gifbuddy, but I want to broadcast it as wide as possible (right now it just does damus and primal relays)
I don’t even know how this bot would work on other traditional social media platforms
I’d probably have to pay a subscription to use a permissioned API on Twitter
And then the bot would probably have to reply with a Stripe payment page for a user to use Apple Pay or manually enter in their credit card
But then that would require the minimum transaction size to be $0.50 even if it doesn’t cost that much to actually do the work
With Nostr and Bitcoin, I can build without these restrictions
nostr:note1lpnhc66nxc7rltkva8mlg6avv9fyuywyczsh94vkqenqzvls8w3sqpf3yt
I think the problem there is because the input language is Thai and I don’t have support for that yet
I’ll have to check the logs to confirm
But I should have a language detection earlier so that you don’t pay first to find that out
I’ll work on that and will get back to you
Thanks for testing it out though! I just refunded you the sats. Let me know if you have other problems with it.
I’ve been going back and forth on this
On one hand: bots work on any client and are easy to use
On the other: they are limited in their interaction to just replies or are otherwise thought of as spam
I’m sure there’s cool use cases that I’ve never thought of. If you think of something cool that you want, let me know and I’ll try to build it if I can 🤙
Alright, I just made an update that detects the language of the note first
Should let you know now that a language is unsupported before quoting instead of after for text only notes
Still need an implementation for notes with images and video only
Thanks for the feedback! Let me know if anything else breaks
I still have no idea how to zap on Damus
My wallet is connected, I used the back door script to have the icon visible on notes, but I now I get “error fetching invoice”
Here's a quick look into what I've been building lately
@Translator is a bot that works with notes, #memes, @fountain_app clips, @wavlake #podcasts, and videos from anyone on Nostr
Simply tag the bot and note the language (e.g. Spanish), zap the quote reply and get your content
Now you can navigate the Global feed and finally know what's going on out there
#makebotsgreatagain
Disclaimer:
This is still a prototype under development so if anything breaks please let me know! Definitely don't spend too much.
https://m.primal.net/LcaA.mp4
Yeah, I’m thinking it’s because it’s Thai
Also, you can have the bot translate the text only (cheaper) by saying “text” after the language
Otherwise if there’s media like an image it will attempt to translate that too
Saves some sats
Notes by lemon | export