Difference between revisions of "Events"

From AMule Project FAQ
Jump to: navigation, search
m (inserted link to nds)
Line 1: Line 1:
'''English''' | [[events-de|Deutsch]]
'''English''' | [[events-de|German]] | [[events-nds|Low-Saxon]]

Revision as of 17:34, 2 December 2006

English | German | Low-Saxon

Events are actions aMule can take upon when certain things happen. This actions can be configured on the Events tab of the Usage_Preferences notebook.

There are two kinds of Events supported at the moment:

  • Download completed
  • New chat session

When one of these events is triggered, you can configure aMule to execute a

  • core command
  • GUI command

A core command is a command that will be executed by a flavor of aMule that has a core (aMule daemon or aMule monolithic). A GUI command is a command that will be executed by a flavor of aMule that has GUI (aMule GUI or aMule monolithic). Notice that if you specify both, aMule monolithic will execute both.

Download completed

When a Download completed event is triggered, four variables can be accessed:

  •  %NAME - the name of the downloaded file with full path
  •  %FILE - the name of the downloaded file without path
  •  %HASH - the ed2k hash of the downloaded file
  •  %SIZE - the size in bytes of the downloaded file

New chat session

When a New chat session event is triggered, one variable can be accessed:

  •  %Sender - username of the person initiating the chat


To call an external script, enter the script name in the core command field, followed by the optional variables. For example:


Note: If the filename contains spaces, the variable names should be enclosed in quotes like this:

MyScript.sh "%NAME" "%FILE" %HASH %SIZE

You need to make sure your script in your PATH or that you supply the pathname.


Here the bash script by Ezeltje from aMule-Forum which will send you an email every time a download is completed. To use it, enter your email address where indicated and save it to a location in your PATH. Then add this line:

doneDL.sh "%NAME" "%FILE" %HASH %SIZE

to the Core command field of the Download completed section of the Events page. It will now be invoked everytime aMule finishes a download.

 # doneDL.sh - sends an email upon completion of an aMule download
 # Used in conjuction with aMule's Event feature
 # Call like this: doneDL.sh "%NAME" "%FILE" %HASH %SIZE
 # Enter your email address here:
 echo aMule completed this download:
 echo ------------------------------
 echo File: "$NameLong"
 echo Hash: $Hash
 echo -n "Time: "
 date | awk '{print $4 " " $5}'
 echo -n Size: $Size bytes 
 if [ $Size -gt 102400 ] ; then echo " ("$(($(($Size / 1024)) / 1024)) "Mb)" ; fi
 echo --------------------------------------------------------------------
 echo -n "Resident memory: "
 echo $(ps u -C amule --no-headers | awk '{print $6}') kB
 echo -n "Virtual memory:  "
 echo $(ps u -C amule --no-headers | awk '{print $5}') kB
 echo --------------------------------------------------------------------
 } | mail -s "$NameShort" $eMail