top | item 40239716

Show HN: Anonymous chat service with no registration or installation required

16 points| moigagoo | 1 year ago |cannon-chat.online

Cannon is a chat service created to mimic physical conversions. Like in real life, there is no chat history or account setup.

If you want to test the service, feel free to message me: https://app.cannon-chat.online/#/newcontact?deviceId=neatly-...

9 comments

order

snthpy|1 year ago

This is cool.

Presumably, your server stores a registry of Device IDs and IPs to route messages? What about replacing this with some sort of partitioned DHT to make it decentralized?

Also, the messages flow through your servers? Would it be possible to set up WebSocket connections between the users instead, and how would that compare from a security model perspective?

I don't really know much about any of this, so I'm just asking out of curiosity.

moigagoo|1 year ago

Thanks for the kind words!

> Presumably, your server stores a registry of Device IDs and IPs to route messages?

Not IPs but Push API registration objects.

> What about replacing this with some sort of partitioned DHT to make it decentralized?

I guess this could be done but it's a task I can't tackle at this point.

> Also, the messages flow through your servers?

Yes but I don't store them. My API just dispatches the message to the recipient's push service. Which means the message exists on my server only in the form of an in-memory variable for several microseconds between being received and sent further.

> Would it be possible to set up WebSocket connections between the users instead, and how would that compare from a security model perspective?

This generally can't be done in a PWA. OS won't allow a persistent WebSocket to run in background.

Also, this would disclose too much information about a client to all the other clients. Currently, all I know about other clients is their Device IDs which are just random strings.

RyanAdamas|1 year ago

https://app.cannon-chat.online/#/newcontact?deviceId=jealous...

contact for testing at your own risk...

Just a heads up for those testing it out on iOS: "Why can't I reply directly through the push notification? Because your browser that doesn't offer this capability. For example, Safari on iOS doesn't support this feature."

moigagoo|1 year ago

Yeah Apple kinda hates PWA it seems. I honestly tried to make it usable on iOS but it just fails with anything I'm trying to do.

blamestross|1 year ago

Huh, cool way to offload your data storage costs onto push notification services

moigagoo|1 year ago

Exactly! Not only that but the entire message delivery routine as well.

moigagoo|1 year ago

It works fairly well on Android but horribly on iOS because PWA support is very limited on iOS.