Revert "Revert "add dispatcher event""

This reverts commit 083fb3a39996d9d54e7e9c190bde3cf3e629b1f1.