Avatar
Vitor Pamplona
460c25e682fda7832b52d1f22d3d22b3176d972f60dcdc3212ed8c92ef85065c
Nostr's Chief Android Officer - Amethyst Social
Replying to Avatar franzap

Yo nostr:nprofile1qyghwumn8ghj7mn0wd68ytnvv9hxgtcqyp6hjpmdntls5n8aa7n7ypzlyjrv0ewch33ml3452wtjx0smhl93ja8kylg trying to zap the Amber app. Any idea why your node is not adding the `a` tag? Tried the same with other apps and they do it right.

{

"kind": 9735,

"id": "4669d8f7ddb04141f3e9d6d05d5eb27c9e04002ceee41218074dd7743b38b498",

"pubkey": "8ad8f1f78c8e11966242e28a7ca15c936b23a999d5fb91bfe4e4472e2d6eaf55",

"created_at": 1757510751,

"tags": [

[

"P",

"726a1e261cc6474674e8285e3951b3bb139be9a773d1acf49dc868db861a1c11"

],

[

"p",

"7579076d9aff0a4cfdefa7e2045f2486c7e5d8bc63bfc6b45397233e1bbfcb19"

],

[

"bolt11",

"

lnbc50n1p5vzlzupp5zrafpm4y6ynjph4j5484trlfemwqt6kzs29hj70v2u2x3q6ngmlqdq8tfshqggcqzzsxqrrsssp5c0pedzdq5j4lf5npy2ugssmw8m4lpfzmpujwcvqf7jadkfr9cfvq9qxpqysgqqcp5cpdan2ltt9nv50u6l6s9knt3yy7t6v9k2tx788a803zmcfs8tgae2luvp7nasn6jmg83mmd3s0e9m2n7f4s3wvamrsrp7a0s5dsq6anm7u

"

],

[

"preimage",

"zSRSsWiRDke99PI3eWw2Bbrudly/fKoXE8YdaynoL0s="

],

[

"description",

"{\"id\":\"ab4ca84442374d1129d22af153d438fd0cb1e6c76f9e6042bcb6a7d2239dce6f\",\"content\":\"\",\"created_at\":1757510738,\"pubkey\":\"726a1e261cc6474674e8285e3951b3bb139be9a773d1acf49dc868db861a1c11\",\"kind\":9734,\"tags\":[[\"amount\",\"5000\"],[\"p\",\"7579076d9aff0a4cfdefa7e2045f2486c7e5d8bc63bfc6b45397233e1bbfcb19\"],[\"a\",\"32267:7579076d9aff0a4cfdefa7e2045f2486c7e5d8bc63bfc6b45397233e1bbfcb19:com.greenart7c3.nostrsigner\"],[\"relays\",\"wss://relay.damus.io\",\"wss://relay.primal.net\",\"wss://relay.nostr.band\",\"wss://nos.lol\"]],\"sig\":\"2a7f93c2043122fa8d8129ba28bedfcf16a237cd33cff254e3045727248425babb3b8ab1f0193f2dd9e9cf3257e2dfba97930b1bbc72a56a3fb91ff05a19fc77\"}"

]

],

"content": "",

"sig": "470d9ab4082d4ea8176919d41a573e5e72aeae8510f9bbe67fa79437f1b5c53b6ccac98111b725c1580985ea220c2a4bea19df25513deaf2d3eb7b791f55755d"

}

It comes from Bitvora. It's their service that writes the zap. They will need to add the a tag there.

Quite impressive that Bitchat Android has garnered over 100,000 downloads in a couple of months. True innovation FTW!

Make sure your inbox relays are working. The new version only downloads notifications from them.

Replying to Avatar Jordan S

Hello Mr. nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezuamfdejj7qgswaehxw309ahx7um5wghx6mmd9u2mk7fe, I just want to mention an unusual occurrence that only my DMs notifications are showing, and none of the other notifications.

