Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inmoov2 heart 2 #1418

Open
wants to merge 181 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
181 commits
Select commit Hold shift + click to select a range
829ccd1
model for aiml xml
supertick Jan 20, 2024
67bd304
InMoov gets a heart
supertick Jan 20, 2024
754bed4
jython worky with InMoov2.py
supertick Jan 20, 2024
ed459da
reset
supertick Jan 21, 2024
e0d1687
ordered and formatted
supertick Jan 21, 2024
6608cbc
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Jan 21, 2024
6838084
recovering from bad merge
supertick Jan 21, 2024
b5794f5
reset randomtest
supertick Jan 21, 2024
6e78370
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Jan 21, 2024
37a3795
finite state history
supertick Jan 21, 2024
a7c1b66
fixed fire fsm event
supertick Jan 21, 2024
b90bd80
requested updates
supertick Jan 21, 2024
d52153e
Merge branch 'programab-model' of github.com-myrobotlab:MyRobotLab/my…
supertick Jan 21, 2024
49633be
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 23, 2024
8d4fdb9
init scripts turned off
supertick Jan 24, 2024
0cb5905
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 24, 2024
8580e47
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 24, 2024
9aacb0b
publishStateChange vs onStateChange
supertick Jan 26, 2024
4c9e5e0
execScript()
supertick Jan 26, 2024
9a24b72
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 27, 2024
5bbdfe0
config utils
supertick Jan 28, 2024
565f9dd
set chatBot reference on startService added setup to fsm
supertick Jan 30, 2024
535d8d4
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 30, 2024
e3d774a
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 30, 2024
533eacb
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Jan 31, 2024
d2510bc
working processor action in servomixer
supertick Feb 1, 2024
b7ecaa8
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Feb 1, 2024
536279f
Merge branch 'servomixer-processing' of https://github.com/MyRobotLab…
supertick Feb 1, 2024
3398f8a
fix runtime.resource for tests
supertick Feb 2, 2024
557cd80
again
supertick Feb 2, 2024
0a3c81c
again
supertick Feb 2, 2024
ce82eb5
corrected wrong path
supertick Feb 2, 2024
a7f5fb1
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Feb 3, 2024
0483fb8
Subscription fixes in config - removal of hardcoded subscriptions
supertick Feb 4, 2024
135f12a
small runtime updates
supertick Feb 4, 2024
1332336
added test
supertick Feb 4, 2024
85dd347
Merge branch 'subscription-fix' of github.com-myrobotlab:MyRobotLab/m…
supertick Feb 4, 2024
2ea567e
trying to make idempotent test
supertick Feb 4, 2024
6996853
Merge branch 'subscription-fix' of github.com-myrobotlab:MyRobotLab/m…
supertick Feb 4, 2024
6a05071
npe check
supertick Feb 4, 2024
dcdab9b
finally ! fixed randomTest issue
supertick Feb 4, 2024
be739aa
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 5, 2024
2e8fdb5
javadoc updates to runtime config
supertick Feb 5, 2024
0c4ba80
guard against no runtime.xml
supertick Feb 5, 2024
beafe72
removed dependency test
supertick Feb 5, 2024
dbe67cf
fixing unit tests
supertick Feb 5, 2024
188b6fd
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 6, 2024
62aa007
config update
supertick Feb 6, 2024
139d01f
http client config
supertick Feb 6, 2024
7432266
synchronized
supertick Feb 9, 2024
202f364
Update CmdOptionsTest.java
supertick Feb 9, 2024
3dadcac
warn
supertick Feb 10, 2024
bff28fa
abstract test watcher
supertick Feb 10, 2024
e8603f9
transient processLock
supertick Feb 10, 2024
8adeb2f
clean threads
supertick Feb 10, 2024
d6c0831
cleaned up InMoov2 parts
supertick Feb 11, 2024
cc02708
clean random shutdown
supertick Feb 11, 2024
ab0141b
drupp neck config
supertick Feb 11, 2024
0bd316b
fixed so Runtime.release(name) and Service.releaseService(name) behav…
supertick Feb 11, 2024
cf9405c
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 11, 2024
3fb04c8
drupp merge
supertick Feb 11, 2024
b70114e
intermediate
supertick Feb 12, 2024
728c890
Merge branch 'heart-intermediate' of github.com-myrobotlab:MyRobotLab…
supertick Feb 12, 2024
9b4439a
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 12, 2024
abd63e2
javadoc and other small changes
supertick Feb 12, 2024
69013e5
framework updates
supertick Feb 12, 2024
46af60c
framework
supertick Feb 12, 2024
e895567
let framework process inmoov2 releaseService
supertick Feb 12, 2024
237a515
unit test updates
supertick Feb 13, 2024
95b3ddb
stop cli when runtime is released
supertick Feb 13, 2024
43fff16
corrected synchronization
supertick Feb 13, 2024
65542d0
corrected instance lock
supertick Feb 13, 2024
5182af0
adjusted location of sleep wait
supertick Feb 13, 2024
54f874b
shifted sleep position in randomtest
supertick Feb 13, 2024
8065ad4
config utils fix
supertick Feb 13, 2024
9428157
clean default config
supertick Feb 14, 2024
63c00ec
removed registering for new services from servo
supertick Feb 14, 2024
aa65ad3
webgui
supertick Feb 14, 2024
33a1be5
adding log service to scripts
supertick Feb 14, 2024
9a44b4f
Merge branch 'adding-log-service' of github.com-myrobotlab:MyRobotLab…
supertick Feb 14, 2024
77eac6e
simplifying randomtest
supertick Feb 14, 2024
1d9cb90
fixes and updates
supertick Feb 15, 2024
d17b530
Merge branch 'reduce-servo-complexity' of github.com-myrobotlab:MyRob…
supertick Feb 15, 2024
fae6053
nothing
supertick Feb 16, 2024
8673dda
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 16, 2024
402a527
servo.setMaxSpeed
supertick Feb 16, 2024
8601157
ignoring servo.setSpeed(speed <0)
supertick Feb 16, 2024
23988f8
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 16, 2024
11fefca
synching cpython javacpp and javacv versions to 15.8
supertick Feb 16, 2024
db9ccdd
removal of programab botdir
supertick Feb 17, 2024
b7c7a16
more non inmoov2 updates
supertick Feb 17, 2024
c6c2f14
re-adding deprecated ProgramAB.botDir
supertick Feb 17, 2024
4a69574
npe fix for runtime.apply(c)
supertick Feb 17, 2024
6e02e9f
npe fix for runtime.apply(c)
supertick Feb 17, 2024
76c8b00
updated javacpp to 1.5.8 and updated template
supertick Feb 17, 2024
5caf15d
synching javacpp 1.5.8 updating template
supertick Feb 17, 2024
46f2f27
syching javacpp 1.5.8 tesseract and deeplearning4j
supertick Feb 17, 2024
1851976
synching javacpp 1.5.8 with deeplearning4j and tesseract
supertick Feb 17, 2024
d7fad5a
changed imports on tesseract
supertick Feb 17, 2024
2e6c89c
changed imports on tesseract
supertick Feb 17, 2024
7290314
fixed test - was counting threads after new runtime started
supertick Feb 17, 2024
9e1710a
more unit test cleanup
supertick Feb 17, 2024
1fa4e62
requested fixes
supertick Feb 17, 2024
2dbde91
requested fixes
supertick Feb 17, 2024
a032e8e
channels for discordbot and programab
supertick Feb 18, 2024
cbd84fa
onerror added and log.publishErrors
supertick Feb 18, 2024
ac9884c
updates
supertick Feb 19, 2024
a63e083
removed adding system tray icon
supertick Feb 19, 2024
98a2428
removed onPeak info
supertick Feb 19, 2024
220a002
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 19, 2024
2b5823d
audiofile config playlist init
supertick Feb 20, 2024
72da4c5
updates
supertick Feb 20, 2024
7b0bfd0
updates
supertick Feb 22, 2024
814de15
fixed type
supertick Feb 22, 2024
db1f7d1
webgui
supertick Feb 22, 2024
7470e03
getWebImage
supertick Feb 22, 2024
f155d0a
small config update
supertick Feb 22, 2024
1cdc493
remotespeech
supertick Feb 24, 2024
8924641
updates
supertick Feb 24, 2024
87aa762
Merge branch 'remotespeech' of github.com-myrobotlab:MyRobotLab/myrob…
supertick Feb 24, 2024
c65f68b
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 24, 2024
2a3584a
randomtest update
supertick Feb 24, 2024
72add7b
missing service images
supertick Feb 24, 2024
2f7a4c9
Merge branch 'channel-only-responses' of github.com-myrobotlab:MyRobo…
supertick Feb 24, 2024
365f9d3
runtime update
supertick Feb 24, 2024
9f6e7ce
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 24, 2024
1298dbd
Merge branch 'jmonkey-updates' of github.com-myrobotlab:MyRobotLab/my…
supertick Feb 24, 2024
000ed4d
reverting bad git merge
supertick Feb 24, 2024
81c13b0
sliding window logs for py4j and python
supertick Feb 24, 2024
75d3da5
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 24, 2024
12375b0
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 24, 2024
e50e7ab
Merge branch 'inmoov2-intermediate-3' of github.com-myrobotlab:MyRobo…
supertick Feb 24, 2024
f963e3f
test last workflow
supertick Feb 28, 2024
53591c0
pull_request to push
supertick Feb 28, 2024
8376de1
excluding OpenCV tests from github build
supertick Feb 29, 2024
7f5e173
trying to filter out tests on the command line again
supertick Feb 29, 2024
a80364c
try filtering at command line again
supertick Feb 29, 2024
3ebe9b1
libgtk2.0-0 added to build
supertick Feb 29, 2024
df72ce3
java 18
supertick Feb 29, 2024
1e1143d
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 29, 2024
772ed38
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Feb 29, 2024
3b63f25
worky terminal manager
supertick Mar 2, 2024
ea1a1d4
added 2 more
supertick Mar 2, 2024
11457e6
updated openblas 1.5.8
supertick Mar 2, 2024
a36eba5
forgot img
supertick Mar 2, 2024
80f1034
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 5, 2024
45d7f8b
workyish tm
supertick Mar 6, 2024
419b6f7
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 7, 2024
107c742
bottom scroll
supertick Mar 9, 2024
075f5dd
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 9, 2024
0e5a9c3
locked in InMoov2.speakBlocking
supertick Mar 9, 2024
92d98a9
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 13, 2024
d391758
javadoc fixed
supertick Mar 13, 2024
9e3e6d2
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 20, 2024
a94466b
publish on change current session and synchronized
supertick Mar 21, 2024
e48cee1
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Mar 21, 2024
ac4edd4
java 11
supertick Mar 22, 2024
11e9cfc
Merge branch 'develop' of github.com-myrobotlab:MyRobotLab/myrobotlab…
supertick Apr 1, 2024
bedaad1
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 22, 2024
f09bf0e
removal of terminal stuff removed
supertick Apr 23, 2024
da6107c
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 25, 2024
3716a8e
starts setup
supertick Apr 26, 2024
fef9701
quick-audio-player-fixes
supertick Apr 26, 2024
6ed9606
full-feature-jukebox
supertick Apr 26, 2024
160fc16
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 27, 2024
8d8acb7
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 27, 2024
077f8b9
default disable InMoov2.py
supertick Apr 27, 2024
605a163
formatting
supertick Apr 27, 2024
3c92a56
removed terminalmanager
supertick Apr 27, 2024
3db1872
fixed white space
supertick Apr 27, 2024
65e760a
reformat vertx
supertick Apr 27, 2024
a8abb8d
reformat vertx
supertick Apr 27, 2024
0587f7d
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 27, 2024
58d0889
vertx formatting
supertick Apr 27, 2024
35704ac
finally formatting fixed
supertick Apr 27, 2024
868480a
audioPlayer and locales figured out
supertick Apr 28, 2024
43f7677
list
supertick Apr 28, 2024
e0dc67b
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 28, 2024
d0b492b
Merge branch 'develop' of https://github.com/MyRobotLab/myrobotlab in…
supertick Apr 30, 2024
46a3830
updated config
supertick Apr 30, 2024
ef8793a
updated with javadoc, timeout, and default
supertick May 1, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 5 additions & 6 deletions .github/build.yml → .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
name: Java CI

