173 sats \ 9 replies \ @adam_coinos_io OP 18 Sep \ parent \ on: Coinos adds Nostr Wallet Connect (NWC) nostr
Yeah I added rate limiting to our nostr relay just yesterday. I believe it's set to 8 req/minute per IP
Using jb55's noteguard plugin for strfry in case anyone's interested: https://git.jb55.com/noteguard
I just bumped it up from 8 to 20 posts per minute lemme know if you need moar tho
reply
Mhh, if your issue in #691690 is caused by rate limits then they should be resolved within a minute but that doesn't seem to be the case, right @grayruby?
@adam_coinos_io, Coinos is not open source, is that right? I wanted to investigate how you have implemented NWC but it doesn't seem to be the case. I guess I will need to register with Coinos to setup NWC myself to confirm what is happening in @grayruby's case.
reply
I think the issue was that our load balancer wasn't passing the user's IP to the relay properly so it thought all users had the same IP. Should be resolved now.
Also yes we are open source and our NWC implementation is here: https://github.com/coinos/coinos-server/blob/master/lib/nwc.ts
reply
Cool, thanks for the info!
I assume rate limit errors are communicated by the relay as defined in NIP-01 like this:
["OK", "b1a649ebe8...", false, "rate-limited: slow down there chief"]
and not per wallet as a NWC error as defined in NIP-47 like this:
{ "result_type": "get_info", "error": { "code": "RATE_LIMITED", "message": "rate-limited: slow down there chief" }, "result": null }
Communicating it via the relay (if you control the relay) makes more sense imo.
I also found a potential issue on our side that would still explain @grayruby's issue with rate limits + missing error handling on the relay layer on our side. Our code currently only expects NWC errors when dealing with NWC, not relay errors.
reply
reply
Can you try one more time please? I just fixed a bug with our NWC responses
reply
reply
:(
Just signed up on Coinos myself. Attaching for payments works fine but when I attach it for receives, I get this error:
failed to create test invoice: failed to connect to wss://relay.coinos.io: null
which doesn't make sense since I can connect fine to it on the client. So sounds like something is wrong on our side.
To confirm: you get
Cannot read properties of undefined (reading 'includes')
no matter if you try to attach for sending or receiving, right?reply