replace mobilecommons.optin with sendSMS, refactor to avoid async database problems