Exemplo n.º 1
0
        public void Post([FromBody] Activity activity, [FromServices] BotHub bothub)
        {
            var message = activity.AsMessageActivity();

            if (message != null)
            {
                bothub.Receive(activity);
            }
        }
Exemplo n.º 2
0
        public Task StartAsync(IDialogContext context)
        {
            BotHub.SetConnectionNotificationCallback(x =>
            {
                var t = context.PostAsync(x);
            });
            context.Wait(MessageReceivedAsync);

            return(Task.CompletedTask);
        }
Exemplo n.º 3
0
        private async Task MessageReceivedAsync(IDialogContext context, IAwaitable <object> result)
        {
            var msg = context.MakeMessage();

            msg.Type = ActivityTypes.Typing;
            await context.PostAsync(msg);

            //var showCommands = false;

            var activity = await result as Activity;

            BotHub.SendCommand(activity.Text, x =>
            {
                var t = context.PostAsync(x);
            });

            context.Wait(MessageReceivedAsync);

            /*
             * var parts = activity.Text.Split(' ');
             * switch (parts[0]?.ToLower() ?? "")
             * {
             *  case "hello":
             *  case "hey":
             *      await context.PostAsync($"{activity.Text} {activity.From.Name}");
             *      await context.PostAsync($"How can I help you? Remember that you can type 'help' for more options.");
             *      break;
             *  case "actions":
             *  case "options":
             *  case "commands":
             *  case "help":
             *      showCommands = true;
             *      break;
             *  default:
             *      await context.PostAsync($"{activity.From.Name} I am not sure what you mean by '{activity.Text}'?");
             *      showCommands = true;
             *      break;
             * }
             *
             * if (showCommands)
             *  await context.PostAsync($"Commands:" +
             *          $"{Environment.NewLine} ACTION1" +
             *          $"{Environment.NewLine} ACTION2");
             *
             * context.Wait(MessageReceivedAsync);
             */
        }