Aida-chiyo-Talk-app

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 056ba3bf2c4f0057cd5b1c72e6a1495a46895235
parent 1f1cd19bf884066cfa894c4c098af1a661d8badd
Author: Minerva-Juppiter <ryouturn@gmail.com>
Date:   Mon, 31 Jul 2023 10:42:17 +0900


Diffstat:
AMainController.cs | 34++++++++++++++++++++++++++++++++++
MProgram.cs | 16+++-------------
MTalkEngine.cs | 42+++++++++++++++++++++++++++++++++++++++---
3 files changed, 76 insertions(+), 16 deletions(-)

diff --git a/MainController.cs b/MainController.cs @@ -0,0 +1,34 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Aida_chiyo_Talk_app +{ + internal class MainController + { + public void MainCon() + { + //wakeup + Console.WriteLine("We have woke up."); + Console.WriteLine("Input someting you like."); + + //Let's talk + while (true) + { + Talkcon(); + } + } + public void Talkcon() + { + Inputs inputs = new Inputs(); + string input = inputs.InputConsole(); + + TalkEngine talkEngine = new TalkEngine(); + string answer = talkEngine.CallTalkAPI(input).ToString(); + + Console.WriteLine(answer); + } + } +} diff --git a/Program.cs b/Program.cs @@ -1,15 +1,5 @@ // See https://aka.ms/new-console-template for more information using Aida_chiyo_Talk_app; -Console.WriteLine("Hello, now we are waking up..."); - -Console.WriteLine("We have woke up."); -Console.WriteLine("Input someting you like."); - -Inputs inputs = new Inputs(); -string input = inputs.InputConsole(); - -TalkEngine talkEngine = new TalkEngine(); -string answer = talkEngine.CallTalkAPI(input).ToString(); - -Console.WriteLine(answer);- \ No newline at end of file +MainController mainController = new MainController(); +mainController.MainCon();+ \ No newline at end of file diff --git a/TalkEngine.cs b/TalkEngine.cs @@ -20,15 +20,30 @@ namespace Aida_chiyo_Talk_app internal class TalkEngine { string answer = string.Empty; + /*ChatGPT string APIkey = "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"; - string talkAPIkey = "DZZqpz3HVnJL4LGk57u8ZfmgfAIjrB3B"; + */ + + /*A3rt系統 string APIurl = "https://api.a3rt.recruit.co.jp/talk/v1/smalltalk"; + string talkAPIkey = "DZZqpz3HVnJL4LGk57u8ZfmgfAIjrB3B"; + */ + + //mibo + string APIurl = "https://api-mebo.dev/api"; + string talkAPIkey = "7626250d-bd09-45c4-ac83-a54848e692ba189a96ad2df2a8"; + string AgentID = "2a49a388-d706-4116-8f0b-6a7a660f667b189a9680a98e9"; public string CallTalkAPI(string input) { + //文字列をUTF-8にエンコード byte[] bytesData = System.Text.Encoding.UTF8.GetBytes(input); Encoding utf8Enc = Encoding.GetEncoding("UTF-8"); string utf = utf8Enc.GetString(bytesData); + + Console.WriteLine("We are calling API"); + + //API呼び出し var task = talkAPI(talkAPIkey,APIurl,utf); while (task.IsCompletedSuccessfully == false) { @@ -43,12 +58,13 @@ namespace Aida_chiyo_Talk_app // POST メソッドで JSON の Body のリクエストを投げる var response = await client.PostAsJsonAsync( apiurl, - new RequestBody { apikey = apikey , query = input} ); + //new RequestBody { apikey = apikey , query = input} ); + new RequestBody { api_key = apikey, agent_id = AgentID, utterance = input }); // レスポンスのステータスコードが成功していたら Answer の値を出力 if (response.IsSuccessStatusCode) { var responseBody = await response.Content.ReadFromJsonAsync<Response>(); - Console.WriteLine(responseBody?.status); + Console.WriteLine(responseBody?.utterance); } else { @@ -57,6 +73,25 @@ namespace Aida_chiyo_Talk_app } } + + class RequestBody + { + public string? api_key { get; set; } + public string? agent_id { get; set; } + public string? utterance { get; set; } + } + + class Response + { + public string? utterance { get; set; } + public string? options { get;set; } + public string? topic { get; set; } + public string? imageUrl { get; set; } + public string? url { get; set; } + public string? isAutoResponse { get; set; } + + } + /*A3rt系統 class RequestBody { public string? apikey { get; set; } @@ -70,4 +105,5 @@ namespace Aida_chiyo_Talk_app public string? message { get; set; } public string? results { get; set; } } + */ }