I'm the developer of PyeTV (http://code.google.com/p/pyetv/), a Front Row plugin for EyeTV. I'm experiencing some weird behavior that I'd like to ask the experts here about.
Essentially all PyeTV does is communicate with EyeTV via appscript and throw up a few menu options in Front Row. When the user activates a menu option for playing a recording, it sends the appropriate appscript command to EyeTV, something like: app("EyeTV").play(id) where "id" is the stored integer id of the recording to play. In general, this works quite well, however, there are certain curcumstances where it seems that EyeTV never gets the message to play the recording. It seems that after Front Row has been idle for quite some time (perhaps 12 hours or more), and I then attempt to play a recording, it doesn't seem like the message is sent to EyeTV, (or perhaps it's just not received; I can't really tell.) If I then restart Front Row (and therefore python) and try again, it works 100% of the time, until it's been idle again for a long time. I haven't been able to observe anything unusual in the logs, and am beginning to grasp at straws for an explanation here. I've stared at my code and poked and prodded it until my eyes have started bleeding, all to no avail. I'm beginning to wonder if the problem might lie in some of the behind-the-scenes implementation details of appscript. Perhaps there's some sort of caching of connections to applications which times at some point. In any case, can any of the appscript gurus think of any reason why the following (pseudo) code should fail: import appscript id=app("EyeTV").recordings.get()[0] app("EyeTV").play(id) # works just fine app("EyeTV").stop() #works just fine go_do_other_stuff_possibly_in_other_threads_for_a_really_long_time() app("EyeTV").play(id) # has no effect Thanks, Jon Again, I've researched this quite a bit, and haven't _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://mail.python.org/mailman/listinfo/pythonmac-sig