Plugin Context Flow Charts - SemlerPDX/OpenAI-VoiceAttack-Plugin GitHub Wiki
graph TD;
id1{{ChatGPT}}-->GetInput;
GetInput-->Timeout;
Timeout-->ChatComplete;
GetInput-->UserInput;
GetInput-->ExistingCommand;
UserInput-->WhisperAudioToText;
UserInput-->SendInput;
WhisperAudioToText-->SendInput;
SendInput-->GetResponse;
SendInput-->ExistingCommand;
GetResponse-->ChatComplete;
GetResponse-->InternalResponders;
GetResponse-->ExternalResponder;
InternalResponders-->ChatComplete;
InternalResponders-->ExternalResponder;
ExternalResponder-->ChatComplete;
ExistingCommand-->ChatComplete;
ChatComplete-->id2[\PluginCallEnd/];
ChatComplete-->LoopSession;
LoopSession-->id1{{ChatGPT}};
LoopSession-->|Timeout|WaitForProfile;
WaitForProfile-->|''Hey VoiceAttack''|id1{{ChatGPT}};
| (return to context) | (table of contents) |
flowchart TD;
id1{{ChatGPT}}-->GetInput;
GetInput-->AlreadySet;
GetInput-->ProfileDictationStart;
GetInput-->PluginDictationStart;
ProfileDictationStart-->|*Bypass|StoreInput;
PluginDictationStart-->StoreInput;
StoreInput-->ProfileDictationStop;
StoreInput-->PluginDictationStop;
StoreInput-->|*Bypass|UserInput;
ProfileDictationStop-->UserInput;
PluginDictationStop-->UserInput;
AlreadySet-->UserInput;
UserInput-->WhisperTranscribe;
UserInput-->WhisperTranslate;
UserInput-->RawTextInput;
WhisperTranscribe-->SendInput;
WhisperTranslate-->SendInput;
RawTextInput-->SendInput;
| (return to context) | (table of contents) | (back to top) |
graph TD;
SendInput-->GetResponse;
GetResponse-->LogChat;
GetResponse-->SpeakChat;
GetResponse-->ExternalResponder;
GetResponse-->ChatComplete;
LogChat-->ChatComplete;
LogChat-->SpeakChat;
SpeakChat-->ChatComplete;
SpeakChat-->ExternalResponder;
ExternalResponder-->ChatComplete;
| (return to context) | (table of contents) | (back to top) |
graph TD;
id1{{ChatGPT}}-->GetInput;
GetInput-->OpenAI_TTS_PreListen;
GetInput-->SessionLooped/NotSet;
OpenAI_TTS_PreListen-->SendInput;
SessionLooped/NotSet-->SendInput;
SendInput-->OpenAI_TTS_PreProcess;
SendInput-->D[OpenAI_TTS_PreProcess=NotSet];
OpenAI_TTS_PreProcess-->GetResponse;
D-->GetResponse;
GetResponse-->|3-7sec|ReturnResponse;
ReturnResponse-->SpeakChat;
ReturnResponse-->E[SpeakChat=False];
SpeakChat-->ChatComplete;
E-->ChatComplete;
ChatComplete-->Wait/LoopSession;
Wait/LoopSession-->GetInput;
ChatComplete-->PluginCallEnd;
| (return to context) | (table of contents) | (back to top) |
graph TD;
id1{{ChatGPT.Raw}}-->HasInput;
HasInput-->SendInput;
SendInput-->EmptyInput;
EmptyInput-->Responded;
SendInput-->GetResponse;
GetResponse-->ExternalResponder;
GetResponse-->Responded;
ExternalResponder-->Responded;
Responded-->ChatComplete;
Responded-->WaitForProfile;
WaitForProfile-->ChatComplete;
ChatComplete-->PluginCallEnd;
ChatComplete-->LoopSession;
LoopSession-->HasInput;
| (return to context) | (table of contents) | (back to top) |


