- company@stevekrouseVal Town Company *@val.town Email Routing This val forwards emails to addresses that don't exist to all of us at Val Town. For example, this forwards feedback@val.town to all of us. We achieve this by forwarding emails to this email handler, and this email handler forwards them along. To accomplish this without Val Town would require setting up a Google Group. I prefer doing it in code. Over time we will have more complex routing here.Email
- detectNewWebsiteContents@vipshekDetect New Website Contents This val fetches a given publicly-accessible URL and detects whether its contents have changed. If they have, it sends an email to notify about the change. Changes are detected by computing a quick hash of the website's contents, storing the hash, and comparing against the previously stored hash on each request. Trivial changes to the website's contents will count as a change, which may not be desired for some use cases. Usage Fork this val and update the URL to point to your website. Optionally, update the storage key or email subject. Set a schedule for how often you want to detect changes (default 1h). Receive updates when the given website changes.Cron
- dm@stevekrouseDM Me! Ever wanted to message someone about their val but you couldn't find their contact info? Want to allow folks on Val Town to contact you without exposing your email address? Boy do I have the over-engineered solution for you! This is a userspace, authenticated protocol for Val Town direct messages. Protocol Expose a dm function on your namespace that that accepts messages and some authentication data (described below). The easiest way to accomplish this is to fork this val. What you choose to do with direct messages is totally up to you. At the moment, I email myself your message and save it to a private array val. You could forward it along to yourself some other way, batch up messages to get a daily summary email if you're Mr. Popular, or send them to /dev/null if you're Mr. Antisocial. Authentication This protocol uses my Val Town public key auth scheme , so you'll need to follow the first two steps of that blog post – (1) generate a keypair and (2) publish your public key – to authenticate to this function. Usage You can call this function via the @stevekrouse.runValAPIAuth helper: @stevekrouse.runValAPIAuth({ val: "@stevekrouse.dm", args: ["hi steve!"], keys: @me.exportedKeys, }); Example: https://www.val.town/v/stevekrouseTest.untitled_tealMinnowScript
July 31, 2024