Exemple #1
0
        private async Task <ResourceResponse> ReplyWithNextMemberToChoose(Activity activity, ConnectorClient connector)
        {
            try
            {
                var lastPlaceVisited = await _service.GetLastVisitedLocationAsync();

                var members = await _service.GetAllMembersAsync();

                var currentMember = Array.IndexOf(members, lastPlaceVisited?.PickedBy ?? "");

                var nextMember = members[(currentMember + 1) % members.Length];
                var nextMonth  = lastPlaceVisited?.Date.AddMonths(1) ?? DateTime.Now.AddMonths(1);

                var replyMessage = string.Format(Messages.NextChooserFormattingMessage, nextMember, nextMonth.ToString("MMMM"));
                var reply        = activity.CreateReply(replyMessage);

                return(await connector.Conversations.ReplyToActivityAsync(reply));
            }
            catch
            {
                var reply = activity.CreateReply("I am not sure who's next to pick. Try again later.");
                return(await connector.Conversations.ReplyToActivityAsync(reply));
            }
        }