cojonesdetoro
04-20-2004, 06:01 PM
EDIT 12/27/2004
This one's even better as it is more generalized. It works on my unsubbed SA1/3.0 but YMMV. If it doesn't work it's probably because the MFS path is different on your Tivo. You can browse MFS with TW to find where it needs to change.
It's not a TW module so you'll have to run from cron or something. Just cut and paste this code and call it delnag.tcl or sumthin:
#!/tvbin/tivosh
proc deletemsg {} {
global subject msg
puts "Found Mail with Subject: $subject"
puts "Deleting...."
dbobj $msg set Deleted 1
event send $TmkEvent::EVT_DATA_CHANGED $TmkDataChanged::MESSAGES 0
}
if { $argv == "" } {
puts "usage: $argv0 \'some string in subject\'"
puts " "
puts " This script will delete pre-tivo messages"
puts " Many of these are nag messages. "
puts " Include in parameters the subject of "
puts " the message like this: "
puts " $argv0 Tivo Service Interrupted"
puts " "
puts " note that it triggers on a substring so just "
puts " running this will also work: "
puts " "
puts " $argv0: Interrupted "
puts " "
puts " Just be careful to be specific enough to "
puts " not delete stuff you don't want to delete "
puts " "
puts " running this will delete all ptretivo messages: "
puts " "
puts " $argv0 DELETE-ALL "
puts " "
puts " it's a good way to eliminate nag messages "
}
set db [ dbopen ]
ForeachMfsFile fsid name type "/MessageItem/PreTivoCentral" "" {
RetryTransaction {
set msg [db $db openid $fsid]
set subject [dbobj $msg get Subject]
set deleted [dbobj $msg get Deleted]
if { $deleted != 1 } {
if { [ string first "$argv" "$subject" ] != -1 } {
deletemsg
} elseif { $argv == "DELETE-ALL" } {
deletemsg
}
}
}
}
Old information below this line -----------------
EDIT2: I have included the script called 'nagkiller' that is a tivoweb module. I have been using this one now for weeks with no noticable side effects. The delnag script is the one referred to in the text below and is buggy. I will leave it in case anyone wants to fix it. It does not rely on tivoweb.
------------------------
EDIT: There's a memory leak when running this script frequently. If you have Tivoweb then try the module shown further down the thread. if not, maybe running this script in the background with an endless loop might improve things.
-------------------------------------------------------
Here's a little script to remove those annoying "Daily Call Required" PreTivoCentral mail messages you get twice-daily when using an unsubbed Tivo.
Disclaimer: I have not tested the script extensively. It seems to work on my SA1/3.0 but YMMV. As always, use this at your own risk. You must accept all the consequences of using this software or not use it at all. This is very raw alpha code. You may also want to wait for more experienced developer feedback to make sure the script does not cause more subtle damage before using it.
The best way to use it would be to issue a cron job that runs it every so often. I didn't try doing an priority stuff so you may want to run from a setpri environment that will not cause a pause in the video. I run it from a cron job that runs every 30 minutes and do not notice any video stuttering when it is run.
Post your feedback here in order to help others and possibly improve the script.
Props to Jeff Keegan and the Tivoweb(and plus) project developers. By reading the tivoweb mail module, I was able to write this in 20 minutes.
EDIT: This script does nothing to 'fake out' the unsubbed Tivo into 'thinking' it has already had a successful dial-in. For that, you need to find fixup30.tcl. This just takes out the tivo message that pops up twice a day whenever you press the Tivo key. This message always has the subject "Daily Call Required". This script will only delete messages that are: not already deleted, have the subject "Daily Call Required" and are set to display when you press the Tivo key.
This one's even better as it is more generalized. It works on my unsubbed SA1/3.0 but YMMV. If it doesn't work it's probably because the MFS path is different on your Tivo. You can browse MFS with TW to find where it needs to change.
It's not a TW module so you'll have to run from cron or something. Just cut and paste this code and call it delnag.tcl or sumthin:
#!/tvbin/tivosh
proc deletemsg {} {
global subject msg
puts "Found Mail with Subject: $subject"
puts "Deleting...."
dbobj $msg set Deleted 1
event send $TmkEvent::EVT_DATA_CHANGED $TmkDataChanged::MESSAGES 0
}
if { $argv == "" } {
puts "usage: $argv0 \'some string in subject\'"
puts " "
puts " This script will delete pre-tivo messages"
puts " Many of these are nag messages. "
puts " Include in parameters the subject of "
puts " the message like this: "
puts " $argv0 Tivo Service Interrupted"
puts " "
puts " note that it triggers on a substring so just "
puts " running this will also work: "
puts " "
puts " $argv0: Interrupted "
puts " "
puts " Just be careful to be specific enough to "
puts " not delete stuff you don't want to delete "
puts " "
puts " running this will delete all ptretivo messages: "
puts " "
puts " $argv0 DELETE-ALL "
puts " "
puts " it's a good way to eliminate nag messages "
}
set db [ dbopen ]
ForeachMfsFile fsid name type "/MessageItem/PreTivoCentral" "" {
RetryTransaction {
set msg [db $db openid $fsid]
set subject [dbobj $msg get Subject]
set deleted [dbobj $msg get Deleted]
if { $deleted != 1 } {
if { [ string first "$argv" "$subject" ] != -1 } {
deletemsg
} elseif { $argv == "DELETE-ALL" } {
deletemsg
}
}
}
}
Old information below this line -----------------
EDIT2: I have included the script called 'nagkiller' that is a tivoweb module. I have been using this one now for weeks with no noticable side effects. The delnag script is the one referred to in the text below and is buggy. I will leave it in case anyone wants to fix it. It does not rely on tivoweb.
------------------------
EDIT: There's a memory leak when running this script frequently. If you have Tivoweb then try the module shown further down the thread. if not, maybe running this script in the background with an endless loop might improve things.
-------------------------------------------------------
Here's a little script to remove those annoying "Daily Call Required" PreTivoCentral mail messages you get twice-daily when using an unsubbed Tivo.
Disclaimer: I have not tested the script extensively. It seems to work on my SA1/3.0 but YMMV. As always, use this at your own risk. You must accept all the consequences of using this software or not use it at all. This is very raw alpha code. You may also want to wait for more experienced developer feedback to make sure the script does not cause more subtle damage before using it.
The best way to use it would be to issue a cron job that runs it every so often. I didn't try doing an priority stuff so you may want to run from a setpri environment that will not cause a pause in the video. I run it from a cron job that runs every 30 minutes and do not notice any video stuttering when it is run.
Post your feedback here in order to help others and possibly improve the script.
Props to Jeff Keegan and the Tivoweb(and plus) project developers. By reading the tivoweb mail module, I was able to write this in 20 minutes.
EDIT: This script does nothing to 'fake out' the unsubbed Tivo into 'thinking' it has already had a successful dial-in. For that, you need to find fixup30.tcl. This just takes out the tivo message that pops up twice a day whenever you press the Tivo key. This message always has the subject "Daily Call Required". This script will only delete messages that are: not already deleted, have the subject "Daily Call Required" and are set to display when you press the Tivo key.