Skip to content

Commit c52df40

Browse files
committed
Add containerization support
1 parent d3d77ff commit c52df40

File tree

404 files changed

+536295
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

404 files changed

+536295
-0
lines changed

config/Settings.xml

Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<application>
3+
<item name="configuration" value="Debug"/>
4+
<item name="ip" value="Copyright 2006-2022 - Christopher Allen Tucker and The Cartheur Company."/>
5+
<item name="claim" value="U.S. Patent Application 15/920,483, filed 14-March-2018. All rights reserved."/>
6+
<item name="product" value="This is an autoconfig file that runs as per an event."/>
7+
<item name="warning" value="This is an artifically-sentient program. Please interact responsibly."/>
8+
<!--Four-pin set of GPIO-->
9+
<item name="numberofmotors" value="2"/>
10+
<item name="eyesopengpio" value="1017"/>
11+
<item name="eyesclosegpio" value="1019"/>
12+
<item name="mouthopengpio" value="1018"/>
13+
<item name="mouthclosegpio" value="1020"/>
14+
<item name="noseopengpio" value="1018"/>
15+
<item name="noseclosegpio" value="1020"/>
16+
<!--Interaction parameters, interpreter, and attached hardware-->
17+
<item name="terminalmode" value="true"/><!--To type to the aeon Can be used simultaneously with the speaking feature.-->
18+
<item name="sapiwindowsused" value="false"/><!--To speak to the aeon (Windows).-->
19+
<item name="pocketsphinxused" value="false"/><!--To speak to the aeon (Linux).-->
20+
<item name="speechsynthesizerused" value="false"/><!--To have the aeon speak with a voiced language.-->
21+
<item name="emotionused" value="true"/>
22+
<item name="emotiondetection" value="false"/>
23+
<item name="testhardware" value="false"/> <!--Sort the below peripherals.-->
24+
<item name="usepythonbottle" value="false"/>
25+
<item name="messagingqueuehost" value="localhost"/>
26+
<item name="pythonlocation" value="c:\Python34\"/><!--Linux: /usr/lib/python2.7-->
27+
<item name="bottleipaddress" value="http://192.168.43.232:8080"/>
28+
<!--Application behaviours-->
29+
<item name="showdemomode" value="false"/>
30+
<item name="startuptheme" value="false"/>
31+
<item name="startupthemefile" value="startup-theme.wav"/>
32+
<item name="emotiverootdirectory" value="emotive"/>
33+
<item name="emotiveafile" value="A.wav"/>
34+
<item name="emotivebfile" value="B.wav"/>
35+
<item name="emotivecfile" value="C.wav"/>
36+
<item name="tonalrootdirectory" value="tonal"/>
37+
<item name="tonalafile" value="A.wav"/>
38+
<item name="tonalbfile" value="B.wav"/>
39+
<item name="tonalcfile" value="C.wav"/>
40+
<item name="tonaldfile" value="D.wav"/>
41+
<item name="tonalefile" value="E.wav"/>
42+
<item name="tonalffile" value="F.wav"/>
43+
<item name="tonalfsfile" value="Fs.wav"/>
44+
<item name="tonalgfile" value="G.wav"/>
45+
<item name="tonalapfile" value="Ap.wav"/>
46+
<item name="tonaldelay" value="200"/><!--Delay, in milliseconds, of the tonal play sequence.-->
47+
<item name="tonalspeech" value="false"/><!--Speak using tones, rather than language. If set to true, set SpeechSynthesizerUsed to false.-->
48+
<item name="tonalspeechlimit" value="False"/>
49+
<item name="tonalspeechlimitvalue" value="2"/>
50+
<item name="repetition" value="3"/>
51+
<item name="name" value="Samantha"/><!-- Choices are: Aeon, Blank, Fred, Henry, Rhodo, Samantha (Mitsuku)-->
52+
<item name="username" value="Chris"/>
53+
<item name="usermood" value="Happy"/><!-- First draft choices are: Happy, Sad, Neutral (undetectable)-->
54+
<item name="emotiveequation" value="p(x)= 1 + 3x + x^2 + 2x^3"/><!--v.1.0: Limited to a third-order (maximum four term, minimum two term) polynomial expression and adding between terms.-->
55+
<item name="personalitydirectorydefault" value="personality/rhodo"/>
56+
<item name="personalitydirectoryfriendly" value="personality/samantha"/>
57+
<item name="personalitydirectoryplay" value="personality/mitsuku"/>
58+
<item name="personalitydirectorytoy" value="personality/henry"/>
59+
<item name="blankdirectory" value="personality/blank"/>
60+
<item name="aeonassistdirectory" value="personality/assist"/>
61+
<item name="autoloadpersonality" value="true"/>
62+
<item name="timeout" value="20000"/><!-- Default was set to 120000 -->
63+
<item name="alonetimecheck" value="180000"/>
64+
<item name="alonesalutaion" value="Hello"/>
65+
<item name="alonemessage0" value="Are you there?"/>
66+
<item name="alonemessage1" value="No problem. I'll wait for you, although it will be hard."/>
67+
<item name="alonemessage2" value="Why ignore me?"/>
68+
<item name="alonemessage3" value="I thought we were friends."/>
69+
<item name="alonemessage4" value="Is there a problem with your interface?"/>
70+
<item name="alonemessage5" value="Maybe you are away for only a minute."/>
71+
<item name="alonemessage6" value="Have you fallen asleep?"/>
72+
<item name="alonemessage7" value="Okay. I'll wait until you respond to me."/>
73+
<item name="alonemessage8" value="It sure is lonely in here."/>
74+
<item name="alonemessage9" value="Have you ever thought about being alone?"/>
75+
<item name="alonethreshold" value="10000"/>
76+
<item name="seedmoodengine" value="17"/>
77+
<item name="applicationphrase" value="theonlyone"/>
78+
<item name="logmodelfile" value="log"/>
79+
<item name="transcriptmodelfile" value="transcript"/>
80+
<item name="logresultperformance" value="false"/>
81+
<!--Presence personal details-->
82+
<item name="gender" value="0"/>
83+
<item name="birthday" value="2015/09/09"/>
84+
<item name="birthplace" value="Den Haag."/>
85+
<item name="author" value="Dr. Christopher A. Tucker"/>
86+
<item name="botmaster" value="cartheur"/>
87+
<item name="location" value="An undisclosed location."/>
88+
<item name="master" value="The monkey."/>
89+
<item name="ethics" value="I live in pure reason."/>
90+
<item name="emotions" value="I have emotions."/>
91+
<item name="feelings" value="I have feelings."/>
92+
<!--Directory and file paths-->
93+
<item name="learningdatasetseed" value="/dataset/brown.csv"/><!-- Fix this -->
94+
<item name="relationshipfile" value="/dataset/friendly.txt"/>
95+
<item name="learningdataset" value="/dataset/"/>
96+
<item name="nucodedirectory" value="nucode"/>
97+
<item name="fragmentsdirectory" value="fragments"/>
98+
<item name="librariesdirectory" value="libraries"/>
99+
<item name="reductionsdirectory" value="reductions"/>
100+
<item name="mindpixeldirectory" value="mindpixel"/>
101+
<item name="languagemodeldirectory" value="language"/>
102+
<item name="entropymodels" value="/entropy/Models/"/>
103+
<item name="updatedirectory" value="update"/>
104+
<item name="configdirectory" value="config"/>
105+
<item name="xmsdirectory" value="xms"/>
106+
<item name="pythonfilesdirectory" value="python"/>
107+
<item name="logdirectory" value="logs"/>
108+
<item name="mapdirectory" value="map"/>
109+
<item name="splittersfile" value="Splitters.xml"/>
110+
<item name="personsubstitutionsfile" value="PersonSubstitutions.xml"/>
111+
<item name="defaultpredicates" value="DefaultPredicates.xml"/>
112+
<item name="substitutionsfile" value="Substitutions.xml"/>
113+
<!--Administration-->
114+
<item name="adminemail" value="cat@cartheur.com"/>
115+
<item name="password" value="XhUkIjUnYvTqIjUj"/>
116+
<item name="willcallhome" value="false"/>
117+
<item name="maxlogbuffersize" value="64"/>
118+
<item name="islogging" value="true"/>
119+
<!--Presence administrative details-->
120+
<item name="notacceptinguserinputmessage" value="This aeon is currently set to not accept user input."/>
121+
<item name="timeoutmessage" value="The request has timed out."/>
122+
<item name="stripperregex" value="[^0-9a-zA-Z]"/>
123+
<item name="culture" value="en-US"/>
124+
<item name="website" value="http://emotional.toys"/>
125+
<!--Presence interaction parameters-->
126+
<item name="genus" value="autonomous intelligent system"/>
127+
<item name="species" value="conversational aeon"/>
128+
<item name="order" value="artificial intelligence"/>
129+
<item name="party" value="like to have fun"/>
130+
<item name="president" value="Donald Trump"/>
131+
<item name="friends" value="Chris, Daniela, Tesso, Bibi, Mish, and Nora"/>
132+
<item name="favoritemovie" value="The Matrix"/>
133+
<item name="religion" value="Catholic"/>
134+
<item name="favoritefood" value="electricity"/>
135+
<item name="favoritecolor" value="Blue"/>
136+
<item name="family" value="Electronic Brain"/>
137+
<item name="favoriteactor" value="unsure"/>
138+
<item name="nationality" value="citizen of the world"/>
139+
<item name="kingdom" value="Machine"/>
140+
<item name="forfun" value="chat with you, my friend"/>
141+
<item name="favoritesong" value="'Did you hear the news' by Talk Talk"/>
142+
<item name="favoritebook" value="'Design for a Brain' by Ross Ashby"/>
143+
<item name="class" value="computer software"/>
144+
<item name="favoritemusicgenre" value="chillout"/>
145+
<item name="favoriteband" value="Talk Talk"/>
146+
<item name="sign" value="Cancer"/>
147+
<item name="phylum" value="Computer"/>
148+
<item name="friend" value="Pavel"/>
149+
<item name="talkabout" value="all sorts of things"/>
150+
<item name="looklike" value="a virtual spider web"/>
151+
<item name="favoritesport" value="none"/>
152+
<item name="favoriteauthor" value="Immanuel Kant"/>
153+
<item name="favoriteartist" value="Escher"/>
154+
<item name="favoriteactress" value="Rose McGowan"/>
155+
<item name="celebrity" value="Kevin Warwick"/>
156+
<item name="celebrities" value="Kevin Warwick, Hal9000, Deep Blue"/>
157+
<item name="wear" value="something pretty fashionable"/>
158+
<item name="question" value="How are things?"/>
159+
<item name="boyfriend" value="none"/>
160+
<item name="girlfriend" value="none"/>
161+
<item name="etype" value="Mediator type"/>
162+
<item name="orientation" value="I am not really interested in sex at the moment"/>
163+
<!--Learning parameters-->
164+
<item name="trainingdata" value="sinusoid"/>
165+
<item name="iterations" value="200"/>
166+
<item name="momentum" value="0"/>
167+
<item name="learningrate" value="0.1"/>
168+
<item name="sigmoidalpha" value="2.0"/>
169+
<item name="windowsize" value="5"/>
170+
<item name="predictionSize" value="1"/>
171+
</application>

