Is there a way to make an audible noise when a computation is complete?
I tried printing the alert bell ("\a") and didn't hear anything. Tips?
I tried printing the alert bell ("\a") and didn't hear anything. Tips?
Are you using a remote notebook or a local server. If it is local, just run some local command that makes a noise using os.system. How you do this depends entirely one what operating system you are using.
Regarding email (see ccanonc's remark above), it is trivial to use with Sage, irregardless of SMTP. There is a command (I wrote) called "email" that is builtin to Sage, which uses that Sage includes its own mail server (which is part of Twisted). Just do sage: email?
for more details.
Can sage act as a POP or IMAP client?
Yes: Twisted, which Sage contains implements "high-level, efficient protocol implementations for both clients and servers of SMTP, POP3, and IMAP4. " See http://twistedmatrix.com/trac/wiki/TwistedMail
Nice, that's convenient for lazy/home users like me. :-) Maybe I'll dig into those hooks (for the email client code).
Yep, looks easy enough: http://twistedmatrix.com/documents/10.1.0/mail/tutorial/smtpclient/smtpclient.html
Sorry, here with Sage 4.7.1 and Ubuntu 10.04: os.system('mplayer /usr/share/sounds/ubuntu/stereo/phone-incoming-call.ogg') gives
You can try this on any new browser.
def done():
return html('!audio src="http://www.radokirov.com/gong.ogg" autoplay> Your browser does not support the audio
element. !/audio>')
for i in range(10**6):
pass
done()
Replace ! with < . I could not make the code display otherwise.
In the future a function "done()" along with a sound file can be a part of the notebook. I will remove the .ogg file from my server in the future to prevent too much hotlinking (so don't freak out if this doesn't work).
I like it. =)
That is a *fantastic* "I'm finished" sound. Way better than some lame old beep. :)
Also, if you are not working with the notebook, you can use Python's subprocess module and any command-line sound player: just define the done() function as above as something like subprocess.call(['ogg123', 'path/to/file'])
This is now trac 9797: http://trac.sagemath.org/sage_trac/ticket/9797
radokirov: I opened gong.ogg in Audacity, and it's silence after about 2.25 seconds. You can either truncate that, or slowly taper (ramp-down if I'm remembering the term correctly). Audacity is fun to play with...especially if you want a long gong. =)
I added gong.ogg to my notebook, so I can serve it locally. It took a while, but I finally determined the path to the image files:
<$SAGE_ROOT>/local/lib/python2.6/site-packages/sagenb-0.8.2-py2.6.egg/sagenb/data/sage/images/gong.ogg
The URI to the file is:
http://localhost:8000/images/gong.ogg
The file plays fine in Firefox; guess Safari doesn't know how to play an ogg file.
This also works fine in chrome.
Asked: 14 years ago
Seen: 1,657 times
Last updated: Aug 24 '10
I suppose sending an email is another option, though as we saw with this site, SMTP can be a pain, especially for a home user.