GithubHelp home page GithubHelp logo

ziahamza / webui-aria2 Goto Github PK

View Code? Open in Web Editor NEW
9.8K 270.0 1.4K 15.81 MB

The aim for this project is to create the worlds best and hottest interface to interact with aria2. Very simple to use, just download and open index.html in any web browser.

License: MIT License

JavaScript 75.21% HTML 21.97% Dockerfile 0.37% SCSS 2.45%

webui-aria2's Issues

Help-Info text not enough explicit

Description :

During network configuration the description of the fields "Username" and "Passwords" are not well explained.

How it looks like :
The help fields suggest to enter server username and server password

How it should looks like :
The help fields should suggest to enter aria2c RPC username and aria2c RPC password

Support password protected downloads

I tried to specify this in the download URL (i.e. http://user:[email protected]/downloading/file.mkv) but it wouldn't work. Got this output from the RPC:

[#1 SIZE:0B/0B CN:1 SPD:0Bs]
2013-02-22 03:20:35.952338 ERROR - CUID#10 - Download aborted. URI=http://user:[email protected]/downloading/file.mkv
Exception: [AbstractCommand.cc:303] errorCode=24 URI=http://user:[email protected]/downloading/file.mkv
  -> [HttpSkipResponseCommand.cc:207] errorCode=24 Authorization failed.

2013-02-22 03:20:35.956179 NOTICE - Download GID#1 not complete:

It looks like it would be supported by using the http-passwd argument.

It would be awesome to have per download password settings.

Download items visual improvement

Currently, there is no border between download items. It makes somewhat hard to distinguish a particular item from the others.
It would be great to add some borders or effects to make the region of the item clear.

Completed Torrent download info could be streamlined?

here's what's currently displayed for a finished torrent:

Remaining: 0 B | Progress: 100.00% | Speed: 0 B/s | Time left: infinite

Remaining can be removed, as well as Speed (if this download speed) because they are redundant.

what about showing something like:

Progress: 100.00% | Seeding (if true)

localhost address

It seems to me that webui reads client address as the localhost, not the server side address (where webui files are hosted)?

if I try to access a remote webui, it doesn't connect to aria2 session running in the remote machine. The only method is to set custom IP. but webui doesn't remember this setting so I have to set it every time I visit.

The other method is to modify directly script.js file. so any better workaround?

task name is truncated in the list

like this

http://i.imgur.com/eOzZW.jpg

it is strange because some task names are not affected and will wrap to new line automatically.

seems that add a style (word-wrap: break-word) to the name will settle.

        <div class="span2" style="overflow: hidden; word-wrap: break-word;">
        <b style="font-size: 12px;" class="tmp_name">{{name}}</b>
    </div>

Suggestion for the new design and some issues

  1. The right side button is a little too big. Instead, from my point of view, a small button could be placed next to the path/download info line.
  2. I don't know whether it is a deliberate design. the progress is still animating after download is finished.
  3. In the download info line, "download speed" and "progress" report the same value.
  4. Error download doesn't highlight in red like before.

Incorrect display on mobile device

Hi,

Here I am (that's me, again...).
I'm currently using the webUi through my android device (SG2), and the bootstrap is not doing well.

The menubar is not showing the links.

The content is not resized to fit the device.

Here are the screens:

img1
img2
img3

Save current downloading files list

Is there a way to save downloads list?
Every time I restart aria2, I have to re-add every previous file.
They resume fine and I'm happy with that, but I have to save every download url in case I need to resume it.
Am I missing something?
Thanks

keep getting connection error

Recently webui keeps giving connection error.

I know webui goes with 'localhost' by default. What is strange, is that connection to aria2 would fail at the first attempt (default setting) but subsequently succeed if I fill in "localhost' for the custom host.

Then if I close and reopen the browser, it seems like cookie is not stored at all. I have to repeat the above steps again. This is quite annoying.

"No current downloads"

if there are no downloads, it might be helpful to show "No current downloads" to the user instead of blank space, to show that you are connected & things are running normally

downloaded torrent file not processed

If I add a torrent link, the web client only dowloads the torrent file, and saves the .torrent file onto disk. It never processes the torrent file to download the actual contents. I even explicitly put follow-torrent=true in the options, and it did no help. I only get the .torrent file, not the actual torrent I want to download.

Question: aria2.conf settings

When you save the settings in the web gui is it supposed to update or create a settings/conf file somewhere?

On windows this does not seem to be the case. Even if I start the windows exe using --conf-path=, settings don't survive an exe restart. I had wondered if this was something to do with aria2c's defaults, even in the windows binary it uses /.aria2/aria2.conf but is does not change anything when the conf path is set.

Win 8 x64 / aria2c.exe x64 / web gui + firefox

If it note supposed to update or edit any files then maybe this could be considered.

Feature request:

Have the option to download the current Gui settings as a conf file that can then be used when starting aria2c?

webUI connexion to aria2c RPC

Hi there,

According to your previous post in aria2c forums ( https://sourceforge.net/apps/phpbb/aria2/viewtopic.php?f=1&t=195&p=982#p982 ).

I' tried your solutions to try to get webui working with my debian aria2c server.

Here is a summary :

��► Debian server running 24/7 and hosting aria2c and webserver (apache2).
► aria2c running with startup script (see this post : https://sourceforge.net/apps/phpbb/aria2/viewtopic.php?f=1&t=196&p=961#p961 ), running with RPC (with user and pass filled in)
► webui-aria2 www folder located in /var/www/ and sync with git (git pull)
► port 6800 open in my router and forwarded to my server
► Iptables allowing traffic

I open up the webui from github and tried to connect to my aria2c server entering with my external IP, RPC user and RPC pass >> No result
I open up the webui hosted in my debian server with local IP (192.168.1.x) and set server IP, RPC user and RPC pass >> No result
I stopped my actual aria2c daemon and started with only "aria2c --enable-rpc", tried both github page or local page with corresponding IP and without RPC user and RPC pass >> No result

This issue makes me feel really weird because It seems that my parameters seems right, but no results.

Also, got a notice : Could you make this sentences more explicit (or said in another way) :
● Enter the username of the server on which the rpc for aria2 is running (empty if authentication not enabled)
● Enter the password of the server on which the rpc for aria2 is running (empty if authentication not enabled)

These sentences means that we need to enter server user and pass and not aria2c RPC user and RPC pass (otherwise, I'm totally wrong and these fields needs These infos)

Split path to get name

Is there any specific reason why you change the way how task name is generated? I see you comment the previous method. but new method seems to produce incomplete file name sometimes.

or do a simple path split like this?

    var pathsplit=data.files[0].path.split(/[/\\]/);
    name=pathsplit[pathsplit.length-1];

add "remove all finished tasks"

i think it will be a complement.

by the way, what is the difference between remove all downloads and purge all downloads?

I checked the JavaScript function and found they are almost the same?

"Connection to aria failed :(" message pops up when using webui on iOS device.

Hi, the title is self explanatory. I´ve set webui-aria2 as directed in the readme, and I can download and monitor stuff from the computer aria is running on with no problems using the webui. However, if I try from the ios device, the failure message pops up after a while. (it is an ipad 3rd gen w/ os 5.1.1)

The popup appears just over the "Currently no downloads in line to display, use the Add download button to start downloading files!" message.

I have set aria2 as a windows service, and the webui is hosted on the machine with mongoose server, which also runs as a service.

Cannot connect to websocket

I have aria2 running in terminal, but when I open the index.html it says the following: Error while talking to aria2 over websocket and gives me no further details. Can I please have some assistance here? And in the terminal all it says is:
2013-06-22 15:41:56.209883 NOTICE - IPv4 RPC: listening to port 6800

2013-06-22 15:41:56.210544 NOTICE - IPv6 RPC: listening to port 6800

I would love it if I could get some assistance here.

Feature suggestion

It would be a big usability ease if the web-ui automatically uses the current accessing ip as default host ip before throwing the "Connection to aria failed :( " on initial load.

This comes really handy when user have a dynamic IP and the aria2 server is on same lan/connection from where the web-ui is accessed again and again.

feature suggestion: show current speed in page title, profile quick switch

For the first, unicode arrows could be used here
for example:

↓ xxx kb/s ↑ XXX kb/s - aria2 Web Client

For the second, I hope there is a quick switch option for various rpc addresses, so be handy to manager multi-devices running aria2. Not necessarily profile switch, you may have a better idea about this.

Some advise

put some commonly usd settings together for convenience
like max-download-limit max-upload-limit dir .........

:)

Play button

Currently the resume button is labeled with "Play".
I think it would be better to label it "Resume" because usually people use "resume" in the case of download.

a suggestion on "add a new download" dialog

Just a suggestion, change the mouse-click behavior of "+" in the "add a new download" dialog.

The "plus" icon may associate with a function to expand url single-line input field to multi-line. then it should be very handy to paste a batch of links and import.

Start writing tests

Currently nothing is tested and hence our defenses are down. I am currently looking into different testing frameworks and approaches.

Unable to load

Hi,
I cannot connect to aria on my server when the webui client not is on the client computer.

In webbrowser console it warns about unable to read a script. Examining the live html the following script is included:

<script src="http://my.host:6800/jsonrpc?jsoncallback=jQuery172030926092539994576_1342344449804&jsonrpc=2&id=webui&method=system.multicall&params=W1t7Im1ldGhvZE5hbWUiOiJhcmlhMi50ZWxsQWN0aXZlIn0seyJtZXRob2ROYW1lIjoiYXJpYTIudGVsbFdhaXRpbmciLCJwYXJhbXMiOlswLDEwMF19LHsibWV0aG9kTmFtZSI6ImFyaWEyLnRlbGxTdG9wcGVkIiwicGFyYW1zIjpbMCwxMDBdfSx7Im1ldGhvZE5hbWUiOiJhcmlhMi5nZXRHbG9iYWxTdGF0In1dXQ%3D%3D&_=1342344564725"/>

The my.host is where the client lies, but it is told to connect to ip and not to my.host and my.host:6800 is blocked by the firewall.

It looks like wrong address is used for the script. I will continue to investigate.

Best regards

  • Martin

https/wss support

The next version of aria2 supports RPC over SSL/TLS. It would be good to add the configuration to support https/wss protocol. The current aria2 master branch has this feature implemented. To enable RPC over SSL/TLS, use --rpc-certificate, --rpc-private-key and --rpc-secure along with --enable-rpc.

Completed download color and sorting/grouping of unfinished/finished downloads

Completed downloads have the same color as downloads in progress.

I think it would be easier to see at a glance which downloads were finished if they had a different color (green?) instead.

also, downloads that are still in progress could be grouped together & shown at the top instead of them all being mixed in together, since I'm usually more concerned about which downloads are still going.

Specialized info for BitTorrent and Metalink download

I saw this item in TODO list:

  • More specialized info for special download types like bit torrent and metalink

Do you have any blue print for this feature?

Here is what I just come up with (these are not complete and not requirement, just my thoughts):

  • For BitTorrent thing, peer list would be good information to add.
  • The graphical indicator to show which pieces have been downloaded (like Azureus offers).
    aria2 offers segmented downloads for all kind of protocols, so this information can be used for other protocols too.

Feature Request: Dynamic Page Title

A simple feature. Basically show the current download statuses in the page title.

Something like
(4 downloading, 3 complete, 5 paused, 1 stopped) aria2 web client
or perhaps something more compressed?
(4d 3c 5p 1s) aria2 web client

Main reason I want this is because I have the ui as a pinned tab; and pinned tabs light up if the title changes so this can act as an excellent notification when downloads complete or stop due to errors.

WebSocket connection periodically reestablished

I just noticed that WebSocket connection is disconnected and reconnected in every 30 seconds.

2012-07-14 18:46:56.904383 DEBUG - [HttpServer.cc:273]HTTP Server sends upgrade response:
HTTP/1.1 101 Switching Protocols
Upgrade: websocket
Connection: Upgrade

...

2012-07-14 18:47:25.906317 INFO - [rpc_helper.cc:109]Executing RPC method system.multicall
2012-07-14 18:47:25.909429 INFO - [WebSocketInteractionCommand.cc:97]CUID#11 - WebSocket session terminated (Possibly due to EOF).

This may be aria2 issue, but log indicates that aria2 got EOF from the browser.

Any ideas?

Easy way to set speed limits

I often need to limit the overall speed of all running downloads, but using the settings modal dialog this is a real pain, since the option is somewhere in the middle and i regularly have to search for it.

It would be awesome if there were two input boxes in the download area that let you enter speed limits directly and also view the currently set speed limit.

Navigation naming & structure.

Can I make some recommendations for the navigation naming and structure?

  • "Add" instead of "Add Download"
  • "Manage" instead of "Stop Downloads"
    • Pause All
    • Resume Paused
    • Set Speed Limit
    • Purge Completed
    • Remove All (dangerous, should be confirmed with modal Yes/No)
  • "Settings" instead of of "Other" (just for connection & global settings).
  • "About" and Global Stats may be in a new top-level dropdown called "About".

Purge currently removes active and waiting downloads. What is the reason for this? Can it be changed to just purge completed/error/removed from the queue?

I am learning HTML+JS and would like to try to implement these changes myself if they are wanted :)

Torrent name: name displayed could be more useful?

currently, it looks like just a filename (possibly the first?) is displayed when downloading a torrent.

other torrent clients tend to show a more descriptive name, which seems to be something like the root directory of whatever is being downloaded. would it be possible to display that?

also, would it be possible to list all files contained in a torrent when you click More Info?

Add config file

Maybe i'm wrong, but i didn't find any config file for the webui.

It would be nice to create a config file where:

  • Hide Torrent and/or Metalink menus (in the case of aria2c is is compiled without)
  • Add default connection setting and possibility to hide the Connection Settings menu, i've many people who use the webui, and i didn't want to give the user/password of the rpc.

[Improovment] SetMaxDownloadSpeed

Hi,

Using webUi since some time, I just thought that It would be a good idea to have a quick access to some parameters. I mean, we could have the ability to set the maxDL speed on the top bar.
Otherwise, we could have something like starred properties that would be accessible directly into a dropdown menu left of top "Other" menu item.

What do you think about?

If It's not clear, just tell me I would send screenshots of what I'm meaning.
Regards

Don't work 'Add Torrent'

When press 'Add' in 'Add Torrent' window nothing work. In a web console appears error:
"uncaught exception: cant run error!!!
no user name and still error!!!"

Here is the screenshot: http://tinyurl.com/8mrctg7 .

Using:

  • Aria2 1.15.2;
  • Windows 7 x64;
  • Firefox 15.0.1.

Add a build system

The current project desperately needs a build step for a lot of potential goodness (testing, compile time packaging, simple tools to bundle the ui with aria2 etc. NodeJS should be a perfect fit for this and hope to use something like grunt at the end.

WebSockets as default interface

from Tatsuhiro
"Currently, it seems to use JSON-RPC with callback. I think it is fine now, but gsoc idea mentions websocket so please add it in todo list and make it default interface. The web browser can use WebSocket without same origin policy prevention as long as the server (aria2c) accepts connections. Also WebSocket does not require HTTP header for each message so it has much lower overhead."

use optional parameters

how can i add a download with some optional parameters? look like execute following link directly:

aria2c -c -s10 -x10 -o 'archlinux-2013.06.01-dual.iso' --header 'Cookie: FTN5K=f086416f' 'http://xflx.store.cd.qq.com:443/ftn_handler/e5f38680a59986f1f7d433e061620b472cce80b9947de38dcb5b9babe825720d6a62b22395538b76d13564d458f27848cc632e1f563035996314022b050c856b/archlinux-2013.06.01-dual.iso'

Slow performance

Using angular.js, do we really need to redraw all of the downloads on update? Can't we calculate just what changed and update views accordingly? It kills my CPU completely at 15 simultaneous jobs.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.