on:
# push:
pull_request:
push:
# pull_request:

jobs:
build:
Expand All @@ -13,7 +13,7 @@ jobs:
steps:
- uses: actions/checkout@v3

- name: Set up JDK 11
- name: Set up java
uses: actions/setup-java@v3

with:
Expand All @@ -23,12 +23,12 @@ jobs:
cache: "maven"

- name: Install Missing Dependencies
run: sudo apt-get install -y libv4l-0 libopencv-dev python3-opencv
run: sudo apt-get install -y libv4l-0 libopencv-dev python3-opencv libgtk2.0-0
supertick marked this conversation as resolved.
Show resolved Hide resolved

- name: Dependency Test # installs all dependencies
run: mvn test -Dtest=org.myrobotlab.framework.DependencyTest -q
- name: Build with Maven # currently cannot test opencv
run: mvn clean verify -q
run: mvn clean verify -q -Dtest=!org.myrobotlab.opencv.*
supertick marked this conversation as resolved.
Show resolved Hide resolved

- name: Get next version
uses: reecetech/[email protected]
Expand Down Expand Up @@ -84,4 +84,3 @@ jobs:
tag_name: ${{ steps.version.outputs.version }}
generate_release_notes: true
body_path: ./release-template.md

22 changes: 22 additions & 0 deletions TODO.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
## TODO

