public async Task <SkillResponse> Handle(string purchaseResult) { LOGGER.log.INFO("Buy", "Handle"); switch (purchaseResult) { case PurchaseResult.Accepted: LOGGER.log.INFO("Buy", "Handle", "Purchase Result Accepted."); return(new Accepted().Handle()); case PurchaseResult.Declined: LOGGER.log.INFO("Buy", "Handle", "Purchase Result Declined."); return(await new Declined(skillRequest).Handle()); case PurchaseResult.AlreadyPurchased: LOGGER.log.INFO("Buy", "Handle", "Purchase Result Already Purchased."); // purchase is detected on launch, so should not get here, respond appropriately break; case PurchaseResult.Error: LOGGER.log.INFO("Buy", "Handle", "Purchase Result Error."); // unsure of how this case is reached break; // add default to handle purchase pending } return(AlexaResponse.Say(" You want to buy Something.")); }
public async Task <SkillResponse> Handle() { await this.userProfile.GetUserProfileData(); if (this.userProfile.CurrentScheduleRequiresPurchase()) { await this.userProfile.DecrementUserProfileSchedule(); } return(AlexaResponse.Say(CommonPhrases.UpSellDeclined())); }
public async Task <SkillResponse> HandleRequest() { LOGGER.log.INFO("Connection", "HandleRequest"); string paymentType = ((ConnectionResponseRequest <ConnectionResponsePayload>)skillRequest.Request).Name; string purchaseResult = ((ConnectionResponseRequest <ConnectionResponsePayload>)skillRequest.Request).Payload.PurchaseResult; switch (paymentType) { case PaymentType.Buy: return(await new Buy(skillRequest).Handle(purchaseResult)); case PaymentType.Upsell: return(await new Upsell(skillRequest).Handle(purchaseResult)); case PaymentType.Cancel: return(new Cancel(this.skillRequest).HandleIntent()); } return(AlexaResponse.Say("Goodbye Moycan!")); }
public SkillResponse Handle() { return(AlexaResponse.Say(CommonPhrases.UpSellAccepted())); }
public async Task <SkillResponse> HandleRequest() { LOGGER.log.INFO("SessionEnded", "HandleRequest"); return(AlexaResponse.Say("Goodbye Moycan!")); }