/// <summary> /// データベース初期化 /// </summary> /// <param name="mono">呼び出し元インスタンス</param> public static void Init(MonoBehaviour mono, DatabaseListener listener) { DbManager db = Instance; db.mListener = listener; mono.StartCoroutine(GetNewDbVersion(DB_VERSION_FILE_NAME)); }
public void Start() { AlwaysOnListener.RecognizeAsync(RecognizeMode.Multiple); DigitsListener.RecognizeAsync(RecognizeMode.Multiple); LettersListener.RecognizeAsync(RecognizeMode.Multiple); TeamListener.RecognizeAsync(RecognizeMode.Multiple); DatabaseListener.RecognizeAsync(RecognizeMode.Multiple); }
//MUST ENABLE THE BROKER TO GET GOING //ALTER DATABASE "database name" SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE ; public ActionResult GetData() { //by using listener method we manage a recursive ajax request DatabaseListener listen = new DatabaseListener(); listen.Listener(); //Should use the model for complex data IEnumerable <RssPage> list = context.RssPage.ToList(); return(PartialView(list)); }
/// <summary> /// 最新のDBバージョン取得完了通知 /// </summary> /// <param name="newDbVersion">最新のDBバージョン</param> private void OnGetNewDbVersion(int newDbVersion) { Debug.Log("MyDatabase start"); // DB更新フラグ bool isDbUpdate = false; // DBバージョン更新フラグ bool isDbVersionUpdate = false; // DBバージョン int oldDbVersion = UserData.DatabaseVersion; // DB保存先パス string dbPath = Path.Combine(Application.persistentDataPath, DB_NAME); // DB更新確認 checkDbUpdate(dbPath, oldDbVersion, newDbVersion, ref isDbUpdate, ref isDbVersionUpdate); if (isDbUpdate) { Debug.Log("MyDatabase create backup data"); // DBファイルの更新が必要な場合、古いDBファイルを別名で保存する string backupPath = Path.Combine(Application.persistentDataPath, BACKUP_DB_NAME); File.Copy(dbPath, backupPath, true); Debug.Log(backupPath); } // DBを読み込む mdb = new SqliteDatabase(DB_NAME, isDbUpdate || isDbVersionUpdate); if (isDbUpdate) { Debug.Log("MyDatabase marge backup data"); // 更新フラグが立っている時、古いDBから必要なデータを新しいDBに移行する SqliteDatabase backupDb = new SqliteDatabase(BACKUP_DB_NAME, false); // 各テーブルごとにマージ処理を行なう MargeData(backupDb); } if (isDbVersionUpdate) { Debug.Log("MyDatabase update db version " + oldDbVersion + " > " + newDbVersion); // DBバージョンを更新する UserData.DatabaseVersion = newDbVersion; UserData.Save(); } Debug.Log("MyDatabase end"); // 初期化完了通知 mListener.OnDatabaseInit(); mListener = null; }
public SpeechActivator() { DatabaseListener.LoadGrammar(new Grammar(new GrammarBuilder(DatabaseListenerChoices))); DatabaseListener.SpeechRecognized += (s, e) => { if (e.Result.Confidence < 0.70) { return; } OnRecognisedDatabase?.Invoke(this, new DatabaseSpeechCommandEventArgs(e.Result.Text)); }; DatabaseListener.SetInputToDefaultAudioStream(); TeamListener.LoadGrammar(new Grammar(new GrammarBuilder(TeamListenerChoices))); TeamListener.SpeechRecognized += (s, e) => { if (e.Result.Confidence < 0.70) { return; } OnRecognisedTeam?.Invoke(this, new TeamSpeechCommandEventArgs(e.Result.Text)); }; TeamListener.SetInputToDefaultAudioStream(); for (var i = 'а'; i <= 'я'; i++) { LettersListenerChoices.Add(i.ToString()); } var gb0 = new GrammarBuilder(LettersListenerChoices); LettersListener.LoadGrammar(new Grammar(gb0)); LettersListener.SpeechRecognized += (s, e) => { if (e.Result.Confidence < 0.70) { return; } OnRecognisedLetter?.Invoke(this, new LetterSpeechCommandEventArgs(e.Result.Text[0])); }; LettersListener.SetInputToDefaultAudioStream(); for (var i = 0; i <= 9; i++) { DigitsListenerChoices.Add(i.ToString()); } var gb1 = new GrammarBuilder(DigitsListenerChoices); DigitsListener.LoadGrammar(new Grammar(gb1)); DigitsListener.SpeechRecognized += (s, e) => { if (e.Result.Confidence < 0.70) { return; } OnRecognisedDigit?.Invoke(this, new DigitsSpeechCommandEventArgs(int.Parse(e.Result.Text))); }; DigitsListener.SetInputToDefaultAudioStream(); var gb2 = new GrammarBuilder { Culture = Russian }; gb2.Append(AlwaysOnListenerChoices); AlwaysOnListener.LoadGrammar(new Grammar(gb2)); AlwaysOnListener.SpeechRecognized += (s, e) => { if (e.Result.Confidence < 0.70) { return; } switch (e.Result.Text) { case "айбанк карты": OnRecognisedMain?.Invoke(this, new MainSpeechCommandEventArgs(MainSpeechCommands.Card)); break; case "айбанк команды": OnRecognisedMain?.Invoke(this, new MainSpeechCommandEventArgs(MainSpeechCommands.Team)); break; case "айбанк бд": case "айбанк база": case "айбанк база данных": OnRecognisedMain?.Invoke(this, new MainSpeechCommandEventArgs(MainSpeechCommands.Database)); break; } }; AlwaysOnListener.SetInputToDefaultAudioStream(); }
public DatabaseController(string path) { _path = path; _databaseListener = new DatabaseListener(); _databaseManager = new DatabaseManager(path); }