- neopixel when attached doesn't show the attached controller
- Implement robotCanMoveHeadWhileSpeaking with guards in a state (idle ?)
- Make list of Input yolo, camera cv filters, pir, finger sensors ... into a context - the context construct a prompt -> perception
- Convert all JukeBox or AudioFile.py to InMoov2
- Make LanguageModel
- Make ContextManager
- prompt - gets generated with system info, therby creating "perception" e.g. proximity sensor 2, classification human, position 30
, if a human is nearby assume its <star/> - can answer the question ... where are you ... ("you are just to the left of me")
- runtime should say what version java is running and warn if not valid
- lower volume or change boot up sound
- current config name doesn't show up in runtime
- initCheckUp.py isn't getting run
- peak is not working or implemented in the UI
- peak isn't default
- multiple sets of process id's on stale ui - fix by stablizing new randome one ?

## DONE

- a delete config button - should do a move to trash directory with a datetimestamp
- dot dot on Runtime... platform info is late, or doesn't get published should be x86 64
60 changes: 60 additions & 0 deletions src/main/java/org/myrobotlab/io/FileIO.java
Original file line number Diff line number Diff line change
Expand Up @@ -31,13 +31,15 @@
package org.myrobotlab.io;

import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URI;
import java.net.URL;
import java.nio.charset.Charset;
Expand All @@ -50,6 +52,7 @@
import java.util.Properties;
import java.util.Set;
import java.util.TreeMap;
import java.util.concurrent.TimeUnit;
import java.util.jar.Attributes;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;
Expand Down Expand Up @@ -1424,5 +1427,62 @@ public static String normalize(String dirPath) {
return dirPath.replace("\\", "/");
}
}

