message logic through PUSH