Update WIP backend diagram
This commit is contained in:
parent
38b8fd0065
commit
034e2a61bc
@ -47,21 +47,21 @@ subgraph VideoPipeline[Video Pipeline]
|
||||
RTMPService[fa:fa-video RTMP Service]
|
||||
end
|
||||
|
||||
subgraph ChatService[fa:fa-comment Chat Service]
|
||||
subgraph ChatService[fa:fa-comment Chat\nService]
|
||||
end
|
||||
|
||||
subgraph Dependencies
|
||||
OutboundWebhooks[Outbound]
|
||||
|
||||
App{Application}
|
||||
App{AppController}
|
||||
ChatService--->App
|
||||
Webhooks--->App
|
||||
ActivityPubOutboundHandlers[fa:fa-hashtag ActivityPub\nOutbound]--->App
|
||||
|
||||
ConfigRepository(fa:fa-hard-drive Config Repository)--->App
|
||||
UserRepository(fa:fa-hard-drive User Repository)--->App
|
||||
APRepository(fa:fa-hard-drive ActivityPub Repository)--->App
|
||||
NotificationsRepository(fa:fa-hard-drive Notifications Repository)--->App
|
||||
ChatRepository(fa:fa-hard-drive Chat Repository)
|
||||
ConfigRepository(fa:fa-hard-drive Config\nRepository)--->App
|
||||
UserRepository(fa:fa-hard-drive User\nRepository)--->App
|
||||
NotificationsRepository(fa:fa-hard-drive Notifications\nRepository)--->App
|
||||
ChatRepository(fa:fa-hard-drive Chat\nRepository)
|
||||
APRepository(fa:fa-hard-drive ActivityPub\nRepository)
|
||||
|
||||
Database(fa:fa-hard-drive Database)--->ConfigRepository
|
||||
Database--->UserRepository
|
||||
@ -70,33 +70,30 @@ subgraph Dependencies
|
||||
|
||||
ChatRepository-->ChatService
|
||||
|
||||
ApplicationState(fa:fa-list Application State)--->App
|
||||
GeoIP(fa:fa-globe GeoIP Lookup)--->App
|
||||
ApplicationState(fa:fa-list Application\nState)--->App
|
||||
GeoIP(fa:fa-globe GeoIP\nLookup)--->App
|
||||
Statistics(fa:fa-list Statistics)--->App
|
||||
OutboundWebhooks[Outbound\nWebhooks]--->App
|
||||
|
||||
end
|
||||
|
||||
subgraph VideoStorageProviders[Video Storage Providers]
|
||||
LocalStorage((fa:fa-hard-drive Local Storage))
|
||||
S3Storage((fa:fa-hard-drive S3 Storage))
|
||||
LocalStorage((fa:fa-hard-drive Local\nStorage))
|
||||
S3Storage((fa:fa-hard-drive S3\nStorage))
|
||||
end
|
||||
|
||||
subgraph ActivityPub
|
||||
ActivityPubInboundHandlers[fa:fa-hashtag Inbound]
|
||||
ActivityPubOutboundHandlers[fa:fa-hashtag Outbound]
|
||||
end
|
||||
|
||||
subgraph Authentication
|
||||
subgraph Authentication[Chat Authentication]
|
||||
IndieAuth[fa:fa-key IndieAuth]
|
||||
FediAuth[fa:fa-key FediAuth]
|
||||
end
|
||||
|
||||
subgraph Notifications
|
||||
subgraph Notifications[External Notifications]
|
||||
DiscordNotifier[fa:fa-comment Discord]
|
||||
BrowserNotifier[fa:fa-browser Browser]
|
||||
end
|
||||
|
||||
subgraph WebServer[Web Server]
|
||||
ActivityPubHandlers[fa:fa-file ActivityPub Handlers]
|
||||
ActivityPubHandlers[fa:fa-file ActivityPub\nHandlers]
|
||||
|
||||
subgraph WebAssets[Web Assets]
|
||||
EmbeddedStaticFiles((fa:fa-file Embedded\nStatic Assets))
|
||||
@ -106,31 +103,31 @@ subgraph WebServer[Web Server]
|
||||
end
|
||||
|
||||
subgraph HTTPHandlers[fa:fa-browser HTTP Handlers]
|
||||
AdminAPIs[Admin APIs]
|
||||
ThirdPartyAPIs[3rd Party APIs]
|
||||
AdminAPIs[Admin\nAPIs]
|
||||
ThirdPartyAPIs[3rd Party\nAPIs]
|
||||
WebSocket[WebSocket]
|
||||
subgraph ChatAPIs[Chat APIs]
|
||||
ChatUserRegistration[Chat User Registration]
|
||||
subgraph ChatAPIs[Chat\nAPIs]
|
||||
ChatUserRegistration[Chat User\nRegistration]
|
||||
Emoji[Emojis]
|
||||
subgraph ChatAuthAPIs[Chat Authentication]
|
||||
subgraph ChatAuthAPIs[Chat\nAuthentication]
|
||||
FediAuth
|
||||
IndieAuth
|
||||
end
|
||||
end
|
||||
subgraph VideoAPIs[fa:fa-video Video APIs]
|
||||
ViewerPing[Viewer Ping]
|
||||
PlaybackMetrics[Playback health metrics]
|
||||
ViewerPing[Viewer\nPing]
|
||||
PlaybackMetrics[Playback\nHealth Metrics]
|
||||
end
|
||||
ActivityPubHandlers
|
||||
ApplicationConfig[Application Config]
|
||||
ApplicationStatus[Application Status]
|
||||
Directory[Directory API]
|
||||
ApplicationConfig[Application\nConfig]
|
||||
ApplicationStatus[Application\nStatus]
|
||||
Directory[Directory\nAPI]
|
||||
Followers[Followers]
|
||||
end
|
||||
end
|
||||
|
||||
subgraph Streamer
|
||||
BroadcastingSoftware>fa:fa-video BroadcastingSoftware]
|
||||
BroadcastingSoftware>fa:fa-video Broadcasting\nSoftware]
|
||||
end
|
||||
|
||||
%% All the services and packages require access
|
||||
@ -139,25 +136,21 @@ App-.->HTTPHandlers
|
||||
App-.->VideoPipeline
|
||||
App-.->ActivityPub
|
||||
App-.->Authentication
|
||||
App-.Stream went\nonline.->Notifications
|
||||
App-.->DirectoryNotifier[Directory Notifier]
|
||||
App-.->Notifications
|
||||
App-.->DirectoryNotifier[Owncast\nDirectory]
|
||||
|
||||
LocalStorage--HLS-->OnDiskStaticFiles
|
||||
|
||||
RTMPService>RTMP Ingest]--RTMP-->VideoTranscoder
|
||||
VideoTranscoder--HLS-->VideoStorageProviders
|
||||
|
||||
%% Viewers
|
||||
VideoPlayer-->VideoStorageProviders
|
||||
WebBrowser-->WebAssets
|
||||
|
||||
%% Streamers
|
||||
BroadcastingSoftware--RTMP-->RTMPService
|
||||
|
||||
%% Style the nodes
|
||||
|
||||
%% Define reusable styles for node types
|
||||
classDef bigtext font-weight:bold,font-size:20px
|
||||
classDef bigtext font-weight:bold,font-size:40px
|
||||
classDef repository fill:#4F625B,color:#fff
|
||||
classDef webservice fill:#6082B6,color:#fff
|
||||
classDef rtmp fill:#608200, color:#fff
|
||||
@ -191,5 +184,5 @@ class LocalStorage storage
|
||||
class S3Storage storage
|
||||
|
||||
%% Customize the theme styles
|
||||
%%{init: {'theme':'base', 'themeVariables': {'darkMode': true, 'lineColor': '#c3dafe', 'tertiaryTextColor': 'white', 'clusterBkg': '#2d3748', 'primaryTextColor': '#39373d', "edgeLabelBackground": "white", "fontFamily": "monospace"}}}%%
|
||||
%%{init: {'theme':'base', 'themeVariables': {'darkMode': true, 'lineColor': '#c3dafe', 'tertiaryTextColor': 'white', 'clusterBkg': '#2d3748', 'primaryTextColor': '#39373d', "edgeLabelBackground": "white", "fontFamily": "monospace", "fontSize": "30px"}}}%%
|
||||
```
|
||||
|
Loading…
Reference in New Issue
Block a user