refactor sender service