message sender via greenlet