on *:TEXT:*:#channelname: .timeridlemsg_ $+ $cid $+ $chan 1 1800 msg $chan Hey, it's quiet here...
on *:ACTION:*:#channelname: .timeridlemsg_ $+ $cid $+ $chan 1 1800 msg $chan Hey, it's quiet here...
on *:NOTICE:*:#channelname: .timeridlemsg_ $+ $cid $+ $chan 1 1800 msg $chan Hey, it's quiet here...
on me:*:PART:#channelname: .timeridlemsg_ $+ $cid $+ $chan off
on me:*:JOIN:#channelname: .timeridlemsg_ $+ $cid $+ $chan 1 1800 msg $chan Hey, it's quiet here...
on *:INPUT:#channelname: {
if (/* !iswm $1) .timeridlemsg_ $+ $cid $+ $chan 1 1800 msg $chan Hey, it's quiet here...
}
Put the above code in a fresh file in remotes (alt-r alt-r File->New)
Replace #channelname with the actual name of the channel you want to do this in (make sure you have permission to run such a script in that channel, some channels kickban for any automated text)
What it does: on each event, it (re)sets a timer to trigger 1 time with a delay of 1800 seconds and message the channel with some text. The timer is disabled when you /part the channel or disconnect from the server. Any text you type in the channel is also considered activity, unless you use /msg #channelname this won't be seen or something similar. Also messages that are run from a script aren't seen.
To have it work on more channels, either just copy the code and change the channelname if you want to have another message or delay, or separate both channels with a comma if the same action is ok.