Messages from incoming connections may be prevented with the telemdefault = 2. This isn't perfect because an incoming connect message will be heard if it's shortly after a local connect has been performed. But it works 99% of the time and prevents the constant and very annoying drive-by Echolink connections.
telemdefault = 2 ; 0 = telemetry output off
; 1 = telemetry output on (default = 1)
; 2 = timed telemetry output on command execution and for a short time thereafter.
Messages from cron (I assume via localplay) cannot be stopped on repeater activity.
What Steve was suggesting with tail messages might work for you as they can be stopped upon repeater activity. If you don't need the message sent at specific times, tail messages might be the ticket.
; ; The tailmessagetime,tailsquashedtime, and tailmessages need to be set
; ; to support tail messages. They can be omitted otherwise.
;tailmessagetime=300000 ; Play a tail message every 5 mins
;tailsquashedtime=30000 ; If squashed by another user,
; ; try again after 30 seconds
;tailmessages=msg1,msg2,msg3 ; list of messages to be played for tail message