Some new playback features to keep you all entertained
There's actually quite a lot of live content on Nostr already and it's only just getting started.
I built Sho Bot as a way to test the Shosho push notifications server before turning it on for everyone. It simply posts a kind 1 when a qualified Nostr stream goes live.
But now reading the feed there are streamers here that I never knew existed. As a user I'll be getting 2+ relevant pushes from my follow list every day, which is plenty.
Way to go everyone. Keep it up!
I think we fixed that annoying padding that appeared in your video between the keyboard and the chat field.
Anything else needed to tighten this integration?
IMO the answer to both those questions is building business/companies that have their own thing going, but ride on Nostr rails.
Bring in more creators and viewers from outside.
Yeah I think that's helpful though most people who're restreaming probably use restream.io so they just need to put in their stream key and url to push their stream to nostr. Me personally I'm not manually publishing right now. I did that while ZS was under a prolonged DDOS attack. During that time I was using Cloudflare's streaming service so I had to publish the events manually.
This isn't an issue any more since we have more providers now and DDOS on all of them would be A LOT more expensive plus, some hosting providers wont tolerate this kind of behaviour and take the appropriate action(s).
The event publisher is still on noStrudel and it's just a couple of input boxes that fill-in the information for the event. You can take a look here:
https://nostrudel.ninja/tools/publisher

Thanks ππ
That is a really technical screen for a technical user.
I was thinking perhaps as simple as one field "hls URL" and a "go" button. Certainly no json.
Your point about just adding ZS is well made. But it still requires them to know what ZS is, have an acc, know what Nostr is, and have an Nsec. Easy for us but actually many hurdles for newbies once you add them up.
I just wonder how simple we could make it, you know?
Once you mentioned that you use Nostrudel event creator tool to create your own 30311 live events.
I am thinking of making a tool for simply that, with a nice web UI where you enter your HLS URL and just press "publish"
A way for non-Nostr streamers, especially those with multi casting setups to quickly "announce on Nostr" the streams they are running anyway.
I'm interested in your advice -
Does that sound like a useful thing?
How/for what reasons do you currently manually publish your own 30311s?
You booked me actually. This hits 
Reading nostr:nprofile1qqsxu35yyt0mwjjh8pcz4zprhxegz69t4wr9t74vk6zne58wzh0waycpt3mhxue69uhhqun00pujumn0wd68yttjv4kxz7fwv9c8qte4vscxgvecv9nxxdpevv6xywp5vdsnqerp8y6nzcfnxvmxzenxvycnsdpn8pjkvetyxvcryct9v4jxvcfexfjkywrzxpjrxenrvgurwqgkwaehxw309amk7apwv3jhyemfva5jucm0d5hszxrhwden5te0wfjkccte9ejx2un8d9nkjtnrdakj7h0jgy8 highlights while nostr:nprofile1qqs9tuz9jpn57djg7nxunhyvuvk69g5zqaxdpvpqt9hwqv7395u9rpgppemhxue69uhkummn9ekx7mp0qy2hwumn8ghj7un9d3shjtnyv9kh2uewd9hj7qghwaehxw309aex2mrp0yhxummnw3ezucnpdejz7d6jhemillustrates. Dual wielding nostr:nprofile1qqs24yz8xftq8kkdf7q5yzf4v7tn2ek78v0zp2y427mj3sa7f34ggjcpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcpzpmhxue69uhkummnw3ezumt0d5hszrnhwden5te0dehhxtnvdakz769wywf and nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtckgrenr is v nice.

Hi. It's like Facebook Live for Nostr, and in the future it will be like Whatnot or Tiktok-Shop. Would love your feedback nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtckgrenr
If you're interested I have raised an issue on ZS Core repo here. https://github.com/v0l/zap-stream-core/issues/39
Maybe not exactly this one, but yes that's why I was playing
It's about time Australia got with the program. Are we really going to defend our wildly unpopular censorship commissar at the risk of our relationship with the US? 
Hi nostr:nprofile1qqsqdqc0dj6eyk7c9n99n0dgfrcq2enxmlcyd3fc9936n9azxndyp3gpremhxue69uhkummnw3ez6er9wch8wetvd3hhyer9wghxuet59uq3camnwvaz7tmwdaehgu3ww3hk7mrn9enkcmmzv9kzu6ty9uq36amnwvaz7tmwdaehgu3dwejhy6tx9eekcmm5dpujuamfdchsle4nm5 did you ever get this one working? I tested on iPhone 12 and believed that it works fine.
I ask because I have another iPhone user with similar issue. I'd love to know how you got on.
Grok also. Minus the sound.
https://nostr.download/a28e5c615123c431b8d34b89500d1dea371e018a18bf8cf56388838bb96a9940.mp4
Awesome. Looks like it wants a hug
Playing with character design. Midjourney animation is really great