/**
* Checks if a specific executable command is available in the system.
* This function attempts to execute the command with a timeout of 3 seconds to ensure
* that the check does not hang indefinitely. The process is considered available
* if it can be started without throwing an exception and completes successfully
* within the specified timeout.
*
* @param command the command to check for availability.
* @return true if the command is available and completes successfully within the timeout, false otherwise.
*/

public static boolean isExecutableAvailable(String command) {
supertick marked this conversation as resolved.
Show resolved Hide resolved
return isExecutableAvailable(command, 3);
}

/**
* Checks if a specific executable command is available in the system.
* This function attempts to execute the command with a timeout to ensure
* that the check does not hang indefinitely. The process is considered available
* if it can be started without throwing an exception and completes successfully
* within the specified timeout.
*
* @param command the command to check for availability.
* @param timeoutSeconds the maximum time in seconds to wait for the command to complete.
* @return true if the command is available and completes successfully within the timeout, false otherwise.
*/
public static boolean isExecutableAvailable(String command, int timeoutSeconds) {
try {
// Attempt to execute the command
Process process = java.lang.Runtime.getRuntime().exec(command);

// Wait for the process to complete with a timeout
if (process.waitFor(timeoutSeconds, TimeUnit.SECONDS) && process.exitValue() == 0) {
return true;
}

// Read and log any errors from the attempted command
try (BufferedReader reader = new BufferedReader(new InputStreamReader(process.getErrorStream()))) {
String line;
while ((line = reader.readLine()) != null) {
log.info(line);
}
}

return false;
} catch (IOException e) {
log.info("IOException: " + e.getMessage());
return false;
} catch (InterruptedException e) {
log.info("InterruptedException: " + e.getMessage());
// Restore interrupted state
Thread.currentThread().interrupt();
return false;
}
}


}
Loading
Loading