add sync method with progress call back for sending message