@@ -9,19 +9,25 @@ allows him to write.
9
9
10
10
MQTT Outgoing path example:
11
11
12
+ ```
12
13
/apps/tilechat/users/USER-ID/RECIPIENT-USER-ID/messages/outgoing
14
+ ```
13
15
14
16
The Client application connected with MQTT to RabbitMQ, sends the message as a JSON payload
15
- to the " /outgoing" path.
17
+ to the ** /outgoing** path.
16
18
17
19
The observer subscribes himself to these paths. As soon as he gets notified of an _ outgoing_ message
18
20
the same message payload is forwarded (AMQP publish operation) to the recipient path:
19
21
22
+ ```
20
23
/apps/tilechat/users/RECIPIENT-USER-ID/SENDER-USER-ID/messages/clientadded
24
+ ```
21
25
22
26
The recipient will receive the MQTT publish notification on the incoming path decoding it as
23
27
a new message based on the final part of the path, that always indicates the type of operation
24
- on that path ("/clientadded" = new payload arrived on the path).
28
+ on that path:
29
+
30
+ ** /clientadded** = new payload (a message) arrived on the path.
25
31
26
32
Using this observer Chat21 implements the use of the "inbox" concept. Messages will never arrive
27
33
directly with a client-to-client communication, but always through the observer who can take additional
@@ -31,8 +37,8 @@ Moreover, a granular security can be applied with the "inbox" patterns, using Ra
31
37
where a user can only read and write on his own, specific paths, never reading or writing directly on
32
38
other users inboxes.
33
39
34
- The " inbox" pattern works just like email SMTP/POP3 protocol . The message is sent from the user
35
- to his own SMTP server inbox, as an _ outgoing_ message. This "observer", gets the message and
36
- sends it to the recipient's SMTP server (the recipient inbox path) where the recipient itself
37
- will read the message as soon as he connect to RabbitMQ through MQTT.
40
+ The ** inbox** pattern just works like email _ SMTP/POP3 _ protocols . The message is sent from the user
41
+ to his own SMTP server inbox (the _ /outgoing _ path) , as an _ outgoing_ message. The "observer" (this application),
42
+ gets the message and sends it to the recipient's SMTP server (the recipient inbox path) with a * /clientadded * action
43
+ where the recipient itself will receive the message as soon as he connects to RabbitMQ through MQTT.
38
44
0 commit comments