Esempio n. 1
0
        public TwilioApi()
        {
            var accountSid  = Environment.GetEnvironmentVariable(ACCOUNTSID);
            var authToken   = Environment.GetEnvironmentVariable(AUTHTOKEN);
            var phoneNumber = Environment.GetEnvironmentVariable(PHONENUMBER);

            if (string.IsNullOrWhiteSpace(accountSid) ||
                string.IsNullOrWhiteSpace(phoneNumber) ||
                string.IsNullOrWhiteSpace(authToken))
            {
                throw new Exception("Environment variables not set");
            }

            var twilioAuthentication = new TwilioAuthorization(accountSid, authToken);

            var messagingClient = new HttpClient
            {
                BaseAddress           = new Uri(MESSAGINGURL),
                DefaultRequestHeaders = { Authorization = twilioAuthentication.AuthorizationHeader }
            };

            MessagingApi = RestService.For <ITwilioMessagingApi>(messagingClient);

            var lookupsClient = new HttpClient
            {
                BaseAddress           = new Uri(LOOKUPSURL),
                DefaultRequestHeaders = { Authorization = twilioAuthentication.AuthorizationHeader }
            };

            LookupsApi = RestService.For <ITwilioLookupsApi>(lookupsClient);

            AccountSid = accountSid;
            SmsNumber  = phoneNumber;
        }
Esempio n. 2
0
 public TwilioApi(ITwilioLookupsApi lookupsApi, ITwilioMessagingApi messagingApi,
                  string accountSid, string smsNumber)
 {
     LookupsApi   = lookupsApi ?? throw new ArgumentNullException(nameof(lookupsApi));
     MessagingApi = messagingApi ?? throw new ArgumentNullException(nameof(messagingApi));
     AccountSid   = accountSid ?? throw new ArgumentNullException(nameof(accountSid));
     SmsNumber    = smsNumber ?? throw new ArgumentNullException(nameof(smsNumber));
 }