Skip to content

Commit

Permalink
Merge branch 'TimeOut-für-das-Adminmenü-by-Thomas-Lehnert' of git://g…
Browse files Browse the repository at this point in the history
…ithub.com/GuteLaune/TonUINO into GuteLaune-TimeOut-für-das-Adminmenü-by-Thomas-Lehnert
  • Loading branch information
tenbaht committed Nov 20, 2020
2 parents b34a3c4 + 45c2a9f commit fdc4172
Showing 1 changed file with 126 additions and 66 deletions.
192 changes: 126 additions & 66 deletions Tonuino.ino
Original file line number Diff line number Diff line change
Expand Up @@ -1428,101 +1428,161 @@ uint8_t voiceMenu(int numberOfOptions, int startMessage, int messageOffset,
bool preview = false, int previewFromFolder = 0, int defaultValue = 0, bool exitWithLongPress = false) {
uint8_t returnValue = defaultValue;
if (startMessage != 0)
mp3.playMp3FolderTrack(startMessage);
Serial.print(F("=== voiceMenu() ("));
Serial.print(numberOfOptions);
Serial.println(F(" Options)"));
do {
if (Serial.available() > 0) {
int optionSerial = Serial.parseInt();
if (optionSerial != 0 && optionSerial <= numberOfOptions)
return optionSerial;
}
readButtons();
mp3.loop();
if (pauseButton.pressedFor(LONG_PRESS)) {
mp3.playMp3FolderTrack(802);
ignorePauseButton = true;
checkStandbyAtMillis();
return defaultValue;
}
if (pauseButton.wasReleased()) {
if (returnValue != 0) {
Serial.print(F("=== "));
Serial.print(returnValue);
Serial.println(F(" ==="));
return returnValue;
}
delay(1000);
}
mp3.playMp3FolderTrack(startMessage);
Serial.print(F("=== voiceMenu() ("));
Serial.print(numberOfOptions);
Serial.println(F(" Options)"));

unsigned long AdmTimeOut = 0;
unsigned long SollAdmTimeOut = 5*60000; // Vorgabe der AdmTimeOut Zeit in millisekunden , Die 5 ist dieZeit in Minuten
AdmTimeOut = millis();
Serial.print(F("AdmTimeOut :"));
Serial.println(SollAdmTimeOut);
do
{
//Serial.println((millis() - AdmTimeOut));
if((millis() - AdmTimeOut) >= SollAdmTimeOut)
{
Serial.println(F("TimeOut"));
mp3.playMp3FolderTrack(802); //802- "OK, ich habe den Vorgang abgebrochen.
//ignorePauseButton = true;
setstandbyTimer();
return defaultValue;
}


if (Serial.available() > 0)
{
int optionSerial = Serial.parseInt();
if (optionSerial != 0 && optionSerial <= numberOfOptions)
return optionSerial;
}


readButtons();
mp3.loop();

if (pauseButton.pressedFor(LONG_PRESS)) // Abbruch
{
mp3.playMp3FolderTrack(802); //802- "OK, ich habe den Vorgang abgebrochen.
ignorePauseButton = true;
setstandbyTimer();
return defaultValue;
}
if (pauseButton.wasReleased())
{
if (returnValue != 0)
{
AdmTimeOut = millis();
Serial.print(F("=== "));
Serial.print(returnValue);
Serial.println(F(" ==="));
return returnValue;
}
delay(1000);
}

if (upButton.pressedFor(LONG_PRESS)) {
returnValue = min(returnValue + 10, numberOfOptions);
if (upButton.pressedFor(LONG_PRESS))
{
AdmTimeOut = millis();
returnValue = min(returnValue + 10, numberOfOptions); // 10 Schritte hoch
Serial.println(returnValue);
//mp3.pause();
mp3.pause();
mp3.playMp3FolderTrack(messageOffset + returnValue);
waitForTrackToFinish();
/*if (preview) {

//************preview 10-er Schritt** vorwärts **************

if (preview)
{
if (previewFromFolder == 0)
mp3.playFolderTrack(returnValue, 1);
else
mp3.playFolderTrack(previewFromFolder, returnValue);
}*/
}

ignoreUpButton = true;
} else if (upButton.wasReleased()) {
if (!ignoreUpButton) {
}
else if (upButton.wasReleased())
{
AdmTimeOut = millis();
if (!ignoreUpButton)
{
returnValue = min(returnValue + 1, numberOfOptions);
Serial.println(returnValue);
//mp3.pause();
mp3.pause();
mp3.playMp3FolderTrack(messageOffset + returnValue);
if (preview) {
if (preview)
{
waitForTrackToFinish();
if (previewFromFolder == 0) {
if (previewFromFolder == 0)
{
mp3.playFolderTrack(returnValue, 1);
} else {
mp3.playFolderTrack(previewFromFolder, returnValue);
}
else
{
mp3.playFolderTrack(previewFromFolder, returnValue);
}
delay(1000);
}
delay(1000);
}
} else {
}
else
{
ignoreUpButton = false;
}
}
}

if (downButton.pressedFor(LONG_PRESS)) {
returnValue = max(returnValue - 10, 1);
if (downButton.pressedFor(LONG_PRESS))
{
AdmTimeOut = millis();
returnValue = max(returnValue - 10, 1); // 10 Schritte zurück
Serial.println(returnValue);
//mp3.pause();
mp3.pause();
mp3.playMp3FolderTrack(messageOffset + returnValue);
waitForTrackToFinish();
/*if (preview) {

//************preview 10-er Schritt* zurück ***************

if (preview)
{
if (previewFromFolder == 0)
mp3.playFolderTrack(returnValue, 1);
else
mp3.playFolderTrack(previewFromFolder, returnValue);
}*/
}


ignoreDownButton = true;
} else if (downButton.wasReleased()) {
if (!ignoreDownButton) {
returnValue = max(returnValue - 1, 1);
Serial.println(returnValue);
//mp3.pause();
mp3.playMp3FolderTrack(messageOffset + returnValue);
if (preview) {
waitForTrackToFinish();
if (previewFromFolder == 0) {
mp3.playFolderTrack(returnValue, 1);
}
else {
}
else if (downButton.wasReleased())
{
AdmTimeOut = millis();
if (!ignoreDownButton)
{
returnValue = max(returnValue - 1, 1);
Serial.println(returnValue);
mp3.pause();
mp3.playMp3FolderTrack(messageOffset + returnValue);
if (preview)
{
waitForTrackToFinish();
if (previewFromFolder == 0)
{
mp3.playFolderTrack(returnValue, 1);
}
else
{
mp3.playFolderTrack(previewFromFolder, returnValue);
}
}
delay(1000);
}
} else {
ignoreDownButton = false;
}
}
else
{
ignoreDownButton = false;
}
}
}
} while (true);
} while (true);
}

void resetCard() {
Expand Down

0 comments on commit fdc4172

Please sign in to comment.