public string GetAntwort(string eingabe, GaitoBotSession session) { if (eingabe == null || eingabe.Trim() == "") { eingabe = "TARGET EMPTYINPUT"; } session.Denkprotokoll.Add(new BotDenkProtokollSchritt(eingabe, BotDenkProtokollSchritt.SchrittArten.Eingabe)); AntwortFinder antwortFinder = new AntwortFinder(this._normalisierung.StartupInfos.SatzTrenner.ToArray(), this._normalisierung, this._wissen, session, this._botEigenschaften, this._beiEinwortEingabenOhneMatchAufSraiOnlyOneWordUmleiten); List <AntwortSatz> list = antwortFinder.GetAntwortSaetze(eingabe); StringBuilder stringBuilder = new StringBuilder(); if (list == null) { session.Denkprotokoll.Add(new BotDenkProtokollSchritt(ResReader.Reader(session.DenkprotokollKultur).GetString("KonnteKeineGueltigeAntwortEreugen", session.DenkprotokollKultur), BotDenkProtokollSchritt.SchrittArten.Warnung)); list = new List <AntwortSatz>(); list.Add(new AntwortSatz(ResReader.Reader(this.LoggingKultur).GetString("NotfallAntwort", this.LoggingKultur), true)); } foreach (AntwortSatz item in list) { string[] array = item.Satz.Split('|'); foreach (string text in array) { GaitoBotSessionSchritt gaitoBotSessionSchritt = new GaitoBotSessionSchritt(); gaitoBotSessionSchritt.BotAusgabe = text; if (session.LetzterSchritt != null) { gaitoBotSessionSchritt.That = session.LetzterSchritt.BotAusgabe; } else { gaitoBotSessionSchritt.That = string.Empty; } gaitoBotSessionSchritt.Topic = session.AktuellesThema; gaitoBotSessionSchritt.UserEingabe = eingabe; session.AddSchritt(gaitoBotSessionSchritt); if (stringBuilder.Length != 0) { stringBuilder.Append(" "); } stringBuilder.Append(text); } } return(stringBuilder.ToString()); }
public string GetAntwort(string eingabe, GaitoBotSession session) { if (eingabe == null || eingabe.Trim() == "") { eingabe = "TARGET EMPTYINPUT"; } session.Denkprotokoll.Add(new BotDenkProtokollSchritt(eingabe, BotDenkProtokollSchritt.SchrittArten.Eingabe)); List <AntwortSatz> antwortSatzList = new AntwortFinder(this._normalisierung.StartupInfos.SatzTrenner.ToArray(), this._normalisierung, this._wissen, session, this._botEigenschaften, this._beiEinwortEingabenOhneMatchAufSraiOnlyOneWordUmleiten).GetAntwortSaetze(eingabe); StringBuilder stringBuilder = new StringBuilder(); if (antwortSatzList == null) { session.Denkprotokoll.Add(new BotDenkProtokollSchritt(ResReader.Reader(session.DenkprotokollKultur).GetString("KonnteKeineGueltigeAntwortEreugen", session.DenkprotokollKultur), BotDenkProtokollSchritt.SchrittArten.Warnung)); antwortSatzList = new List <AntwortSatz>(); antwortSatzList.Add(new AntwortSatz(ResReader.Reader(this.LoggingKultur).GetString("NotfallAntwort", this.LoggingKultur), true)); } foreach (AntwortSatz antwortSatz in antwortSatzList) { string satz = antwortSatz.Satz; char[] chArray = new char[1] { '|' }; foreach (string str in satz.Split(chArray)) { session.AddSchritt(new GaitoBotSessionSchritt() { BotAusgabe = str, That = session.LetzterSchritt == null ? string.Empty : session.LetzterSchritt.BotAusgabe, Topic = session.AktuellesThema, UserEingabe = eingabe }); if ((uint)stringBuilder.Length > 0U) { stringBuilder.Append(" "); } stringBuilder.Append(str); } } return(stringBuilder.ToString()); }