Replicating receive-after in an Erlang gen_server