Skip to content

Instantly share code, notes, and snippets.

@koladilip
Last active February 13, 2022 15:29
Show Gist options
  • Save koladilip/3187e0f911ef40aab4d68b73079c1c32 to your computer and use it in GitHub Desktop.
Save koladilip/3187e0f911ef40aab4d68b73079c1c32 to your computer and use it in GitHub Desktop.
Universal messaging/Profile protocol proposal

Universal Messaging/Profile protocol (Social email protocol)

Email gives freedom to choose the client software to the user. In an email conversation, multiple parties can be involved and they can use different email platforms and client software. Most of the email clients support the management of multiple email accounts from different platforms. All these are possible because there is a common protocol for emails and all platforms and clients just need to be compatible with the protocol. With social media emerging, communication patterns have changed and all communications are now platform-centric. There is no support for cross-platform interaction so there is a disconnect. This is happening because there is no common protocol and all platforms are working in silos hence the communication gap is increasing. To bridge this gap, we need to come up with a common protocol for all social communication.

Features

  1. Users will have a globally identifiable universal profile(UP) that enables the communication between multiple platforms like social networks, apps, emails, SMS.

    • Scenario: Users of Facebook can interact with users of LinkedIn without leaving their original platform. Let's user1 of Facebook has a UP: user1@facebook and similarly user2 has user2@linkedin. User1 adds user2 in Facebook messenger and then user2 gets a notification on LinkedIn and they can start the conversation.
  2. Support for CC (carbon copy just like email)

    • Scenario: A user has several UPs: user1@instagram, user1@gmail, user1@hello, etc, and then let's say they use Gmail more often than others then they can add Gmail UP as default CC UP in all other UPs then all communications will reach user1@gmail. From Gmail, they can reply as well just like we do in email.
  3. Support for broadcasting/publishing and enables other users to follow a user's universal profile.

    • Scenario: A user has UP user1@whatsapp and user2@facebook, user3@instragram, and user4@twitter follow user1@whatsapp then when user1 publish a message then all the followers get the message.
  4. Support the forwarding of the broadcast message.

    • Scenario: Let us say user1 has many UPs on various platforms and has several followers on each platform. Now, user1 will set up a forwarding rule for broadcasting so when they publish a message then it will be forwarded to all other UPs of the user so the followers on each platform receive a notification (which is sent by each platform).
  5. Support for universal discoverability: UPs are global and they are accessible from anywhere so they should be taggable on every platform. By default, discoverability is not enabled to protect the privacy and prevent spamming but users and businesses can enable this feature at their own discretion.

  6. Publicly shared UPs are cached and synced using similar protocols such as DNS caching.

    • Scenario: user1@gmail want to tag customer-service1@amazon and user3@wechat in their email then it should be possible via, the discoverability feature of UP. When tagged then notifications will be delivered to UPs on different platforms.
  7. Support for universal expression: users should be able to express their opinions on posts, images, videos, comments on any platform irrespective of if they have a UP of that particular platform.

    • Scenario: user1@linkedin posts some article and it is a public article then user2@facebook or user3@gmail should be to express their opinion without having UP in LinkedIn. As UPs are global so they should be easily supported by each platform and this increases discussion among various communities
  8. Support blocking: The user should be able to set up rules to control incoming messages such as blocked, allowed UPs, or domains to send messages.

  9. Support temporary aliasing of UP: to prevent spam, users can create a temporary alias of their original UP with predefined expiry and share it to an app/service which gets expired after some time so services won't be able to spam with promotions.

    • Scenario: user1@outlook orders something from XYZ online service and as user1 doesn't want to share their information with XYZ, they give a temporary alias user1-2weeks-expiry@outlook to XYZ and once the transaction is done, the user can delete the alias or it will be deleted automatically after 2 weeks.

Benefits

  • Enables global discussion/communication without the need for a common platform where everyone needs to be present.
  • User has the choice to decide on how they want to communicate with the world. (If someone likes one particular app or service then they don't have to leave that to communicate with other people who are on other platforms)
  • Easy integration for businesses: Businesses doesn't have to implement different solutions targeting different platforms, all they need to create on a public UP and expose to all their customers, and then the customers can communicate from their favorite platform/apps.
  • Currently communication is platform-centric and now it will become user-centric so enables us to do better customization/personalization.
  • Once fully integrated, this can remove the need for exposing personal details such as phone numbers and emails to various apps and services hence better privacy.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment