private void loadSTTsButton_Click(object sender, EventArgs e) { FSM_STT mySTTCD = new FSM_STT("CDPLAYER", "TestFSM.ObjectModel", "Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"); STT_State beginState = mySTTCD.addState("Begin"); STT_State playState = mySTTCD.addState("Playing"); STT_State pauseState = mySTTCD.addState("Paused"); STT_State stoppedState = mySTTCD.addState("Stopped"); // Transitions beginState.addTransition("startPlaying", playState); beginState.addTransition("stop", stoppedState); playState.addTransition("pause", pauseState); playState.addTransition("stop", stoppedState); pauseState.addTransition("startPlaying", playState); pauseState.addTransition("stop", stoppedState); stoppedState.addTransition("startPlaying", playState); mySTTCD.setInitialState(beginState); Debug.WriteLine("FSMSTT create complete " + mySTTCD.getRefClassName()); // ACTOR FSM_STT mySTTACTOR = new FSM_STT("ACTOR", "TestFSM.ObjectModel", "Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"); STT_State inWingsState = mySTTACTOR.addState("InWings"); STT_State onStageState = mySTTACTOR.addState("OnStage"); STT_State driedState = mySTTACTOR.addState("Dried"); STT_State bowingState = mySTTACTOR.addState("Bowing"); STT_State endedState = mySTTACTOR.addState("Ended"); mySTTACTOR.setInitialState(inWingsState); mySTTACTOR.setDeleteWhenEndStateReached(); mySTTACTOR.setTaskModel(taskAllocation.taskPerInstance); // Transitions inWingsState.addTransition("receiveCue", onStageState); onStageState.addTransition("endOfScene", inWingsState); onStageState.addTransition("forgetLine", driedState); driedState.addTransition("getPrompt", onStageState); driedState.addTransition("endOfScene", inWingsState); inWingsState.addTransition("endOfPLay", bowingState); bowingState.addTransition("applauseStopped", endedState); bowingState.addTransition("applauseStopped", endedState); Debug.WriteLine("Form1 - FSMSTT create complete " + mySTTACTOR.getRefClassName()); this.initialiseSTTsListBox(); // list of STTs loaded in memory }
void Start() { m_headers = new Dictionary <string, string>(); m_headers["Authorization"] = string.Format("Bearer {0}", MY_TOKEN); m_headers["Content-Type"] = "application/json"; m_sttState = STT_State.Disconnected; UIBinding.OnModelName(MODEL_NAME); if (AutoConnect) { ConnectToStreamingServer(); } }
public void StopStreaming() { if (m_ws == null) { Debug.Log("Stream not connected."); return; } if (m_sttState == STT_State.Stopped) { return; } var stopStreaming = new StopStreamingPayload(); var msg = JsonUtility.ToJson(stopStreaming); m_ws.Send(msg); m_sttState = STT_State.Stopped; UIBinding.OnStreamingStopped(); }
public void ConnectToStreamingServer() { if (MY_TOKEN == string.Empty) { Debug.LogError("Token cannot be empty when trying to connect to the server."); return; } var wsUrl = string.Format( "wss://{0}/model/{1}/predict-rt?token={2}&interim=true&user_id={3}", API_BASE, MODEL_ID, MY_TOKEN, "username"); m_ws = new WebSocket(wsUrl); m_ws.OnOpen += (sender, e) => { Debug.Log("WebSocket connected"); m_sttState = STT_State.Stopped; UIBinding.OnWSConnected(); }; m_ws.OnMessage += (sender, e) => { var message = JsonUtility.FromJson <ServerToClientMessage>(e.Data); switch (message.type) { case "ready": { var streamingStatus = JsonUtility.FromJson <StreamingServerStatus>(e.Data); UIBinding.OnConnectionResult(streamingStatus); } break; case "failure": { var streamingStatus = JsonUtility.FromJson <StreamingServerStatus>(e.Data); UIBinding.OnConnectionResult(streamingStatus); Debug.LogErrorFormat("Server ({0}) not ready.", streamingStatus.id); } break; case "intent": { var rtPrediction = JsonUtility.FromJson <RealTimePredictionResult>(e.Data); UIBinding.OnReceivedRealtimeResult(rtPrediction); } break; } }; m_ws.OnError += (sender, e) => { Debug.LogErrorFormat("WebSocket Error {0}", e.Message); UIBinding.OnWSError(e.Message); }; m_ws.OnClose += (sender, e) => { Debug.Log("WebSocket Closed"); UIBinding.OnWSDisconnected(); }; m_ws.Connect(); }
private void WriteDifferentOnEntryMethodCode(FSM_STT theSTT, StringBuilder retVal, STT_State state) { retVal.Append(" // Method for Entry XXXXXX\n\n"); retVal.Append(" public void ").Append(state.getStateName()); retVal.Append("__onEntry(FSM_Event evt)\n"); retVal.Append(" {\n"); retVal.Append(" Debug.WriteLine( \""); retVal.Append(theSTT.getRefClassName()).Append(".").Append(state.getStateName()); retVal.Append("__onEntry() XXXXXXXXXExecuting in response to event \" + evt.getEventName());\n"); if (theSTT.getDeleteWhenEndStateReached() && state.getIsFinalState()) { retVal.Append(" // XXXXXXXXXXXdelete references as this is an end state and the STT demands it\n"); retVal.Append(" this.derefenceFSM();\n"); } retVal.Append(" }\n\n"); }