Exemplo n.º 1
0
        static void Main(string[] args)
        {
            string token        = File.ReadAllText(@"C:\SKILLBOX_STUDY\C#\HOMEWORK\9\TelegramBot\Data_Files\tokens\token");             // токен для бота
            string dFlowKeyPath = @"C:\SKILLBOX_STUDY\C#\HOMEWORK\9\TelegramBot\Data_Files\tokens\small-talk-rghy-1fa31b152405.json";   // путь к токену для DialogFlow бота

            // Создание telegram-бота
            Bot = new TelegramBotClient(token);

            // Создание DialogFlow клиента
            var dic = JsonConvert.DeserializeObject <Dictionary <string, string> >(File.ReadAllText(dFlowKeyPath));

            projectID = dic["project_id"];
            sessionID = dic["private_key_id"];

            var dialogFlowBuilder = new SessionsClientBuilder {
                CredentialsPath = dFlowKeyPath
            };

            dFlowClient = dialogFlowBuilder.Build();

            games = new AllGames();

            // Подписываем обработчики на события
            Bot.OnMessage       += Bot_OnMessage;
            Bot.OnCallbackQuery += Bot_OnCallbackQuery;

            Bot.StartReceiving();

            Console.ReadKey();

            Bot.StopReceiving();
        }
Exemplo n.º 2
0
        private SessionsClient CreateDialogflowSessionsClient(ScopeContext context)
        {
            var credential = GoogleCredential.FromFile(context.Parameters["JsonPath"]).CreateScoped(SessionsClient.DefaultScopes);

            var clientBuilder = new SessionsClientBuilder
            {
                ChannelCredentials = credential.ToChannelCredentials()
            };

            var client = clientBuilder.Build();

            return(client);
        }
Exemplo n.º 3
0
        private SessionsClient RegisterDialogflowSessionsClient(IComponentContext context)
        {
            var configuration = context.Resolve <DialogflowConfiguration>();

            var credential = GoogleCredential.FromFile(configuration.JsonPath).CreateScoped(SessionsClient.DefaultScopes);

            var clientBuilder = new SessionsClientBuilder
            {
                ChannelCredentials = credential.ToChannelCredentials()
            };

            var client = clientBuilder.Build();

            return(client);
        }
        private string GetAnswer(string messageText, string sessionId)
        {
            var builder = new SessionsClientBuilder();

            builder.CredentialsPath = @"D:\Projects\BananasAnanaserBot\df-access-key.json";
            var client       = builder.Build();
            var projectId    = configuration["ProjectId"];
            var languageCode = "ru-RU";
            var sessionName  = SessionName.FromProjectSession(projectId, sessionId);
            var queryInput   = new QueryInput
            {
                Text = new TextInput
                {
                    Text         = messageText,
                    LanguageCode = languageCode
                }
            };
            var response = client.DetectIntent(sessionName, queryInput);

            return(response.QueryResult.FulfillmentText);
        }