Refactor and make Job::Sms do not rely on SmsToken