Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • viteks/nsi-lectures
1 result
Show changes
Commits on Source (6)
Showing
with 898 additions and 14 deletions
lec01/figs/rpi-pico-w.png

71.6 KiB

%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# [Primitivní datové typy](#primitivni-datove-typy) # [Primitivní datové typy](#primitivni-datove-typy)
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# celá čísla - int # celá čísla - int
a = 5 a = 5
print(a, "je typ", type(a)) print(a, "je typ", type(a))
``` ```
%% Output %% Output
5 je typ <class 'int'> 5 je typ <class 'int'>
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# reálná čísla - float # reálná čísla - float
a = 2.0 a = 2.0
print(a, "je typ", type(a)) print(a, "je typ", type(a))
``` ```
%% Output %% Output
2.0 je typ <class 'float'> 2.0 je typ <class 'float'>
%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# Strukturované datové typy ## Strukturované datové typy
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# seznam hodnot stejných nebo různých datových typů - list # seznam hodnot stejných nebo různých datových typů - list
a = [1, 2.2, 'python'] a = [1, 2.2, 'python']
print(a, "je typ", type(a)) print(a, "je typ", type(a))
print(a[1])
``` ```
%% Output %% Output
[1, 2.2, 'python'] je typ <class 'list'> [1, 2.2, 'python'] je typ <class 'list'>
2.2
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# uspořádaná n-tice - tuple # uspořádaná n-tice - tuple
a = (3, 3.14) a = (10 / 3, 10 // 3)
print(a, "je typ", type(a)) print(a, "je typ", type(a))
``` ```
%% Output %% Output
(3, 3.14) je typ <class 'tuple'> (3.3333333333333335, 3) je typ <class 'tuple'>
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# slovník - dict # slovník - dict
a = {"brand": "Ford", "model": "Mustang", "year": 1964} a = {"brand": "Ford", "model": "Mustang", "year": 1964}
print(a, "je typ", type(a)) print(a, "je typ", type(a))
``` ```
%% Output %% Output
{'brand': 'Ford', 'model': 'Mustang', 'year': 1964} je typ <class 'dict'> {'brand': 'Ford', 'model': 'Mustang', 'year': 1964} je typ <class 'dict'>
%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# Výrazy a operátory ## Výrazy a operátory
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
x = 13 x = 13
y = x % 4 # modulo y = x % 4 # modulo
y = y + 1 y = y + 1
y += 1 y += 1
a = (x==3) and (y==2) a = (x==3) and (y==2)
b = a or not a b = a or not a
s = "petr" s = "petr"
t = "klic" t = "klic"
u = s + t u = s + t
u *= 2
``` ```
%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# Vícenásobná přiřazení: ## Vícenásobná přiřazení
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
x, y, z = "Orange", "Banana", "Cherry" x, y, z = "Orange", "Banana", "Cherry"
x = y = z = "Orange" x = y = z = "Orange"
``` ```
%% Cell type:markdown id: tags:
## Explicitní konverze
%% Cell type:code id: tags:
``` python
x = int(1) # x -> 1
y = int(2.8) # y -> 2
z = int("3") # z -> 3
x = float(1) # x -> 1.0
y = float(2.8) # y -> 2.8
z = float("3") # z -> 3.0
w = float("4.2") # w -> 4.2
x = str("s1") # x -> 's1'
y = str(2) # y -> '2'
z = str(3.0) # z -> '3.0'
```
%% Cell type:markdown id: tags:
## Standardní výstup
%% Cell type:code id: tags:
``` python
# výpis hodnoty proměnné s automatickým odřádkováním
x = 10
print(x)
```
%% Output
10
%% Cell type:code id: tags:
``` python
# výpis s doprovodnou informací
print('x = ', x)
```
%% Output
x = 10
%% Cell type:code id: tags:
``` python
# formátováni pomocí modifikatorů, Python 2.x
print('x = %d' % x)
```
%% Output
x = 10
%% Cell type:code id: tags:
``` python
# f-funkce, Python 3.6 a novejsi
print(f'x = {x}')
```
%% Output
x = 10
%% Cell type:markdown id: tags:
### Výpis více proměnných
%% Cell type:code id: tags:
``` python
x = 10; y = 11; z = 12
print(x, y, z) # hodnoty automaticky oddeleny ' '
print(x, y, z, sep=';') # potlaceni separatoru ''
print(x, y, z, sep='\n') # odradkovani separatorem
print('x={}, y={}'.format(x,y))
print('x={1}, y={0}'.format(x,z))
```
%% Output
10 11 12
10;11;12
10
11
12
x=10, y=11
x=12, y=10
%% Cell type:code id: tags:
``` python
# kombinace pozicniho argumentu a klicoveho slova
print('Na hristi jsou {0}, {1}, a {other}.'
.format('Cesi', 'Slovaci', other ='rozhodci'))
```
%% Output
Na hristi jsou Cesi, Slovaci, a rozhodci.
%% Cell type:code id: tags:
``` python
# formatovani cisel
print('A :{0:2d}, B :{1:8.2f}'
.format(12, 00.546))
```
%% Output
A :12, B : 0.55
%% Cell type:code id: tags:
``` python
# zmena pozicniho argumentu
print('B: {1:3d}, A: {0:7.2f}'.format(47.42, 11))
print('A: {a:5d}, B: {p:8.2f}'
.format(a = 453, p = 59.058))
```
%% Output
B: 11, A: 47.42
A: 453, B: 59.06
%% Cell type:markdown id: tags:
## Podmíněný příkaz
if *condition*:
*statement*
*statement*
...
elif *condition*: # 0 or more elif clauses
*statement*
*statement*
...
else: # optional
*statement*
*statement*
%% Cell type:code id: tags:
``` python
dnes = "Pondeli"
kopr = "N"
prednaska = "Pondeli"
if dnes == "Nedele":
if kopr == "Y":
print("Jdi na prochazku")
else:
print("Zacni pripravovat prednasku na NSI!")
elif dnes == "Ctvrtek":
print("Cviko z NSI!")
elif dnes == prednaska:
print("Jdi na prednasku!")
elif dnes == "Utery" or dnes == "Streda" or dnes == "Patek" or \
dnes == "Sobota":
print("Nemas NSI")
else:
print("Co ze je za den?!")
```
%% Output
Jdi na prednasku!
%% Cell type:markdown id: tags:
## Cyklus
### while
while *condition*:
*statement*
*statement*
Příklad: kolikrát se 0 objeví v celém čísle?
%% Cell type:code id: tags:
``` python
num = 2**100
print(num)
```
%% Output
1267650600228229401496703205376
%% Cell type:code id: tags:
``` python
count = 0
while num > 0: #what if we changed to >=0?
if num % 10 == 0:
count = count + 1
num = num // 10
print(count)
```
%% Output
6
%% Cell type:markdown id: tags:
## For
for *variable* in *iterable*:
*statement*
*statement*
Příklad: ten samý problém, ale s využitím datového typu **str**
%% Cell type:code id: tags:
``` python
num = 2**100
count = 0
for digit in str(num):
#print(digit, type(digit))
if digit == "0":
count = count + 1
print(count)
```
%% Output
6
......
...@@ -16,13 +16,14 @@ style: | ...@@ -16,13 +16,14 @@ style: |
section{ section{
} }
strong {color: #455a64; font-weight: 600;}
--- ---
<!-- _paginate: false --> <!-- _paginate: false -->
# Návrh systémů IoT # Návrh systémů IoT
## 1. Úvod do předmětu, internet věcí. Úvod do Pythonu ## 1. Úvod do předmětu, internet věcí. Úvod do Pythonu.
Stanislav Vítek Stanislav Vítek
Katedra radioelektroniky Katedra radioelektroniky
...@@ -52,7 +53,13 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi ...@@ -52,7 +53,13 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi
* Zpracování dat (časové řady) * Zpracování dat (časové řady)
* Připojení IoT zařízení pro sběr dat (drátově i bezdrátově) * Připojení IoT zařízení pro sběr dat (drátově i bezdrátově)
* Programování v jazyku Python * Programování v jazyku Python
* flask, pandas, scikit, micropython * [Flask](https://flask.palletsprojects.com/en/2.2.x/), [pandas](https://pandas.pydata.org/), [scikit-learn](https://scikit-learn.org/stable/), [MicroPython](https://micropython.org/)
---
# Raspberry Pi Pico W
![w:1000px center](figs/rpi-pico-w.png)
--- ---
...@@ -60,14 +67,14 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi ...@@ -60,14 +67,14 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi
1. Definice IoT, příklady. Úvod do Pythonu. 1. Definice IoT, příklady. Úvod do Pythonu.
2. Modely komunikace a komnunikační rozhraní 2. Modely komunikace a komnunikační rozhraní
3. Ukládání dat, databáze 3. Ukládání dat, databáze - SQL a NoSQL,
4. Zpracování časových řad 4. Zpracování časových řad - Pandas
5. Mikrokontroléry I. 5. Mikrokontroléry I.
6. Mikrokontroléry II. 6. Mikrokontroléry II. - RTOS
7. LPWAN sítě 7. LPWAN sítě
8. Strojové učení 8. Strojové učení - scikit
9. Cloud a virtualizace 9. Cloud a virtualizace - Docker, Kubernetes (minikube)
10. Principy CI/CD. Simulace sítí 10. Principy CI/CD. Simulace sítí - Renode
11. Bezpečnost v IoT a distribuovaných systémech 11. Bezpečnost v IoT a distribuovaných systémech
--- ---
...@@ -177,6 +184,18 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi ...@@ -177,6 +184,18 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi
--- ---
# Počet IoT zařízení v kontextu ostatních zařízení
![w:1000px center](figs/iot-1.png)
---
# Počet všech připojených zařízení
![w:1000px center](figs/iot-3.jpg)
---
# Příklad IoT zařízení # Příklad IoT zařízení
--- ---
...@@ -192,7 +211,7 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi ...@@ -192,7 +211,7 @@ https://cw.fel.cvut.cz/wiki/courses/b0b37nsi
* ví, že došlo mléko * ví, že došlo mléko
**processing** **processing**
* pomáhá s rozhodováním * pomáhá rozhodovat
**notifikace** **notifikace**
* upozorňuje uživatele * upozorňuje uživatele
......
lec02/figs/HTTP.png

35.7 KiB

lec02/figs/HTTP1.png

39.5 KiB

lec02/figs/HTTP2.png

22.1 KiB

lec02/figs/HTTP3.png

25.1 KiB

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="156px" preserveAspectRatio="none" style="width:251px;height:156px;" version="1.1" viewBox="0 0 251 156" width="251px" zoomAndPan="magnify"><defs><filter height="300%" id="f10nhrhzv5m7vy" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><rect fill="#FFFFFF" filter="url(#f10nhrhzv5m7vy)" height="29.1328" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="200" y="69.4297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="42" x2="42" y1="38.2969" y2="116.5625"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="205" x2="205" y1="38.2969" y2="116.5625"/><rect fill="#FEFECE" filter="url(#f10nhrhzv5m7vy)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="8" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="15" y="22.9951">Sender</text><rect fill="#FEFECE" filter="url(#f10nhrhzv5m7vy)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="8" y="115.5625"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="15" y="135.5576">Sender</text><rect fill="#FEFECE" filter="url(#f10nhrhzv5m7vy)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="74" x="166" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="173" y="22.9951">Receiver</text><rect fill="#FEFECE" filter="url(#f10nhrhzv5m7vy)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="74" x="166" y="115.5625"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="173" y="135.5576">Receiver</text><rect fill="#FFFFFF" filter="url(#f10nhrhzv5m7vy)" height="29.1328" style="stroke: #A80036; stroke-width: 1.0;" width="10" x="200" y="69.4297"/><polygon fill="#A80036" points="188,65.4297,198,69.4297,188,73.4297,192,69.4297" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="42" x2="194" y1="69.4297" y2="69.4297"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="137" x="49" y="64.3638">CON (Msg ID = 1337)</text><polygon fill="#A80036" points="53,94.5625,43,98.5625,53,102.5625,49,98.5625" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="47" x2="204" y1="98.5625" y2="98.5625"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="134" x="59" y="93.4966">ACK (Msg ID = 1337)</text><!--MD5=[d2a5b4bb217bb68c28955b0c12c0a588]
@startuml
Sender -> Receiver: CON (Msg ID = 1337)
activate Receiver
Receiver -> Sender: ACK (Msg ID = 1337)
deactivate Receiver
@enduml
PlantUML version 1.2019.12(Sun Nov 03 10:24:54 UTC 2019)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Java Version: 1.8.0_232-heroku-b09
Operating System: Linux
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8" standalone="no"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="application/ecmascript" contentStyleType="text/css" height="127px" preserveAspectRatio="none" style="width:250px;height:127px;" version="1.1" viewBox="0 0 250 127" width="250px" zoomAndPan="magnify"><defs><filter height="300%" id="fwmwtwolk5wst" width="300%" x="-1" y="-1"><feGaussianBlur result="blurOut" stdDeviation="2.0"/><feColorMatrix in="blurOut" result="blurOut2" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .4 0"/><feOffset dx="4.0" dy="4.0" in="blurOut2" result="blurOut3"/><feBlend in="SourceGraphic" in2="blurOut3" mode="normal"/></filter></defs><g><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="42" x2="42" y1="38.2969" y2="87.4297"/><line style="stroke: #A80036; stroke-width: 1.0; stroke-dasharray: 5.0,5.0;" x1="204" x2="204" y1="38.2969" y2="87.4297"/><rect fill="#FEFECE" filter="url(#fwmwtwolk5wst)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="8" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="15" y="22.9951">Sender</text><rect fill="#FEFECE" filter="url(#fwmwtwolk5wst)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="64" x="8" y="86.4297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="50" x="15" y="106.4248">Sender</text><rect fill="#FEFECE" filter="url(#fwmwtwolk5wst)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="74" x="165" y="3"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="172" y="22.9951">Receiver</text><rect fill="#FEFECE" filter="url(#fwmwtwolk5wst)" height="30.2969" style="stroke: #A80036; stroke-width: 1.5;" width="74" x="165" y="86.4297"/><text fill="#000000" font-family="sans-serif" font-size="14" lengthAdjust="spacingAndGlyphs" textLength="60" x="172" y="106.4248">Receiver</text><polygon fill="#A80036" points="192,65.4297,202,69.4297,192,73.4297,196,69.4297" style="stroke: #A80036; stroke-width: 1.0;"/><line style="stroke: #A80036; stroke-width: 1.0;" x1="42" x2="198" y1="69.4297" y2="69.4297"/><text fill="#000000" font-family="sans-serif" font-size="13" lengthAdjust="spacingAndGlyphs" textLength="138" x="49" y="64.3638">NON (Msg ID = 1337)</text><!--MD5=[3a409d7e052f65619f6b6b76247fdaa8]
@startuml
Sender -> Receiver: NON (Msg ID = 1337)
@enduml
PlantUML version 1.2019.12(Sun Nov 03 10:24:54 UTC 2019)
(GPL source distribution)
Java Runtime: OpenJDK Runtime Environment
JVM: OpenJDK 64-Bit Server VM
Java Version: 1.8.0_232-heroku-b09
Operating System: Linux
Default Encoding: UTF-8
Language: en
Country: US
--></g></svg>
\ No newline at end of file
lec02/figs/coap-fig3.png

4.49 KiB

lec02/figs/coap-fig4.png

232 KiB

lec02/figs/iot-04-15.png

52.3 KiB

lec02/figs/iot-06.png

11.5 KiB

lec02/figs/iot-07.png

62.7 KiB

lec02/figs/iot-14.png

359 KiB

lec02/figs/iot-stack.jpg

93.7 KiB

<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="371px" height="121px" viewBox="-0.5 -0.5 371 121" content="&lt;mxfile&gt;&lt;diagram id=&quot;bCSFFJIRyJxjMkp-Wgcl&quot; name=&quot;Page-1&quot;&gt;5VdNc5swEP01XDuAwoePAdvtTKfTTn1o2puM1qBGRlSSv/LrK4EwUJw241D30AvWPu1K2rdPC3ZQuj2+FbgqPnACzPFdcnTQ3PF9P3b10wCnBrhDfgPkgpIG8jpgRZ/AgjYu31ECcuCoOGeKVkMw42UJmRpgWAh+GLptOBvuWuEcRsAqw2yMfqFEFQ0a+1GHvwOaF+3OXjhrZra4dbaZyAITfuhBaOGgVHCumtH2mAIz3LW8NHHLZ2bPBxNQqpcE3NljqFObGxCdqjVLXuqfpFBbpi1PD+FI1UNv/FWP3Td+YM25qbDbGqfWKJU4PfSNfpixu7jaagObw5kTPZuehSTficx6WS0pLHKwXuhMrZYk8C3oXbSLAIYV3Q9Xx1Yc+dmv408PLIWX6bRb7zHb2UXfM2rO+ivLgu9KAsTmeSioglWF6wwO+soMSd9QxlLOuKhj0WYDYZZpXCrBH6E3Q6LZ2u2I24NQcPw9dWNSbMDMKtReUd+19qETfGShoq/1VtmvoTG4UpXuQJXRC1XpDVUZ/R1VorEq/RupcjbJJb/ujv+JTKkJUfemJ2sgY1hKmrXwkrL2SJNxHt+IczTqBCsQ+kJO2gkIhnhzsROEWQzrzTSdwA/+YSsIRzx+4k4aOMkCE7yHR8cPmd4vWWtmw9yMPsOPHchxy9UEqCGbmNG8NLLTROjKoMTQRPVr/t5ObCkhJjwRIOkTXtdLmTJVnJaqzipInGBu1topLpsPFW9UEHvF+tWz0ATl8aLryoMmqE40qs5HUvG9k945s8Q84+WlAsmKlxL+3wqFt6tQPKrQNyL49zH5r+lD4JEAokt9aBZGCIfT0Ihu+Emize4jvJ7r/ZNBi58=&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 70 30 L 153.63 30" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 158.88 30 L 151.88 33.5 L 153.63 30 L 151.88 26.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="0" y="0" width="70" height="120" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 60px; margin-left: 1px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Klient
</div>
</div>
</div>
</foreignObject>
<text x="35" y="64" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Klient
</text>
</switch>
</g>
<path d="M 160 90 L 76.37 90" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 71.12 90 L 78.12 86.5 L 76.37 90 L 78.12 93.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 236.37 60 L 293.63 60" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 231.12 60 L 238.12 56.5 L 236.37 60 L 238.12 63.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 298.88 60 L 291.88 63.5 L 293.63 60 L 291.88 56.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="160" y="0" width="70" height="120" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 60px; margin-left: 161px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Server
</div>
</div>
</div>
</foreignObject>
<text x="195" y="64" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Server
</text>
</switch>
</g>
<rect x="80" y="0" width="70" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 15px; margin-left: 115px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
Požadavek
<br/>
Request
</div>
</div>
</div>
</foreignObject>
<text x="115" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Požadavek...
</text>
</switch>
</g>
<rect x="80" y="60" width="70" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 75px; margin-left: 115px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
Odpověď
<br/>
Response
</div>
</div>
</div>
</foreignObject>
<text x="115" y="79" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Odpověď...
</text>
</switch>
</g>
<rect x="300" y="0" width="70" height="120" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 60px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Zdroje
</div>
</div>
</div>
</foreignObject>
<text x="335" y="64" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Zdroje
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>
\ No newline at end of file
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="381px" height="131px" viewBox="-0.5 -0.5 381 131" content="&lt;mxfile&gt;&lt;diagram id=&quot;bCSFFJIRyJxjMkp-Wgcl&quot; name=&quot;Page-1&quot;&gt;7VhNj5swEP01XCvAAcJxk+xuL5VW2kptjw6eBKsORsZskv31tcEEiMlHt2zaqr0knufx13ueYcBB883uUeA8/cQJMMd3yc5BC8f3J+FE/WpgbwDk18BaUFJDXgs801cwoGvQkhIoeo6ScyZp3gcTnmWQyB6GheDbvtuKs/6qOV6DBTwnmNnoF0pkWqNTP2rxj0DXabOyF8Z1zwY3zuYkRYoJ33YgdO+gueBc1q3Nbg5Mc9fwUo97ONF72JiATF4zwAhRyH1zNiDqqMbMeKb+ZqncMGV5qgk7Kr922t9U2/3gB8ZcaIXdxtg3RibF/mvX6A7TdjuuspqB9mnMAQteisRs2FwdicUajBeqIX2UzjDDwCPwDahVlIMAhiV96auKzeVYH/xa/lTDUDhMp9nLC2almdTxQ6Z2NVuqxlo3nsolo0UKoulRcx46D97iNPKqNjhHzt2CVX+e7UGwxAMor8Ikp0lpiS54mREghvZtSiU857hieKsiuH8HVpSxOWdcVGPRagVhkii8kIJ/h04PieKle1bHFxASdmc1Mr2xCRiTMXzX2Ns2/iIDpd3QQ+6vqxq8MUjcXpBEVwaJ1w+S6FKQQEbudE5rt6KQB6pPU/UXKjJk45EwXBQ0aWDj5l0ba8iONf93xVo8SupCKHxT7rqkyopn0jy4PEsFs7muBEdKtjq1YjYbfwJBFVsgelnySIC3SDm9kXKeP450gfdfusbLvZV2aBTtrk2Gf4Z048l0q+SIThYiRY4zq7hogJl+govTVcj5WuWzLi4cXXGigarE8Wd1SV6UG73GT7j519RFndUH/e1p0dmD9okasWAiGKarwYIpTKawXI1TMPnB5Yopfq+KKbSuX/9uHLGpjiT7lGFG15mOSEWAzpYzfXCq3sDuTMeGEqKHzwQU9BUvq6m0Fjmnmay2HsycYKHnKiUvTFKwWDdJoSuRgUbQwIuCIw0CS4NwQAN/BAmicxLYD+B/RoLwdhJMLQnmx9lvxLQCHgkgGkorcRghHI7DJ7riRWw6wOdkBD6bzz8nCbWv9U0Itdgb4Ph6Qif2BX03Qr0LhNrF3l9IaPxuN1SZ7ae6qq/zvRPd/wA=&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 70 32.5 L 153.63 32.5" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 158.88 32.5 L 151.88 36 L 153.63 32.5 L 151.88 29 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="0" y="0" width="70" height="130" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 65px; margin-left: 1px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<b>
Publisher
</b>
<br/>
<br/>
zasílá
<br/>
data
<br/>
do topicu
</div>
</div>
</div>
</foreignObject>
<text x="35" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Publisher...
</text>
</switch>
</g>
<path d="M 153.63 97.5 L 70 97.5" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 158.88 97.5 L 151.88 101 L 153.63 97.5 L 151.88 94 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 250 43.68 L 294.24 22.73" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 298.99 20.48 L 294.16 26.64 L 294.24 22.73 L 291.17 20.31 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 250 45.63 L 294.06 62.7" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 298.96 64.6 L 291.17 65.33 L 294.06 62.7 L 293.69 58.8 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 250 97.5 L 293.82 108.46" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 298.92 109.73 L 291.28 111.43 L 293.82 108.46 L 292.97 104.64 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="160" y="0" width="90" height="130" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 65px; margin-left: 161px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<span>
<b>
Broker
<br/>
</b>
<br/>
Topic #1
<br/>
+ consumer #1
<br/>
+ consumer #2
<br/>
<br/>
Topic #2
<br/>
+ consumer #3
<br/>
</span>
</div>
</div>
</div>
</foreignObject>
<text x="205" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Broker...
</text>
</switch>
</g>
<rect x="85" y="5" width="60" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 15px; margin-left: 115px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
Topic #1
</div>
</div>
</div>
</foreignObject>
<text x="115" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Topic #1
</text>
</switch>
</g>
<rect x="85" y="65" width="60" height="20" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 75px; margin-left: 115px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
Topic #2
</div>
</div>
</div>
</foreignObject>
<text x="115" y="79" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Topic #2
</text>
</switch>
</g>
<rect x="300" y="0" width="80" height="40" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 20px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Consumer #1
</div>
</div>
</div>
</foreignObject>
<text x="340" y="24" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Consumer #1
</text>
</switch>
</g>
<rect x="300" y="45" width="80" height="40" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 65px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Consumer #2
</div>
</div>
</div>
</foreignObject>
<text x="340" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Consumer #2
</text>
</switch>
</g>
<rect x="300" y="90" width="80" height="40" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 110px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Consumer #3
</div>
</div>
</div>
</foreignObject>
<text x="340" y="114" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Consumer #3
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>
\ No newline at end of file
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="381px" height="131px" viewBox="-0.5 -0.5 381 131" content="&lt;mxfile&gt;&lt;diagram id=&quot;bCSFFJIRyJxjMkp-Wgcl&quot; name=&quot;Page-1&quot;&gt;5VjLrpswEP0athXghMfyJrltN5VaZdHbpYMnYNXgyJi8vr5DMAECaVKJG12lG/Acj1/nzIwMFpmn+y+KbpJvkoGwXJvtLbKwXHdqO/gsgUMFTIhbAbHirIKcBljyIxjQNmjBGeQdRy2l0HzTBSOZZRDpDkaVkruu21qK7qobGkMPWEZU9NGfnOmkQgPXb/CvwOOkXtnxwqonpbWzOUmeUCZ3LYi8WmSupNRVK93PQZTc1bxU4z5f6T1vTEGm7xrgmX3oQ304YHhWY2Yyw9cs0alAy8Em7Ll+a7V/Ydv+5E+NuSgltmvjUBuZVoe3tlENm9ZmM+xk1eOqvZUbuno8A+WyUJHxMrGkqYqh9pqcucWYBJkCLoM+CgTVfNudnproiM9+DYHYMBxe4dMfhU/3g/NJHkSnWXpLRWEmtVxP4CZmK2zEZeN7sRI8T0DVPTjnufPsra4jR9zgnFgvC3F6OX0PRjUdQGVZOpRE5i4lV7LIGDDD+i7hGpYbeuJzhwWxGwFrLsRcCqlOY8l6DV4UIZ5rJX9Dq4f54cpuZBxQbQtKw74F9SUyvaGpP6YAu7axd0058w2UtCsZsUfIkWCUHPlIKUL6KRI8KEXI1RTJNzTrhX0N/CgA/f8pZdCrO+WIUc8oBOvBqPeiAFbrcaLendwO+3Ag7MeI+qCn01xmeZGWhQunJ86ofILDpuAP8Rl6PqHeOHySO8pI8E58Os4NQt0nIJQ8ktDw6cpyde27uApeUWD8q+Dk/6rMvSgfkOfuyjwU+O9VmetvsZZQi9ONz8bv1lwgr+ZeaP/lyodH110eu3yZ9GmTayAqeJyhGSFVWLvIrCSS48fmi+lIOWPlMoPCdaUdQQnHv6jp08eVILdf0xslVqpRwqNpefhslZev4/OrQsjkpiqhN4oqaDb/H059rZ845PUP&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 70 97.5 L 143.78 113.64" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 148.91 114.76 L 141.32 116.68 L 143.78 113.64 L 142.82 109.85 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 70 32.5 L 143.78 16.36" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 148.91 15.24 L 142.82 20.15 L 143.78 16.36 L 141.32 13.32 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="0" y="0" width="70" height="130" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 65px; margin-left: 1px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<b>
Publisher
</b>
<br/>
<br/>
zasílá
<br/>
data
<br/>
do front
</div>
</div>
</div>
</foreignObject>
<text x="35" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Publisher...
</text>
</switch>
</g>
<path d="M 240 15 L 293.63 15" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 298.88 15 L 291.88 18.5 L 293.63 15 L 291.88 11.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="150" y="0" width="90" height="30" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 15px; margin-left: 151px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<span>
<b>
Queue
</b>
<br/>
</span>
</div>
</div>
</div>
</foreignObject>
<text x="195" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Queue
</text>
</switch>
</g>
<rect x="300" y="0" width="80" height="30" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 15px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Consumer #1
</div>
</div>
</div>
</foreignObject>
<text x="340" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Consumer #1
</text>
</switch>
</g>
<rect x="300" y="100" width="80" height="30" fill="#e1d5e7" stroke="#9673a6" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 115px; margin-left: 301px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Consumer #2
</div>
</div>
</div>
</foreignObject>
<text x="340" y="119" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Consumer #2
</text>
</switch>
</g>
<path d="M 240 115 L 293.63 115" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 298.88 115 L 291.88 118.5 L 293.63 115 L 291.88 111.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="150" y="100" width="90" height="30" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 115px; margin-left: 151px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<span>
<b>
Queue
</b>
<br/>
</span>
</div>
</div>
</div>
</foreignObject>
<text x="195" y="119" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Queue
</text>
</switch>
</g>
<rect x="80" y="50" width="80" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 65px; margin-left: 81px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Data odeslaná do front
</div>
</div>
</div>
</foreignObject>
<text x="120" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Data odeslaná...
</text>
</switch>
</g>
<rect x="244" y="50" width="96" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 94px; height: 1px; padding-top: 65px; margin-left: 245px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Data odebraná z front
</div>
</div>
</div>
</foreignObject>
<text x="292" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Data odebraná z...
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>
\ No newline at end of file
<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="341px" height="164px" viewBox="-0.5 -0.5 341 164" content="&lt;mxfile&gt;&lt;diagram id=&quot;bCSFFJIRyJxjMkp-Wgcl&quot; name=&quot;Page-1&quot;&gt;5VjBbqMwEP0arhXYSSDHBtpdabXSSjlse3SxA94ajIyTkH79DsEEXJI2G9FW3V6SmeexPX5vPCAcHGbVN0WK9KekTDjIpZWDIwchPPXhtwZ2DTDBqAESxWkDeR2w5E/MgK5B15yy0grUUgrNCxuMZZ6zWFsYUUpu7bCVFPauBUnYAFjGRAzR35zqtEED5Hf4d8aTtN3Zm82bkYy0weYkZUqo3PYgfOPgUEmpGyurQiZq7lpemnm3J0YPiSmW63MmtDNKvWsPxyic1bi5zOFvkepMgOeBySqu73r2PdiusaOq7+xaJ9dqd9d37vtON2nvtbOatOpcTp6sTV2uVWyiTBlpohJmovCBVahGJjMGu0CIYoJovrFXJ6YukkNcRx0Yhr0TTOIxmLyaXsJlM+sFNktgRF/XlQ9ALEhZ8riFb7loU/p8pE9GId2/jHX/n2g3yfQ5/5yF3iyxIWJtFnXQTEASiwcwktr4IXidvIFhwcPIQC4l1zll1JCxTblmy4Lsj7mFZ4et3gpoC6WQaj8Xr1ZsFjd1rOQj641Qf/7gduweIXPDlGZVDxoyZ0YD06rNswq5xt/2Or+B0n7Tx+4IXKML69u16hudWd+eXd/otfq+rHbxsHbRe9XudAQ+vQvI9D6sU3wg2/hkpygLknct4Vn3WDIFt/N49zCh6jkCUfaaI7YZSliwOtpmZnHAHlbjtBk8+cg+4w6lCqfOInJC7Fx7VJbQzV1Zc1rIPyzfw9GAZTiqtqm0KTOF3efXQETwJK/fTYBA0B4vauI4vHFfm4GMU1pvc1Q7W90RxPCCuSWG508HYnjoiBqjiDEbiPFLarV56nj/PDIMOD+izNkyIDd4Rxn8gQzRuhCs6lTY1NYiypxw4swXOQHoqVDNndn8z7Lgq6ktzGTYrDzsvZEwwbnNav0o81qbIPqCd8VH73hX5q+3rK8sBnZnbyYGuN33ov1Y76MbvvkL&lt;/diagram&gt;&lt;/mxfile&gt;">
<defs/>
<g>
<path d="M 80 25 L 253.63 25" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 258.88 25 L 251.88 28.5 L 253.63 25 L 251.88 21.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 86.37 90 L 253.63 90" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 81.12 90 L 88.12 86.5 L 86.37 90 L 88.12 93.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 258.88 90 L 251.88 93.5 L 253.63 90 L 251.88 86.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 80 122.5 L 253.63 122.5" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 258.88 122.5 L 251.88 126 L 253.63 122.5 L 251.88 119 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="0" y="25" width="80" height="130" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 90px; margin-left: 1px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<b>
Klient
</b>
</div>
</div>
</div>
</foreignObject>
<text x="40" y="94" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Klient
</text>
</switch>
</g>
<path d="M 260 57.5 L 86.37 57.5" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 81.12 57.5 L 88.12 54 L 86.37 57.5 L 88.12 61 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<path d="M 260 155 L 86.37 155" fill="none" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="stroke"/>
<path d="M 81.12 155 L 88.12 151.5 L 86.37 155 L 88.12 158.5 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" pointer-events="all"/>
<rect x="260" y="25" width="80" height="130" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 90px; margin-left: 261px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
<span>
<b>
Server
</b>
<br/>
</span>
</div>
</div>
</div>
</foreignObject>
<text x="300" y="94" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Server
</text>
</switch>
</g>
<rect x="109" y="0" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 15px; margin-left: 110px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Žádost o spojení
</div>
</div>
</div>
</foreignObject>
<text x="169" y="19" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Žádost o spojení
</text>
</switch>
</g>
<rect x="109" y="33" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 48px; margin-left: 110px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Potrvzení spojení
</div>
</div>
</div>
</foreignObject>
<text x="169" y="52" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Potrvzení spojení
</text>
</switch>
</g>
<rect x="103.5" y="65" width="131" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 129px; height: 1px; padding-top: 80px; margin-left: 105px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Duplexní výměna zpráv
</div>
</div>
</div>
</foreignObject>
<text x="169" y="84" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Duplexní výměna zpráv
</text>
</switch>
</g>
<rect x="109" y="97" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 112px; margin-left: 110px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Žádost o ukončení
</div>
</div>
</div>
</foreignObject>
<text x="169" y="116" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Žádost o ukončení
</text>
</switch>
</g>
<rect x="109" y="131" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
<g transform="translate(-0.5 -0.5)">
<switch>
<foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
<div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 146px; margin-left: 110px;">
<div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
<div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
Potrvzení ukončení
</div>
</div>
</div>
</foreignObject>
<text x="169" y="150" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
Potrvzení ukončení
</text>
</switch>
</g>
</g>
<switch>
<g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
<a transform="translate(0,-5)" xlink:href="https://www.diagrams.net/doc/faq/svg-export-text-problems" target="_blank">
<text text-anchor="middle" font-size="10px" x="50%" y="100%">
Viewer does not support full SVG 1.1
</text>
</a>
</switch>
</svg>
\ No newline at end of file