Beam Anonymous Messenger (BAM)

This is a proposal to implement a Beam Anonymous Messenger (BAM)

BAM (temporary name) is a proposal for a Beam Anonymous Messenger to offer private person-to-person text messaging with addon features to exchange value.

Functional requirements:

  1. Must be free or starts with an initial one time fee.
  2. Either build as a Dapp or natively into the Beam Wallet.
  3. Implement BAM on top of SBBS.
  4. Supports sending and receiving of text messages.
  5. Supports contacting an NFT owner by public key (multiple assets) or by article id (single asset).
  6. Supports contacting a BANS address.
  7. Supports the sending and receiving of Beam and confidential assets (CA) in chat.
  8. Sent and received messages are stored locally only.
  9. Must also work when the recipient is offline.
  10. A fixed max delivery period when a recipient is offline, example 12 hours.
  11. Must be able to enable/disable the receiving of messages from anyone.
  12. Must be able to block individual senders.
  13. Show a checkmark when a message is delivered.

Future releases

  1. Group chat.
  2. Message cancellation before and/or after delivery.
  3. Support for emoticons
8 Likes

You can also post this idea in “Creating Some Killer dapps”

4 Likes

A small fee for every message which is distributed to the miners would be beneficial for the security of the network due attracting miners while also limiting spam. Maybe after a certain number of messages per f.e. hour a progressive increase of fees.

In connection with BANS (if enabled) it would easy to use for everyone.

As you already mentioned it should be only stored locally and p2p. Maybe build in an option for messages to be only stored in RAM.

1 Like

If the message could be included in already existing blocks, then surely there would be no need to apply extra fees? Imho a messenger app such as the one descibed by OP, should be totally free to use.
Nobody will use a messenger app which costs them money to send every message ?

1 Like

Who is OP? Messages will not be included in any block, just the fees if that is what you mean and how could they be included in existing blocks? Further i agree that BAM should be free, however we also need to prevent that someone will spam the nodes. Maybe a threshold under which messaging is free would be sufficient. Above that introduce a progressive fee and maybe a throttle. What is your suggestion? How would you solve this?

1 Like

Messenger app sounds good.

alternatively (slightly OT), it could be very useful to be able to add a simple encrypted personal message to a TX.
e.g. “this is a payment for order #1234
been waiting for years to see this kind of feature

1 Like

Messenger App is a must.

1 Like

IMHO, Beam is not in the business of messenger apps!
Leave that to the companies who are specialized on that.

That said, a very very extremely basic messaging and for very specific use cases might be beneficial. Maybe even good enough without any GUI.

  • pgp-like signing of messages with your BANS address / dapp creator ID
    (e.g. the anon DeFi project somename.beam makes a public statement. Users can verify it’s authenticy, because its signed with somename.beam)

A more fancy variation:

  • anonymously broadcast BANS-signed public messages via SBBS
    (e.g. the project from above example can use the SBBS system to publish a statement.

  • Wallets can subscribe to a broadcast feed from BANS addresses of their choosing

Also interesting:

  • what someone mentioned above: attaching a short message to a transaction

Apart from that I don’t see many other use cases, though i really like the idea of signing a message with BANS
If an independent project wants to create a full-fledged messaging dapp, why not. But core team should work on core infrastructure IMO.

3 Likes

Totally agree. Also, there is a close competitor already, Oxen with the Session app.

I’ve seen this in other projects. It isn’t issue when few people are using the platform since the number of messages is ridiculously low. It does spam the network since every message will now be stored forever on the chain.

How about a side-chain where these messages are stored but only for limited period of time? (for e.g. 2 years).

This way it won’t spam the main chain and even when spams occur it will eventually get cleaned up.

This seems dead-on. Let devs focus on the central uses-cases, not these tangent ones–though his “that said” is reasonable. We do not want to end up with a crappy Swiss Army knife by trying to do everything.

Until, for example, there is liquidity in the swaps, promoting that should be a priority.

Assigned designation FR9 (FR: 9 Beam Anonymous Messenger (BAM) · Issue #1922 · BeamMW/beam · GitHub)

It would be really nice to have a messaging feature on beam however i don’t think it is the work that core dev should engage in if they cannot create a complete product, We again have to focus on things that will be really useful and that which are not available, there are several messaging app on the market all competing to get a market share and i don’t think we can attract new or any user for the sole purpose of messaging ,however we can attract new artists developer if we have a stable core protocol and documentation, so i would like the beam team to focus more on essential things rather than low hanging fruits which can be created by third party dev

The reason why i made this proposal is because i saw an opportunity:

WhatsApp, Signal, Telegram etc are no competitors at all for BAM because:

  1. All of those require your phonenumber or emailaddress during onboarding.
  2. End to end encryption does not mean anything when they store (and handover on request) the meta data of the people that you are in contact with.
  3. In BAM you can exchange value.

So in terms of privacy BAM is a much better solution and has almost no competitors. Except maybe partly the Session app. But you cannot exchange value with that.

However i agree with you that current core infrastructure should have priority above this feature. That’s also what i read from others here. And i’m even saying this as a proposer. But hopefully BAM will be build also when the time is right.