add a timeout and exception handling
add studio hooks for 'announce' feature