-
Notifications
You must be signed in to change notification settings - Fork 1
1 of 5
Thomas Schwotzer edited this page Jan 4, 2022
·
13 revisions
Let's design an API based on our concept. We need uses cases and features first.
- Users can send a message as a kind of broadcast. This message is tagged to define its content.
- Users sign a message.
- Users are able to refuse messages which cannot be verified.
- Users can encrypt message for a given receiver.
- Users can choose their communication channel.
- Users can create a group of users. Messages can be sent in this user group. Only member can read those messages.
The API can be found here. User groups are called channel.
Messages have got a structure. Parts of those messages are defined by means of the SharkMessage interface.
Messages can be received by a peer. We need a listener to get informed about that fact. We defined our own SharkMessagesReceivedListener interface. It is less complex than the basic received listener in ASAP.
Listener objects can (un-)subscribe to and from our component, see API
Messages can be signed and encrypted. Peers must exchange security keys. We have no plans to implement this feature in this project. We use the SharkPKI component instead.
- Project goals
- Step 0: Concept
- Step 1: API
- Step 2: Implementation
- Step 3: Shark Component
- Step 4: Testing
- Step 5: GUI
- Javadoc
- Shark Messenger User Guide
- How to use
- Command Page
- TODO