How dchapyshev/aspia works
Aspia is a cross-platform remote access product whose main workflow is a user choosing a managed host, establishing a direct or Router/Relay-assisted connection, authenticating, and then using remote capabilities such as desktop control or file transfer. The graph also preserves address-book and backup management, audio/video processing, and host-side capture/input as distinct product areas. The README documents the broader feature set, but most of those implementations are not present in the sampled source; their paths therefore use only supported enclosing directories, and uncertain internal wiring is omitted.
Main entry points: host Host session · desktop Client interface · router_session.cc Client session · peer Peer networking
Components 21
Client experience
- Client interface
source/client/desktop - File transfer
source/client/desktop/file_transfer - Task manager
source/client/desktop/desktop/task_manager_window.cc - Text chat
source/client/desktop/chat/chat_window.cc
Connection and security
- Client session
source/client/router_session.cc - Client authentication
source/base/peer/client_authenticator.cc - Peer networking
source/base/peer - Router and relay
source/base/peer
Host capabilities
- Host session
source/host - Desktop capture
source/host/win/dxgi_duplicator_controller.cc - Remote input
source/host/android/packaging/src/org/aspia/host/InputService.java - Remote terminal
source/host - System information
source/host - Host state
source/host/host_storage.cc
Media processing
- Audio handling
source/base/codec/audio_decoder.cc - Video codecs
source/base/codec/video_decoder.cc - Video recording
source/base/codec/webm_video_encoder.cc
Management data
- Address book
source/client/database.cc - Encrypted backup
source/client/backup.cc - Backup format
source/proto/storage.proto
Other components
- Remote user
Connections 21
- Remote user → Client interface: uses
- Client interface → Client session: starts session
- Client session → Client authentication: authenticates
- Client session → Peer networking: connects
- Peer networking → Router and relay: routes via
- Peer networking → Host session: connects directly
- Router and relay → Host session: relays session
- Host session → Desktop capture: captures screen
- Host session → Remote input: delivers input
- Client interface → File transfer: opens transfer
- Client interface → Task manager: opens manager
- Client interface → Text chat: opens chat
- Client interface → Address book: reads and updates
- Client interface → Encrypted backup: exports or imports
- Encrypted backup → Backup format: serializes
- Host session → Remote terminal: provides
- Host session → System information: provides
- Host session → Host state: records state
- Host session → Audio handling: uses codecs
- Host session → Video codecs: uses codecs
- Video codecs → Video recording: encodes recording