/// <inheritdoc />
        public async Task HandleMessages(Activity activity)
        {
            if (activity.Type == ActivityTypes.Message)
            {
                string message = activity.Text.ToLower();

                switch (message)
                {
                case var _ when message.Contains(GeneralConstants.InfoMessage) is true:
                    message = await gitHubRepository.GetUserInfo();

                    break;

                case var _ when message.Contains(GeneralConstants.MyIssuesMessage) is true:
                    message = await gitHubRepository.GetCurrentUserIssuesInfoString();

                    break;

                case var _ when message.Contains(GeneralConstants.IssuesMessage) is true:
                    message = await gitHubRepository.GetUserIssuesInfoString();

                    break;

                default:
                    message = GeneralConstants.DefaultMessage;
                    break;
                }

                await ReplyMessage(activity, message);
            }
            else
            {
                await HandleSystemMessage(activity);
            }
        }