There is no better time to be a tech founder than right now. Podcast with nostr:nprofile1qqs043gn588da502h36q0sffjay9m69mk28dmm805qtgzl7g6n6q0fgpp4mhxue69uhkyunz9e5k7tcpzemhxue69uhk2er9dchxummnw3ezumrpdejz7qgwwaehxw309ahx7uewd3hkctc80655m on AI, #thenostr, and a little bit of where nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtckgrenr is headed. Thanks for the opportunity to chat Jake!
I wonder if it is bad etiquette for my server to maintain multiple 24/7 subscriptions to multiple popular relays ... Or, no worries?
Here is what I think I'm building.
Server maintains 24/7 persistent websocket connections to a set of relays with two subscriptions
1. For all kind 30311
2. For kind 3 where author is one of a set of n'000 pubkeys that have requested push.
Each time a 30311 comes in, compare the 30311 host to the kind 3 lists, and if the host is present in a user's list, push the user.
But I wonder
Isn't that quite spammy and taxing to maintain 2* 24/7 subs to each of a set of public relays?
Or is it no drama at all?
For sending push messages, I used https://github.com/web-push-libs/web-push-php in https://www.drupal.org/project/pf_notifications
So no platform solution there, but sending the data directly to the endpoints of the vendors (Apple, Google, Firefox etc).
Thanks Sebastix! For clarity I have the push side of the equation worked out using Expo Notifications. What I don't quite understand is the best pattern for my server to become aware of the Nostr events that are the trigger for the push.
Hi friendly Nostr devs.
What's the best pattern for push?
I have a server with a db of npubs and push tokens from my app.
If an npub follows another user, and that user goes live, I would push to the npub's token "user is live! heres a link"
Should my server maintain a persistent connection to multiple relays subscribed to all kind 30311s to identify when all lives start?
And, similarly for follow lists, should I persistently subcribe to all kind 3s? (And then wash them against npubs in my db, or perhaps specify 1000 author pubkeys in a req?)
Or some other pattern? It's all seeming quite inefficient and spammy on public relays...
Maybe I am missing an obvious layup e.g. somehow populate my own local relay with all kinds 3 and 30311's and connect locally with impunity?
What pattern have others used? Are there docs on this? #asknostr nostr:nprofile1qqsyvrp9u6p0mfur9dfdru3d853tx9mdjuhkphxuxgfwmryja7zsvhqpzamhxue69uhhv6t5daezumn0wd68yvfwvdhk6tcpz9mhxue69uhkummnw3ezuamfdejj7qgswaehxw309ahx7um5wghx6mmd9u2mk7fe nostr:nprofile1qqsqvcu68pkfcyq5y9mz9n9u7sys33835rpnuglc6mtg7j4lv40c7ugpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsz9mhwden5te0wfjkccte9ec8y6tdv9kzumn9wshszrnhwden5te0dehhxtnvdakz7k6tgvl ππ
Yet to try, just researching it now.
Seems superior to my current setup of VSCode and Cline in that it is designed for multi-agent asynchronous work, and has a specific opinionated approach to tool approval and completion review steps that makes a lot of sense.
Rather, Shosho provides the camera, instead of zoom. Maybe I do not understand why zoom is required.
Ah, nvm, I read your other response.
Rather, Shosho provides the camera, instead of zoom. Maybe I do not understand why zoom is required.
If you want to live stream your video IRL, would nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtckgrenr work for you?
It's the best builder community I've ever seen. Plenty to be sniped by
βJust because you take no interest in politics doesnβt mean politics wonβt take an interest in you."
Remember my story. Happily focussed on what I wanted to create and was within my control ... and then the govt shut down my entire industry.
You'll just have to forgive me if I am hyper aware of sovereign/political risk.
I love my country Mar.
But
If states are going to be so intrusive to companies based in /other states/ then it makes sense to incorporate in a jurisdiction which will actively protect you from them.
Is that the US? This case is an interesting test.
Well I agree to focus on Nostr's points of leverage, and not needing to name Nostr at the time you try to cross the chasm. But, I don't see any reason to pull punches, so if you're not pointing yourself at a $bn+ competitor incumbent then I would say you're aiming small. The benefit of aiming big instead is you're not taking any business model risk, you get to simply copy and incumbent and be a fast follower riding better rails.
Its the early hours of the morning here so, quick thought and can flesh out later.
1. I was vibing a docusign using nsec signing. Few lazy afternoon sessions and good progress. Docusign market cap $16.5B. I don't need or want to do another startup, let alone a replacement strategy play but a small team could displace chunks of the b2b stack with new economics. Pipedrive disrupted Salesforce. Can a nostr CRM disrupt Pipedrive because trojaning npubs into business is π₯. But don't talk about nostr, talk about solutions.
2. nostr:nprofile1qqsphkn7raeed0dz68hejqea4r7jmsmzsyrephumuch4jypchwtufkgpzemhxue69uhkummnw3ex2mrfw3jhxtn0wfnj7qghwaehxw309aex2mrp0yhxummnw3ezucnpdejz7qgewaehxw309aex2mrp0yh8ymmyvf5hx6r0wqhxu7303hr2v8 may want to share what he is doing. Another sector with significant incumbent revenues and less friction.
3. The point being, products (not hobbies) first. Monetization is a deliberate act. Jack can code bitchat without concern for monetisation. But that is a byproduct of silicon valley success and mindset. I've built startups outside SV and you have to be pragmatic about monetization.
4. There was an excellent 30023 about a year ago by somebody who tried to build an app using relays as a data store and how slavish commitment to a protocol may be the wrong formfactor for the solution. Maybe some apps just stand on the shoulders of the protocol but aren't prisoners to its original libertarian ideology. It's a protocol so you need zero permission to use it in the way it serves your customers.
5. Shiny objects. Vibing clutters the landscape with broken projects. We need a badge for apps that have a product person and a malevolent tyrannical committed QA function that demands the product serves customers, not the autist hobbyist creator (I'm talking about me of course)
Back to bed.
Two $bn businesses here.
1. Video streaming sales. Whatnot ($5bn GMV), Tiktok Shop ($50bn GMV). Fast growth commission on sale model. But what is it? Live stream discovery and chat (NIP-53) and ecommerce (NIP-99). Build on Nostr rails solves chicken-and-egg, reduces time to market, and then pitch it to Whatnot users who can just use it, without knowing how Nostr works. I am building this with nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtcpzamhxue69uhhyetvv9ujumn0wd68ytnzv9hxgtcpzamhxue69uhhyetvv9ujuurjd9kkzmpwdejhgtckgrenr
2. ERP with workplace chat. Slack (aq by Salesforce for $27bn). SaaS MRR model. But what is it? A workplace identity (NIP-01) and SSO (NIP-42&98) system with chat and where data can move between silos (on Nostr!). Compete with other ERP and workforce systems on two key principles 1) interoperable with vast open source ecosystem for free. 2) no platform lock in ever, take all your data and leave whenever you want.
There are more. These bones are great. Just need businesses on them.
Yeah I think the fish has to pull ahead over long distance. I asked and she said medium.
nostr:nprofile1qqsda2memtapc2lykjnd8t9px4ake2stw39lg6k49xj6u3jz3pteu6qpz9mhxue69uhkummnw3ezuamfdejj7qgmwaehxw309amk7apwv3hhwmnfwdhkuargv46hqtnrvyhszythwden5te0dehhxarj9ekxzmny9u6elzz9 π€―σ ΄σ σ σ σ Ήσ σ σ ₯σ £σ €σ σ £σ σ σ σ ©σ σ ₯σ σ σ σ σ σ σ £σ σ σ ’σ σ €σ σ σ σ σ €σ σ σ €σ σ σ σ σ σ σ σ σ £σ σ σ σ σ σ σ σ σ §σ σ σ σ €σ σ ―σ σ Έσ σ §σ ―
Hi nostr:nprofile1qqsx8lnrrrw9skpulctgzruxm5y7rzlaw64tcf9qpqww9pt0xvzsfmgprfmhxue69uhhq7tjv9kkjepwve5kzar2v9nzucm0d5hsz9thwden5te0wfjkccte9ejxzmt4wvhxjme0qyvhwumn8ghj7un9d3shjtnndehhyapwwdhkx6tpdshssfnq7m if shosho users want to delete their stream event from the network (as with an old or test screen) can I do this via the ZS API at all?
I do not see mention of delete in the docs.
SO IS YT ( YOUTUBE ) STILL THE BEST WAY TO POST VIDEOS TO NOSTR CONSIDERING nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqgcwaehxw309aex2mrp0yhxummnw3exjmm59e3k7mgndzg4j IS TRASH ...
OR EVEN SIMPLE JUST RECORDINGS A VIDEO BETTER .. THAN nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqgcwaehxw309aex2mrp0yhxummnw3exjmm59e3k7mgndzg4j
#ASKNOSTR
Thanks for your feedback. Let me know if you'd like any more help.
Thanks Kieran
New test result
1. Top up balance now works, thanks
2. Stream with zero balance to free tier still fails. It connects and immediately disconnects vs expected that free tier should work with zero balance -
Can you please reenable streaming to free tier with zero balance?
3. First stream connection always fails regardless of tier or balance. Very disconcerting for users -
Is there a pattern you recommend following e.g. build in instant auto retry?
In your screenshot your RTMP server url is empty. You would need to try again using the credentials I gave you. It needs to look like this.

