User Tools

Site Tools


peonect:usecases:messenger

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
peonect:usecases:messenger [2025/01/05 11:29] – [Privacy (aka Mail mode)] ariepeonect:usecases:messenger [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1
Line 1: Line 1:
-====== Messenger ====== 
- 
-Frequently there is a need to communicate with People with same interests or located in the same area. Examples: 
- 
-  * a hotel guest might want to discover groups of the hotel 
-  * at some event men want to organize Minyan and want a way to agree on time and place 
-  * a lost child or item was found and want to announce that in "Lost and Found" group of the area 
-  * a person wants to discuss some public event with like-minders 
- 
-For matter of the Machon Tal Term Project Success, the POC would allow flow below: 
- 
-  - A person creates "stored query" with properties below: 
-      * kind: Messages 
-      * with date not older than week ago 
-      * geo: X,Y with radius R 
-      * query lifetime for the next 2 hours 
-  - He reviews results and sees summary of Messages found, grouped by topic name and number of unique posters (implying activity) and wants to subscribe to certain topic: 
-      * he creates folder with "chat view" Memo with the topic id, and exports it 
-      * the Memo automatically creates "stored query" for Memos of kind:Message, date not older than week ago and that topic id 
-      * any message Memo he creates will contain same topic id, and get consumed by other subscribers 
-      * he might want to enable popup notification on every incoming message 
- 
-The scenario above might be extended to cover more cases like these: 
- 
-  * ignore someone that posts offensive content 
-  * send message about group details to someone ("Invite them") 
-  * propose "group" icon that allows voting. The one with most votes is shown as "group" logo 
- 
-===== Privacy (aka Mail mode aka "shared" folder) ===== 
- 
-There might be need to for private Memos exchange between two or more parties. In this flow, the sites are essentially **"notifying" others what changes they are suggested to do in their own copy of the folder**: 
- 
-   - An public/private keypair is created **by each participant of the folder** 
-  - For each recipient, the keypair is encrypted with his public key and Memo of kind "KeyPair" and recipient id is created 
-  - Recipients has active subscription to all Memos of kind "KeyPair" and recipient equals his id 
-  - recipient receives the "KeyPair" Memo, decrypts it and stores in his keyring. 
-  - recipient subscribes to all Memo of kind "Encrypted" and id=hashed keyring, instructs the system to put incoming Memos into speicific folder. 
- 
-At this point the folder of each participant is empty, all participants have** their own empty folder**  and they are subscribed to each other on suggested updates to the folder. Thus every change to the folder content has two flows below: 
- 
-For change initiator: 
- 
-  - Local Memo is "encrypted" and exported as blob 
-  - Reference to the blob it is added to the local folder. The epoch is bumped, folder is encrypted using the keyring and exported 
- 
-For change recipients 
- 
-  - Blob of kind "Encrypted" and id=hashed arrives 
-  - Assert Epoch is one-next than the currently known one, abort if not 
-  - unpack the blob, **replace **content (e.g. references) of the existing folder 
- 
  
peonect/usecases/messenger.1736076570.txt.gz · Last modified: 2025/01/05 11:29 by arie

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki