Build an events mechanism for client components to communicate with eachother
h1. Inter process communication
Communication will be done by sockets. A random key will be shared among all the components that the main launcher will execute. This key will be use as a part of a MAC method to avoid rogue notifications.
- MAC method: HMAC
- Encryption optional
Message structure (|| is concat):
may be a "magic number" for message start? || Message-length (two bytes) || message message Notification { required int32 id required string content required string mac_method required bytes mac optional string enc_method optional bool error_occurred }
Messages:
1 client session_id 2 client uid 3 soledad creating_keys 4 soledad done_creating_keys 5 soledad uploading_keys 6 soledad done_uploading_keys 7 soledad downloading_keys 8 soledad done_downloading_keys 9 soledad new_data_to_sync 10 soledad done_data_sync
(from redmine: created on 2013-04-01, closed on 2013-04-01)