add message queue
add queue handling