Not sure if it's a bug, or relays being delayed, or some other issue.

We only offer push notifications for DMs and zaps. For the rest, you need to use Pokey.

Banksy doesn't miss

Fun fact. Text, simple ui and 2d elements are usually rendered using cpu on Android devices because it consumes less power than doing the same work in the gpu. The Developer Options menu has an option to force GPU rendering which makes the UI faster but the battery drain increases by 10–15%. On mobile, the name of the game is energy budget.

Those using old Pixel phones, the recently released Android 16 gives you a GPU performance boost of ~20% on the update. Animations and some rendering tasks should be slightly but noticeably faster after the update. All that with just a simple GPU driver update. 🚀

Yep, but we can keep improving it. An online opengraph preview maker is the easiest way to integrate and have easy buttons to open in other clients.

Is anybody using a different Tor configuration per logged in user on Amethyst?

I am thinking on simplifying it and make a single Privacy Options for all users. In that way, you only need to set it up once.

Replying to Avatar fiatjaf

nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z isn't it too much purism to include an ["alt", "a short note: "] on all kind:1 events?

I was going to propose to deprecate Alts. They don't do anything.

Replying to Avatar Anthony Accioly

nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezuamfdejj7qgswaehxw309ahx7um5wghx6mmd9u2mk7fe apologies for bothering you (just checking in with the most active committer to NIP-17). Where does Amethyst publish kind 10050 lists? Does it send a copy of the list to the relays listed in the Kind 10050 itself? Does it also send a copy to the user’s Outbox relays? Anywhere else?

https://github.com/nostr-protocol/nips/blob/master/17.md

#asknostr #nip17 #dmRelaysList

All the user's outbox relays + All indexer relays (kind: 10086) + all the ~300 connected relays at the time.

The function is called sendLiterallyEverywhere :)

More info in the sspecial relay lists for indexers https://github.com/nostr-protocol/nips/pull/1985

Is the always-on policy just for VPNs or are there other exceptions?

App developers constantly run into issues to keep things running. For instance, in Nostr, we would like to keep an always on connection with the user's chosen Inbox relays at all times, replacing the Push Notification stack (FCM/UnifiedPush) altogether. Though I am not sure if we were successful in keeping that service running at all times, from a regular app, yet.

Can you tell people to not put these urls in the Outbox relays? There are way too many people putting them there.

If you are not reverting your code 3 times a day, are you really innovating?

It will definitely reduce the amount of relays. But it will still connect with the inbox/outbox of the author of the threads you are seeing.

Everybody wants to control the fate of your nsec.

Everybody wants to control the fate of your Nostr events.

Everybody wants to control the fate of your Blossom media.

Don't let them have this power.

You might need to do a Content Provider for your DB. Otherwise each service will have their own DB.

Ideally if Primal and Amethyst both import Pokey, we can start a single Pokey service while sharing the same user settings. Starting from Amethyst or from Primal should yield the same service.

Replying to Avatar KoalaSat

nostr:npub1gcxzte5zlkncx26j68ez60fzkvtkm9e0vrwdcvsjakxf9mu9qewqlfnj5z what's the new way of doing `HttpClientManager.setDefaultProxy(getTorKmpObject().proxy)` with the new version of quartz?

I migrated over to a DualHttpClientManager class with proxy and non proxy okhttp clients that keep being recreated when the connectivity or Tor's services restart or change ports using Flows.

Not sure if that's the way everybody should be making these, but that's the "New way"

https://github.com/vitorpamplona/amethyst/blob/main/amethyst/src/main/java/com/vitorpamplona/amethyst/Amethyst.kt

Amber is still using the old (simpler) way: https://github.com/greenart7c3/Amber/blob/master/app/src/main/java/com/greenart7c3/nostrsigner/Amber.kt

Big time. Apple is stuck in 2017.

Android is all the rage these days.

It translates on the phone. All translation APIs track you and sell your data. Massive privacy role.