testCommand.js 2.31 KB
import { event } from '@wisdom-utils/utils'
import { Utils , CloseSessionDirective , Directive } from './core'

const testText = text =>
  new Promise((resolve, reject) => {
    setTimeout(() => {
      event.emit('aiSound:frame', {
        resultTextTemp: text,
      });
      setTimeout(() => {
        event.emit('aiSound:finish', {
          resultText: text,
        });
        setTimeout(() => {
          resolve();
        }, 500);
      }, 500);
    }, 500);
  });

const testFrameText = (text) => {
  let timer = null , _text = "" , index = 0
  const closeSessionDirective = new Directive({
    directiveTypes : [CloseSessionDirective]
  })
  return new Promise((resolve , reject) => {
    timer = setInterval(() => {
      _text += text.charAt(index)
      event.emit("aiSound:frame", {
        resultTextTemp : _text
      })
      if(closeSessionDirective.parse({
        text : _text
      })) {
        return testFinishText({resolve , text : _text , timer})
      }
      if(index == text.length) {
        return testFinishText({resolve , text, timer})
      }
      index++
    }, 100)
  })  
}

const testFinishText = ({resolve , text , timer}) => {
  clearInterval(timer)
  setTimeout(() => {
    event.emit('aiSound:finish', {
      resultText: text,
    });
    resolve()
  }, 500)
}


const testCommand = async () => {
  await Utils.delayTime(500);
  // await testText("打开泵站。")
  // await testText("打开第2个。")
  // await testText("打开铁山全景图菜单。")
  // await testText("打开顺平全景图菜单。")
  // await testText("关闭全景图菜单。")
  // await testText("关闭第1个。");
  // await testFrameText("打开铁山全景图菜单,结束对话,哈喽哈喽。")
  // await testFrameText("我需要测试熊猫测试指令")
  // await Utils.delayTime(5000)
  // event.emit('aiSound:frame', {
  //   resultTextTemp: "打开铁山全景图菜单,结束对话,哈喽哈喽。",
  // });
  // await testFrameText("熊猫智慧水务解决方案是什么")
  // await Utils.delayTime(6000)
  // await testFrameText(" 关闭当前他的。")
  await testFrameText("今天武汉天气怎么样")
  // await  testFrameText("熊猫智慧水务解决方案是什么")
  // await Utils.delayTime(6000)
  // await testFrameText("我需要测试熊猫测试指令")
}

export default testCommand