/// <summary>
 /// Retrieve message delivery details by message Id
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// Consumer subscription Id
 /// </param>
 /// <param name='smsMessageId'>
 /// A unique identifier for the SMS message
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <GetSmsResponse> GetSmsAsync(this ISmsClient operations, System.Guid subscriptionId, System.Guid smsMessageId, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.GetSmsWithHttpMessagesAsync(subscriptionId, smsMessageId, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Sends Sms message to multiple recipients.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// Consumer subscription Id
 /// </param>
 /// <param name='request'>
 /// Bulk recipient Sms request
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IList <SendBulkSmsResponse> > SendBulkSmsAsync(this ISmsClient operations, System.Guid subscriptionId, SendBulkSmsRequest request, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.SendBulkSmsWithHttpMessagesAsync(subscriptionId, request, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Fetch Fake Provider Configurations Details for a specific
 /// ProviderConfigurationId.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='providerConfigurationId'>
 /// The Provider Configuration ID
 /// </param>
 /// <param name='subscriptionId'>
 /// The Subscription ID
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <object> GetFakeSmsProviderConfigurationAsync(this ISmsClient operations, System.Guid providerConfigurationId, System.Guid subscriptionId, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.GetFakeSmsProviderConfigurationWithHttpMessagesAsync(providerConfigurationId, subscriptionId, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
Example #4
0
 public OtpSender(IOtpRepository otpRepository, IOtpGenerator otpGenerator, ISmsClient smsClient, OtpProperties otpProperties)
 {
     this.otpRepository = otpRepository;
     this.otpGenerator  = otpGenerator;
     this.smsClient     = smsClient;
     this.otpProperties = otpProperties;
 }
Example #5
0
 public ColdSpellLeftNotificationHandler(ISmsClient smsClient, IConfiguration configuration, IDateTimeProvider dateTimeProvider)
 {
     _smsClient        = smsClient;
     _configuration    = configuration;
     _dateTimeProvider = dateTimeProvider;
     _timeZone         = new GmtTimeZone();
 }
 /// <summary>
 /// Updates a provider configuration which delivers SMS via Twilio.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// A valid SubscriptionId in which you are an owner/contributor
 /// </param>
 /// <param name='providerConfigurationId'>
 /// A valid ProviderConfigurationId of the config which needs to be updated
 /// </param>
 /// <param name='request'>
 /// The request body
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <object> UpdateTwilioProviderConfigurationAsync(this ISmsClient operations, System.Guid subscriptionId, System.Guid providerConfigurationId, TwilioProviderConfigProviderConfigurationRequest request, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.UpdateTwilioProviderConfigurationWithHttpMessagesAsync(subscriptionId, providerConfigurationId, request, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 public SendSmsActivity(
     TelemetryClient telemetryClient,
     ISmsClient sms
     )
 {
     this.telemetry = telemetryClient;
     this.smsClient = sms;
 }
        public void Setup()
        {
            _logger    = new NullLogger <SendSMSInviteeCreatedCommandHandler>();
            _config    = Substitute.For <IConfiguration>();
            _smsClient = Substitute.For <ISmsClient>();

            _testSubject = new SendSMSInviteeCreatedCommandHandler(_logger, _config, _smsClient);
        }
 public ColdSpellEnteredNotificationHandler(IColdSpellRepository coldSpellRepository, ISmsClient smsClient, IConfiguration configuration, IDateTimeProvider dateTimeProvider)
 {
     _coldSpellRepository = coldSpellRepository;
     _smsClient           = smsClient;
     _configuration       = configuration;
     _dateTimeProvider    = dateTimeProvider;
     _timeZone            = new GmtTimeZone();
 }
Example #10
0
 public Worker(ILogger <Worker> logger, IOptions <InnoventSettingOptions> options, IOptions <EmailConfigOptions> emailOptions, IEmailSender emailClient, ISmsClient smsClient)
 {
     _logger        = logger;
     _emailOptions  = emailOptions;
     _configOptions = options;
     _emailClient   = emailClient;
     _smsClient     = smsClient;
     queryList.Add("query {{  sims(msisdn:\"{0}\", first:20) {{edges {{  node{{contactNumber:msisdn description active network {{name}}airtimeBalance dataBalanceInMb smsBalance  }}}}}}}}");
 }
            public void SetUp()
            {
                Configuration       = Substitute.For <IConfiguration>();
                SmsClient           = Substitute.For <ISmsClient>();
                ColdSpellRepository = Substitute.For <IColdSpellRepository>();
                DateTimeProvider    = Substitute.For <IDateTimeProvider>();

                Before();

                Handler = new ColdSpellEnteredNotificationHandler(ColdSpellRepository, SmsClient, Configuration, DateTimeProvider);
            }
Example #12
0
 public NotificationFacade(
     IEmailClient emailClient,
     ITemplateService templateEngine,
     ISmsClient smsClient,
     ISmsRepository smsRepository,
     ApplicationConfiguration applicationConfiguration)
 {
     _emailClient              = emailClient ?? throw new ArgumentNullException(nameof(emailClient));
     _templateEngine           = templateEngine ?? throw new ArgumentNullException(nameof(templateEngine));
     _smsClient                = smsClient ?? throw new ArgumentNullException(nameof(smsClient));
     _smsRepository            = smsRepository ?? throw new ArgumentNullException(nameof(smsRepository));
     _applicationConfiguration = applicationConfiguration;
 }
 public SendSmsRequestReceivedConsumer(
     IWebApiClient webApiClient,
     IPublishEndpoint publishEndpoint,
     ISmsClient smsClient,
     ISmsRepository smsRepository,
     ILogger <SendSmsRequestReceivedConsumer> logger)
 {
     _webApiClient    = webApiClient;
     _publishEndpoint = publishEndpoint;
     _smsClient       = smsClient;
     _smsRepository   = smsRepository;
     _logger          = logger;
 }
 public SendSmsRequestReceivedConsumer(
     IBus bus,
     ISmsClient smsClient,
     ISmsRepository smsRepository,
     ILogger <SendSmsRequestReceivedConsumer> logger,
     ISmsLogRepository smsLogRepository)
 {
     _bus              = bus;
     _smsClient        = smsClient;
     _smsRepository    = smsRepository;
     _logger           = logger;
     _smsLogRepository = smsLogRepository;
 }
 public NotificationManager(
     IEmailClient emailClient,
     ITemplateService templateEngine,
     IWebApiClient webApiClient,
     ISmsClient smsClient,
     ISmsRepository smsRepository)
 {
     _emailClient    = emailClient ?? throw new ArgumentNullException(nameof(emailClient));
     _templateEngine = templateEngine ?? throw new ArgumentNullException(nameof(templateEngine));
     _webApiClient   = webApiClient ?? throw new ArgumentNullException(nameof(webApiClient));
     _smsClient      = smsClient ?? throw new ArgumentNullException(nameof(smsClient));
     _smsRepository  = smsRepository ?? throw new ArgumentNullException(nameof(smsRepository));
 }
Example #16
0
 public JourneyStatusService(IDriverRepository driverRepository,
                             IVehicleRepository vehicleRepository,
                             IJourneyStatusRepository journeyStatusRepository,
                             ISmsClient smsClient,
                             IWhatsappClient whatsappClient,
                             IServiceResultFactory serviceResultFactory)
 {
     _driverRepository        = driverRepository;
     _vehicleRepository       = vehicleRepository;
     _journeyStatusRepository = journeyStatusRepository;
     _smsClient            = smsClient;
     _whatsappClient       = whatsappClient;
     _serviceResultFactory = serviceResultFactory;
 }
Example #17
0
        public static ISmsClient Create(SmsTypeEnum type, string appKey = null, string appSecret = null)
        {
            ISmsClient client = null;

            switch (type)
            {
            case SmsTypeEnum.Aliyun:
                if (string.IsNullOrEmpty(appKey) && string.IsNullOrEmpty(appSecret))
                {
                    client = new AliSmsClient();
                }
                else
                {
                    client = new AliSmsClient(appKey, appSecret);
                }
                break;
            }
            return(client);
        }
 public SmsAuthenticationOperation(
     RuntimeSettings settings,
     ISmsClient smsClient,
     IConfirmationCodeStore confirmationCodeStore,
     IResourceOwnerRepository resourceOwnerRepository,
     ISubjectBuilder subjectBuilder,
     IAccountFilter[] accountFilters,
     IEventPublisher eventPublisher,
     ILogger logger)
 {
     _salt = settings.Salt;
     _generateAndSendSmsCodeOperation = new GenerateAndSendSmsCodeOperation(
         smsClient,
         confirmationCodeStore,
         logger);
     _resourceOwnerRepository = resourceOwnerRepository;
     _addUser        = new AddUserOperation(settings, resourceOwnerRepository, accountFilters, subjectBuilder, eventPublisher);
     _subjectBuilder = subjectBuilder;
 }
Example #19
0
 /// <summary>
 /// Initializes a new instance of the <see cref="CodeController"/> class.
 /// </summary>
 /// <param name="settings"></param>
 /// <param name="smsClient">The SMS client.</param>
 /// <param name="confirmationCodeStore">The confirmation code store.</param>
 /// <param name="resourceOwnerRepository">The resource owner repository.</param>
 /// <param name="subjectBuilder">The subject builder.</param>
 /// <param name="accountFilters">The account filters.</param>
 /// <param name="eventPublisher">The event publisher.</param>
 /// <param name="logger">The logger</param>
 public CodeController(
     RuntimeSettings settings,
     ISmsClient smsClient,
     IConfirmationCodeStore confirmationCodeStore,
     IResourceOwnerRepository resourceOwnerRepository,
     ISubjectBuilder subjectBuilder,
     IEnumerable <IAccountFilter> accountFilters,
     IEventPublisher eventPublisher,
     ILogger <CodeController> logger)
 {
     _smsAuthenticationOperation = new SmsAuthenticationOperation(
         settings,
         smsClient,
         confirmationCodeStore,
         resourceOwnerRepository,
         subjectBuilder,
         accountFilters.ToArray(),
         eventPublisher,
         logger);
 }
 /// <summary>
 /// Delete Provider Configurations for a specific ProviderConfigurationId.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// The Subscription ID
 /// </param>
 /// <param name='providerConfigurationId'>
 /// The Provider Configuration ID
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task DeleteProviderConfigurationAsync(this ISmsClient operations, System.Guid subscriptionId, System.Guid providerConfigurationId, CancellationToken cancellationToken = default(CancellationToken))
 {
     (await operations.DeleteProviderConfigurationWithHttpMessagesAsync(subscriptionId, providerConfigurationId, null, cancellationToken).ConfigureAwait(false)).Dispose();
 }
 /// <summary>
 /// Updates a provider configuration which delivers SMS via Twilio.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// A valid SubscriptionId in which you are an owner/contributor
 /// </param>
 /// <param name='providerConfigurationId'>
 /// A valid ProviderConfigurationId of the config which needs to be updated
 /// </param>
 /// <param name='request'>
 /// The request body
 /// </param>
 public static object UpdateTwilioProviderConfiguration(this ISmsClient operations, System.Guid subscriptionId, System.Guid providerConfigurationId, TwilioProviderConfigProviderConfigurationRequest request)
 {
     return(operations.UpdateTwilioProviderConfigurationAsync(subscriptionId, providerConfigurationId, request).GetAwaiter().GetResult());
 }
        /// <summary>
        /// Initializes a new instance of the <see cref="AuthenticateController"/> class.
        /// </summary>
        /// <param name="smsClient">The SMS client.</param>
        /// <param name="dataProtectionProvider">The data protection provider.</param>
        /// <param name="urlHelperFactory">The URL helper factory.</param>
        /// <param name="actionContextAccessor">The action context accessor.</param>
        /// <param name="eventPublisher">The event publisher.</param>
        /// <param name="authorizationCodeStore">The authorization code store.</param>
        /// <param name="authenticationService">The authentication service.</param>
        /// <param name="authenticationSchemeProvider">The authentication scheme provider.</param>
        /// <param name="twoFactorAuthenticationHandler">The two factor authentication handler.</param>
        /// <param name="subjectBuilder">The subject builder.</param>
        /// <param name="consentRepository">The consent repository.</param>
        /// <param name="scopeRepository">The scope repository.</param>
        /// <param name="tokenStore">The token store.</param>
        /// <param name="resourceOwnerRepository">The resource owner repository.</param>
        /// <param name="confirmationCodeStore">The confirmation code store.</param>
        /// <param name="clientStore">The client store.</param>
        /// <param name="jwksStore">The JWKS store.</param>
        /// <param name="accountFilters">The account filters.</param>
        /// <param name="logger">The controller logger.</param>
        /// <param name="runtimeSettings">The runtime settings.</param>
        public AuthenticateController(
            ISmsClient smsClient,
            IDataProtectionProvider dataProtectionProvider,
            IUrlHelperFactory urlHelperFactory,
            IActionContextAccessor actionContextAccessor,
            IEventPublisher eventPublisher,
            IAuthorizationCodeStore authorizationCodeStore,
            IAuthenticationService authenticationService,
            IAuthenticationSchemeProvider authenticationSchemeProvider,
            ITwoFactorAuthenticationHandler twoFactorAuthenticationHandler,
            ISubjectBuilder subjectBuilder,
            IConsentRepository consentRepository,
            IScopeRepository scopeRepository,
            ITokenStore tokenStore,
            IResourceOwnerRepository resourceOwnerRepository,
            IConfirmationCodeStore confirmationCodeStore,
            IClientStore clientStore,
            IJwksStore jwksStore,
            IEnumerable <IAccountFilter> accountFilters,
            ILogger <AuthenticateController> logger,
            RuntimeSettings runtimeSettings)
            : base(
                dataProtectionProvider,
                urlHelperFactory,
                actionContextAccessor,
                eventPublisher,
                authenticationService,
                authenticationSchemeProvider,
                twoFactorAuthenticationHandler,
                authorizationCodeStore,
                consentRepository,
                scopeRepository,
                tokenStore,
                resourceOwnerRepository,
                confirmationCodeStore,
                clientStore,
                jwksStore,
                subjectBuilder,
                accountFilters,
                logger,
                runtimeSettings)
        {
            _eventPublisher        = eventPublisher;
            _confirmationCodeStore = confirmationCodeStore;
            _logger           = logger;
            _getUserOperation = new GetUserOperation(resourceOwnerRepository, logger);
            var generateSms = new GenerateAndSendSmsCodeOperation(smsClient, confirmationCodeStore, logger);

            _smsAuthenticationOperation = new SmsAuthenticationOperation(
                runtimeSettings,
                smsClient,
                confirmationCodeStore,
                resourceOwnerRepository,
                subjectBuilder,
                accountFilters.ToArray(),
                eventPublisher,
                logger);
            _validateConfirmationCode = new ValidateConfirmationCodeAction(confirmationCodeStore);
            _authenticateHelper       = new AuthenticateHelper(
                authorizationCodeStore,
                tokenStore,
                scopeRepository,
                consentRepository,
                clientStore,
                jwksStore,
                eventPublisher,
                logger);
            _generateAndSendSmsCodeOperation = generateSms;
        }
 /// <summary>
 /// Fetch Twilio Provider Configurations for a specific
 /// ProviderConfigurationId.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='providerConfigurationId'>
 /// The Provider Configuration ID
 /// </param>
 /// <param name='subscriptionId'>
 /// The Subscription ID
 /// </param>
 public static TwilioProviderConfigProviderConfigurationResponse GetTwilioProviderConfiguration(this ISmsClient operations, System.Guid providerConfigurationId, System.Guid subscriptionId)
 {
     return(operations.GetTwilioProviderConfigurationAsync(providerConfigurationId, subscriptionId).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Sends Sms message to multiple recipients.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// Consumer subscription Id
 /// </param>
 /// <param name='request'>
 /// Bulk recipient Sms request
 /// </param>
 public static IList <SendBulkSmsResponse> SendBulkSms(this ISmsClient operations, System.Guid subscriptionId, SendBulkSmsRequest request)
 {
     return(operations.SendBulkSmsAsync(subscriptionId, request).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Sends a single SMS message.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// Consumer subscription Id
 /// </param>
 /// <param name='request'>
 /// </param>
 public static object SendSms(this ISmsClient operations, System.Guid subscriptionId, SendSmsRequest request)
 {
     return(operations.SendSmsAsync(subscriptionId, request).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Delete Provider Configurations for a specific ProviderConfigurationId.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// The Subscription ID
 /// </param>
 /// <param name='providerConfigurationId'>
 /// The Provider Configuration ID
 /// </param>
 public static void DeleteProviderConfiguration(this ISmsClient operations, System.Guid subscriptionId, System.Guid providerConfigurationId)
 {
     operations.DeleteProviderConfigurationAsync(subscriptionId, providerConfigurationId).GetAwaiter().GetResult();
 }
 /// <summary>
 /// Fetch Fake Provider Configurations Details for a specific
 /// ProviderConfigurationId.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='providerConfigurationId'>
 /// The Provider Configuration ID
 /// </param>
 /// <param name='subscriptionId'>
 /// The Subscription ID
 /// </param>
 public static object GetFakeSmsProviderConfiguration(this ISmsClient operations, System.Guid providerConfigurationId, System.Guid subscriptionId)
 {
     return(operations.GetFakeSmsProviderConfigurationAsync(providerConfigurationId, subscriptionId).GetAwaiter().GetResult());
 }
 /// <summary>
 /// Retrieve message delivery details by message Id
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// Consumer subscription Id
 /// </param>
 /// <param name='smsMessageId'>
 /// A unique identifier for the SMS message
 /// </param>
 public static GetSmsResponse GetSms(this ISmsClient operations, System.Guid subscriptionId, System.Guid smsMessageId)
 {
     return(operations.GetSmsAsync(subscriptionId, smsMessageId).GetAwaiter().GetResult());
 }
Example #29
0
 public StartupTextJob(ISmsClient smsClient, IConfiguration configuration)
 {
     this.smsClient     = smsClient;
     this.configuration = configuration;
 }
 /// <summary>
 /// Lists all available provider configurations for the subscription.
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='subscriptionId'>
 /// The subscription ID
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <IList <ProviderConfigurationListItem> > GetAllProviderConfigurationsAsync(this ISmsClient operations, System.Guid subscriptionId, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.GetAllProviderConfigurationsWithHttpMessagesAsync(subscriptionId, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }