Skip to content
This repository has been archived by the owner on Jul 1, 2023. It is now read-only.

EmmanuelJojy/Remote-File-Management-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Server Client Program

Overview

The server client program implements a Flutter Client and Python based server for remote file management. The target cases include creating, deleting, viewing and editing a file. Additionally the user can execute restricted remote commands at the server. The project makes use of Transmission Control Protocol (TCP) sockets for communication.

Server Side Script

Server actions avoid direct native system calls making the server platform independent. Flutter codebase, by default is developed with platform independency making the entire project platform independent

To start server run server.pyc.Alternatively, from /server_script/ execute the following:

python server.py

🚩 All server actions on directory ./reactor/
🔌 Default port is set to :65432.

Server Programming Interface:

Server Action Command Response
Request Path cd Absolute Server Path. (Time out of 500ms)
Create File cf {filename} 1 indicating successful operation else 0
View File vf {filename} {file data} 1 if successful else 0
Delete File df {filename} 1 indicating successful operation else 0
Edit File cf {filename} {data} 1 indicating successful operation else 0
Execute Command rc {command} Execute command on the server. 1 indicating successful operation else 0
Log Out end Closes the active connection.
Shutdown Server shutdown Disconnect and shutdown the server.

Client Side Program

Client side leverages the functionalities of Flutter Framework and Dart combined. The TCP logic is purely built over dart or specifically using Socket class of dart:io library.

✔️ android.permission.INTERNET granted at install for target android devices.
⏳ Default communication timeout set to 500ms.

Sample Project Screenshots

Server Screenshot Server Live with MyDevice connected.

Client Screenshot Client Screenshot Client Screenshot Client Screenshot Client Screenshot
Client Screenshot Client Screenshot Client Screenshot Client Screenshot Client Screenshot

1 Connection Page | 2 Home page (a) | 3 Create file error | 4 Create File | 5 View File Page | 6 Edit File Page | 7 Edit Status Dialog | 8 Home Page (b) | 9 Raw Command Dialog | 10 Connection Page Error

References

Archived Repository

It has been decided the repository be archived after long-time inactivity. The repository will be archived on the July 1st, 2023.


Made with ❤️ by Emmanuel Jojy.

About

Socket Programming for remote file management.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published