pushMessage should return null,[]

If pushMessage is called in async.waterfall, we should ensure that cb is called in the same way!
we cannot invokeCallback(cb) or invokeCallback(cb, null, failIds) in the same function under different situations.