예제 #1
0
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Object Container: Use objectContainer.Get<T>() to retrieve objects from the scope
            var objectContainer = context.GetFromContext <IObjectContainer>(TwilioApiScope.ParentContainerPropertyTag);

            // Inputs
            var to                  = To.Get(context);
            var from                = From.Get(context);
            var body                = Body.Get(context);
            var mediaurls           = MediaUrls.Get(context);
            var accountsid          = AccountSid.Get(context);
            var messagingservicesid = MessagingServiceSid.Get(context);
            var applicationsid      = ApplicationSid.Get(context);
            var statuscallback      = StatusCallback.Get(context);
            var providefeedback     = ProvideFeedback.Get(context);
            var maxprice            = MaxPrice.Get(context);
            var validityperiod      = ValidityPeriod.Get(context);
            var smartencoded        = SmartEncoded.Get(context);

            var message = await MessageWrappers.SendMessageAsync(objectContainer.Get <ITwilioRestClient>(), from, to, body, mediaurls, maxprice, validityperiod, smartencoded, accountsid, applicationsid, messagingservicesid, providefeedback, statuscallback);

            // Outputs
            return((ctx) => {
                Message.Set(ctx, message);
            });
        }
예제 #2
0
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Object Container: Use objectContainer.Get<T>() to retrieve objects from the scope
            var objectContainer = context.GetFromContext <IObjectContainer>(TwilioApiScope.ParentContainerPropertyTag);

            // Inputs
            var messagesid = MessageSid.Get(context);
            var accountsid = AccountSid.Get(context);

            var cancelled = await MessageWrappers.CancelMessageAsync(objectContainer.Get <ITwilioRestClient>(), messagesid, accountsid);

            // Outputs
            return((ctx) => {
                Cancelled.Set(ctx, cancelled);
            });
        }
예제 #3
0
        protected override async Task <Action <AsyncCodeActivityContext> > ExecuteAsync(AsyncCodeActivityContext context, CancellationToken cancellationToken)
        {
            // Object Container: Use objectContainer.Get<T>() to retrieve objects from the scope
            var objectContainer = context.GetFromContext <IObjectContainer>(TwilioApiScope.ParentContainerPropertyTag);

            // Inputs
            var from           = From.Get(context);
            var to             = To.Get(context);
            var datesent       = DateSent.Get(context);
            var datesentbefore = DateSentBefore.Get(context);
            var datesentafter  = DateSentAfter.Get(context);
            var accountsid     = AccountSid.Get(context);
            var limit          = Limit.Get(context);

            var messages = await MessageWrappers.GetMessagesAsync(objectContainer.Get <ITwilioRestClient>(), from, to, accountsid, datesent, datesentafter, datesentbefore, limit);

            // Outputs
            return((ctx) => {
                Messages.Set(ctx, messages);
            });
        }