Improve SMSSource constructor and fix uniqueness