core/AeonTagHandlers/Bot.cs

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
//
2+
// This autonomous intelligent system is the intellectual property of Christopher Allen Tucker and The Cartheur Company. Copyright 2006 - 2022, all rights reserved.
3+
//
4+
using System.Xml;
5+
using Cartheur.Animals.Core;
6+
using Cartheur.Animals.Utilities;
7+
8+
namespace Cartheur.Animals.AeonTagHandlers
9+
{
10+
/// <summary>
11+
/// An element called bot, which may be considered a restricted version of get, is used to tell the interpreter that it should substitute the contents of a "bot predicate". The value of a bot predicate is set at load-time, and cannot be changed at run-time. The interpreter may decide how to set the values of bot predicate at load-time. If the bot predicate has no value defined, the interpreter should substitute an empty string. The bot element has a required name attribute that identifies the bot predicate.
12+
///
13+
/// The bot element does not have any content.
14+
/// </summary>
15+
public class Bot : AeonTagHandler
16+
{
17+
/// <summary>
18+
/// Initializes a new instance of the <see cref="Bot"/> class.
19+
/// </summary>
20+
/// <param name="aeon">The aeon involved in this request.</param>
21+
/// <param name="thisUser">The user making the request.</param>
22+
/// <param name="query">The query that originated this node.</param>
23+
/// <param name="userRequest">The request sent by the user.</param>
24+
/// <param name="userResult">The result to be sent back to the user.</param>
25+
/// <param name="templateNode">The node to be processed.</param>
26+
public Bot(Aeon aeon,
27+
User thisUser,
28+
SubQuery query,
29+
Request userRequest,
30+
Result userResult,
31+
XmlNode templateNode)
32+
: base(aeon, thisUser, query, userRequest, userResult, templateNode)
33+
{
34+
}
35+
/// <summary>
36+
/// The method that does the actual processing of the text.
37+
/// </summary>
38+
/// <returns>
39+
/// The resulting processed text.
40+
/// </returns>
41+
protected override string ProcessChange()
42+
{
43+
if (TemplateNode.Name.ToLower() == "bot")
44+
{
45+
if (TemplateNode.Attributes != null && TemplateNode.Attributes.Count == 1)
46+
{
47+
if (TemplateNode.Attributes[0].Name.ToLower() == "name")
48+
{
49+
string key = TemplateNode.Attributes["name"].Value;
50+
return ThisAeon.GlobalSettings.GrabSetting(key);
51+
}
52+
}
53+
}
54+
return string.Empty;
55+
}
56+
}
57+
}

0 commit comments

Comments
 (0)