An update for you, not good one unfortunately. nostr:nevent1qqsqvv7du8eqghsxwlvmkht4p9u738e8xaut6ppffvcthklpnqnr7uspr9mhxue69uhhyetvv9ujumn0wd68y6t0wshxxmmd9upzppwlqz30d2gcg565erfdn7atgqpthpd5yfd6a2mqltajtp79qw82qvzqqqqqqywq7vsd
Hi both
I have created some credentials for you to use temporarily at my cost. At some point should cost run up, I will delete these, but in the meantime just use them however you like.
Stream key: "f74f751e-33c0-472a-a176-47cdb26d50ee"
Server URL: "rtmp://broadcast.api.video:1935/s"
Playback URL: "https://live.api.video/li3p7jKilEfIAMcCJfa5NTDz.m3u8"
To add these to your app, press on the server, then press "add" - see the readme on the GitHub at https://github.com/r0d8lsh0p/shosho-releases
Anywhere Nostr streams are shown β Shosho, Primal, Amethyst, Zap Stream, etc.
Hi both
I have created some credentials for you to use temporarily at my cost. At some point should cost run up, I will delete these, but in the meantime just use them however you like.
Stream key: f74f751e-33c0-472a-a176-47cdb26d50ee
Server URL: rtmp://broadcast.api.video:1935/s
Playback URL: https://live.api.video/li3p7jKilEfIAMcCJfa5NTDz.m3u8
To add these to your app, press on the server, then press "add" - see the readme on the GitHub at https://github.com/r0d8lsh0p/shosho-releases
nostr:nprofile1qqsphkn7raeed0dz68hejqea4r7jmsmzsyrephumuch4jypchwtufkgpzemhxue69uhkummnw3ex2mrfw3jhxtn0wfnj7qghwaehxw309aex2mrp0yhxummnw3ezucnpdejz7v69ggk nostr:nprofile1qqsgthcq5tm2jxz9x4xg6tvlh26qq2actdpztwh2kc86lvjc03gr36spzemhxue69uhhyetvv9ujumn0wd68ytnzv9hxgqgcwaehxw309aex2mrp0yhxummnw3exjmm59e3k7mgndzg4j
IM TRYING TO GO LIVE BUT GET THIS MESSAGE...
HOW CAN WE GET THIS CORRECTED π€


From the screenshot it looks like the app is failing to connect to the Zap Stream API. Zap Stream has been having troubles over the last few weeks, on and off intermittently which may cause the issue.
If ZS isn't working then you can alternatively use any other RTMP server. If you like to set one up easily, you can use API.video to get one, then press on the server in shosho to add the new server details to the app.
I will also take a look next time I am back at the keyboard.
It's Nostrobots by nostr:nprofile1qqszdwewhmtv25kkwryqfvxk25n8k0rx9vs7qfkkuj9vjwnqwpfsjkqppemhxue69uhhjctzw5hx6ef0qy88wumn8ghj7mn0wvhxcmmv9uq3yamnwvaz7tmj9e4k76nfwfsju6t09uyp90dnIt's very cool. I wrote a bit on it here. https://rodbishop.npub.pro/post/4f0baffd/








