Functional definition » History » Version 53
Greg Burri, 11/02/2009 01:31 PM
1 | 1 | Greg Burri | h1. Functional definition |
---|---|---|---|
2 | |||
3 | This page will describes the scope and utilization of Aybabtu. |
||
4 | 4 | Greg Burri | Some sections will describe a particular window from the user interface, it may refer to the [[GUI]] page. |
5 | 1 | Greg Burri | |
6 | |||
7 | h2. Description |
||
8 | |||
9 | 50 | Greg Burri | The goal is to easily share some files and folders in a local area network environment like a LAN-Party. All clients are full-trusted. After you launched Aybabtu, you will see all other people and theirs sharing automatically without special configuration. |
10 | 49 | Greg Burri | |
11 | 21 | Greg Burri | Aybabtu come with two executables, the Core and the GUI. It possible to launch one of them alone or both together on the same computer. The GUI is needed to command a Core, to tell it what you want to download, to share, to search, etc. To do that the user have to tell the GUI to connect to a given Core. The Core can be _local_ or _remote_, by default the GUI will try to connect to a local Core. If the connecting attempt to a local Core failed it will try to launch a local Core and connect to it. |
12 | 1 | Greg Burri | |
13 | 51 | Greg Burri | The simple usage of Aybabtu is to launch the GUI which will automatically launch the Core. The user may not know there are two distinct process. The core will display an icon in the tray icon (if a tray icon exists). If the user close the GUI the core will continue to run, if he wants to stop the core he has to invoke a contextual menu from the tray icon and choose _Close the Core_. The user can launch the GUI by double-clicking on the tray icon. |
14 | 1 | Greg Burri | |
15 | 22 | Greg Burri | To connect to a remote Core, the user have to explicitly enter an IP address and a password in the application settings. The password is mandatory for a remote Core. For one Core it cannot be more than one GUI connected (this limitation may be removed in further version of Aybabtu). |
16 | 1 | Greg Burri | |
17 | 31 | Greg Burri | The [[GUI]] shows some default windows, a download windows, an upload window and a chat window. The others windows are the search window, the browse window and the settings window. All of them are described in the sections below. |
18 | 5 | Greg Burri | |
19 | 7 | Greg Burri | h3. Downloading |
20 | 1 | Greg Burri | |
21 | 7 | Greg Burri | You can download file or entire folder from the searching windows or from the browsing windows. The item will be enqueued to the download list and displayed in the download window. |
22 | |||
23 | 15 | Greg Burri | When downloading a folder, all theirs containing folders and files will be downloaded recursively. The path will be preserved and recreated in the machine of the downloading peer. |
24 | 7 | Greg Burri | |
25 | When a file or a directory is being downloaded its name will finished by the tag ".unfinished". For example "my movie.mkv.unfinished". |
||
26 | |||
27 | 8 | Greg Burri | The list of queued items can contains both file or folder, when a folder is downloaded its files and folders are retrieved from the peer and will replace the folder in the list. It calls lazy download. |
28 | 7 | Greg Burri | |
29 | 8 | Greg Burri | |
30 | 1 | Greg Burri | h2. The main window |
31 | |||
32 | 16 | Greg Burri | At the first launch of Aybabtu it will connect to all peers in the LAN and show them in a panel to the left. The information showed for a peer are its name and its amount of sharing. To view the files of a peer you have to double-click in its name or to invoke the action "browse" from the contextual menu. |
33 | 1 | Greg Burri | |
34 | 30 | Greg Burri | The peers in the peer list can be sorted alphabetically or by their amount of sharing. |
35 | |||
36 | 7 | Greg Burri | Above the peer list there is an input box for file searching. You can write something and hit 'return', a new search window will be created and displayed. Each known peer will be asked and the list is filled as a respond is received. You can change the pattern into the search window and relaunch the search. You can have as many search window as you want. |
37 | 1 | Greg Burri | |
38 | |||
39 | h2. The download window |
||
40 | 7 | Greg Burri | |
41 | 26 | Greg Burri | The download window shows the downloading files and also the queued files and the completed files. The list order cannot be changed except for the queued file. A drop-list allow to set a filter against the status to see, for example, only the downloading files. |
42 | 1 | Greg Burri | |
43 | 22 | Greg Burri | For each download the following information are displayed : |
44 | |||
45 | * Filename with path. |
||
46 | * File size. |
||
47 | 25 | Greg Burri | * The status. Shows a progress bar when downloading. |
48 | 53 | Greg Burri | * A list of peer. One per active download. |
49 | 22 | Greg Burri | |
50 | 26 | Greg Burri | Here is the different states of the files and folders that this window shows. |
51 | 9 | Greg Burri | # *Complete* : The complete files. |
52 | 26 | Greg Burri | # *Invalid* |
53 | ## *No source* : The incomplete files with no peers (auto-paused). |
||
54 | ## *Not found* : The unfounded files or folders from the peer (a file or a directory has been removed). |
||
55 | ## *Unknown peer* : File or folder from unknown peer. |
||
56 | 29 | Greg Burri | # *Initializing* : When the hashes of a file are requested to a peer. |
57 | 20 | Greg Burri | # *Downloading* : Downloading files. Shows a progress bar. |
58 | # *Queued* : Enqueued File or folder. |
||
59 | 19 | Greg Burri | |
60 | The state of a download is printed in the column _status_. |
||
61 | 1 | Greg Burri | |
62 | 27 | Greg Burri | For the 2.2 point this can occur when a file or folder has been moved or deleted in the remote peer between the queuing time and the downloading time. |
63 | 18 | Greg Burri | |
64 | 28 | Greg Burri | The user can remove all finished files from the list by invoking _clear complete file_ from the contextual menu. |
65 | 12 | Greg Burri | |
66 | 1 | Greg Burri | The user can change the order of the enqueued file by selecting some of them and drag it up or down. Only the queued items can be dragged. |
67 | |||
68 | |||
69 | h2. The upload window |
||
70 | |||
71 | 22 | Greg Burri | The upload window shows the list of the currently uploading chunk. |
72 | For each uploading chunk these information are displayed : |
||
73 | |||
74 | * The filename with path. |
||
75 | * A progress bar. |
||
76 | * The remote peer name. |
||
77 | 9 | Greg Burri | |
78 | 5 | Greg Burri | |
79 | h2. The chat window |
||
80 | |||
81 | 10 | Greg Burri | This window offer a possibility to communicate with other peers via a single channel. It's possible to send messages and received message. Each message show the owner (peer name) and the sent time. |
82 | |||
83 | 44 | Greg Burri | It's possible to create link to a specific file or folder inside a message like that : "(<peer id>,<folder>,<file>)". It can be done automatically from the searching or browsing window vie the contextual menu. A link act like an html-link, the user can click on it. If it's a folder it will be browsed and if it's a file its containing folder will be browsed. |
84 | 1 | Greg Burri | |
85 | 44 | Greg Burri | The number of message stored is limited (1000, for example). |
86 | 10 | Greg Burri | |
87 | 5 | Greg Burri | h2. The browse window |
88 | |||
89 | 24 | Greg Burri | The browse window shows the shared folders of one peer. There may be several browse window opened in the same time. To open this window the action _browse_ can be invoked from the contextual menu of the peer list by selecting a peer. |
90 | |||
91 | The user can unfold recursively the folders to see theirs content. By invoking _download_ from a file or folder the user queue the item in the download window. |
||
92 | |||
93 | The files already owned by the user are displayed with a different background color. |
||
94 | |||
95 | 5 | Greg Burri | h2. The search window |
96 | |||
97 | 24 | Greg Burri | The _search window_ will search a term to all other peers and progressively display the result. A result can be a folder or a file. There may be several _search window_. |
98 | |||
99 | The user can select many file or folder and choose _download_ from a contextual menu. The files and folders will be queued in the _download window_. |
||
100 | |||
101 | The files already owned by the user are displayed with a different background color. |
||
102 | |||
103 | 37 | Greg Burri | h3. Syntax |
104 | |||
105 | 41 | Greg Burri | There is no special syntax except the quote character used to group some words. For example : |
106 | 32 | Greg Burri | |
107 | 39 | Greg Burri | Reference : 'my dog is playing with a bone.avi' |
108 | * dog -> OK : my *dog* is playing with a bone.avi |
||
109 | * dog bone -> OK : my *dog* is playing with a *bone*.avi |
||
110 | * bone dog -> OK : my *dog* is playing with a *bone*.avi |
||
111 | * BONE dog -> OK : my *dog* is playing with a *bone*.avi |
||
112 | * BôNE dög -> OK : my *dog* is playing with a *bone*.avi |
||
113 | 41 | Greg Burri | * "my DOG" -> OK : *my dog* is playing with a bone.avi |
114 | 39 | Greg Burri | * dog "a bone" -> OK : my *dog* is playing with *a bone*.avi |
115 | 36 | Greg Burri | * dog cat -> KO |
116 | * "my little dog" -> KO |
||
117 | * "my bone dog" -> KO |
||
118 | 32 | Greg Burri | |
119 | 42 | Greg Burri | The words are split by space but also by other special characters like '.' or '#'. |
120 | |||
121 | For example : |
||
122 | |||
123 | 48 | Greg Burri | * "my car" matches *my#car* |
124 | * "my car" matches *my.car* |
||
125 | * "my.car" matches *my.car* |
||
126 | * "my#car" matches *my.car* |
||
127 | * "£my#$car." matches *my.car* |
||
128 | 42 | Greg Burri | |
129 | 43 | Greg Burri | All special character are ignored in the pattern and in the source. |
130 | 32 | Greg Burri | |
131 | 31 | Greg Burri | h2. The settings window |
132 | 24 | Greg Burri | |
133 | 31 | Greg Burri | h3. Basic settings |
134 | 24 | Greg Burri | |
135 | The user can change his nick and define theirs shared and destination folders. |
||
136 | |||
137 | He can define several destination folder. When a new file is created the first folder with enough storage is taken. |
||
138 | |||
139 | 31 | Greg Burri | h3. Advanced settings |
140 | 24 | Greg Burri | |
141 | The user can define the remote core to connect. By default it will connect to the local one and eventually try to launch it if necessary. |
||
142 | |||
143 | 14 | Greg Burri | |
144 | h2. The logging panel |
||
145 | |||
146 | 1 | Greg Burri | The logging panel will show a list of information events like 'The file "debian.iso" is complete, <open its containing folder>.'. Like the chat window it must support url but also local url like "<a href="file://...">Open the folder</url>. |
147 | 14 | Greg Burri | |
148 | 44 | Greg Burri | Each event is composed by a Time and a message like the chat window. The number of stored message is limited as the chat window. |