{"version":3,"file":"speech_awstranscriber.min.js","sources":["../src/speech_awstranscriber.js"],"sourcesContent":["/* jshint ignore:start */\ndefine(['jquery', 'core/log'], function ($, log) {\n\n    \"use strict\"; // jshint ;_;\n\n    log.debug('aws_instant: initialising');\n\n    return {\n\n        final_transcript: '',\n        start_timestamp: 0,\n        transcriber: null,\n\n\n        //for making multiple instances\n        clone: function () {\n            return $.extend(true, {}, this);\n        },\n\n        will_work_ok: function(opts){\n            var ret = false;\n\n            //The instance languages\n            switch(opts['language']){\n                case 'en-AU':\n                case 'en-GB':\n                case 'en-US':\n                case 'es-US':\n                case 'fr-FR':\n                case 'fr-CA':\n                    ret =true;\n                    break;\n                default:\n                    ret = false;\n            }\n\n            //The supported regions\n            if(ret) {\n                switch (opts['region']) {\n                    case \"useast1\":\n                    case \"useast2\":\n                    case \"uswest2\":\n                    case \"sydney\":\n                    case \"dublin\":\n                    case \"ottawa\":\n                        ret =true;\n                        break;\n                    default:\n                        ret = false;\n                }\n            }\n            return ret;\n        },\n\n\n        init: function (opts) {\n            var that = this;\n            //require(['http://localhost/moodle/local/cpapi/cloudpoodll/amd/build/awstranscriber.min.js'],function(transcriber){\n            require(['https://cdn.jsdelivr.net/gh/justinhunt/cloudpoodll@latest/amd/build/awstranscriber.min.js'],function(transcriber){\n                that.transcriber = transcriber;\n                opts['expiretime'] = 300;\n                opts['token'] = opts['wstoken'];\n                opts['wsserver'] = M.cfg.wwwroot;\n                that.transcriber.init(opts);\n                that.register_events();\n            });\n\n            //init streaming transcriber\n            /*\n            var opts = {};\n            opts['language'] = lang;\n            opts['region'] = app.props.region;\n            opts['token'] = app.props.token;\n            opts['parent'] = app.props.parent;\n            opts['owner'] = app.props.owner;\n            opts['appid'] = app.props.appid;\n            opts['expiretime'] = app.props.expiretime;\n            */\n\n\n        },\n\n        set_grammar: function (grammar) {\n            /*\n            var SpeechGrammarList = SpeechGrammarList || webkitSpeechGrammarList;\n            if (SpeechGrammarList) {\n                var speechRecognitionList = new SpeechGrammarList();\n                speechRecognitionList.addFromString(grammar, 1);\n                this.recognition.grammars = speechRecognitionList;\n            }\n            */\n        },\n\n        start: function (stream) {\n            if (this.transcriber.active) {\n                return;\n            }\n            this.final_transcript = '';\n            this.transcriber.start(stream, this.transcriber);\n            this.ignore_onend = false;\n            this.start_timestamp = Date.now();//event.timeStamp;\n\n        },\n        stop: function () {\n            if (!this.transcriber.active) {\n                return;\n            }\n            this.transcriber.stop(this.transcriber);\n        },\n\n        register_events: function () {\n            var that=this;\n            this.transcriber.onFinalResult = function(speechtext, speechresults) {\n                        that.onfinalspeechcapture(speechtext,speechresults);\n            };\n\n        },//end of register events\n\n        onfinalspeechcapture: function (speechtext,speechresults) {\n            log.debug(speechtext);\n        },\n        oninterimspeechcapture: function (speechtext) {\n            // log.debug(speechtext);\n        }\n\n    };//end of returned object\n});//total end\n"],"names":["define","$","log","debug","final_transcript","start_timestamp","transcriber","clone","extend","this","will_work_ok","opts","ret","init","that","require","M","cfg","wwwroot","register_events","set_grammar","grammar","start","stream","active","ignore_onend","Date","now","stop","onFinalResult","speechtext","speechresults","onfinalspeechcapture","oninterimspeechcapture"],"mappings":"AACAA,6CAAO,CAAC,SAAU,aAAa,SAAUC,EAAGC,YAIxCA,IAAIC,MAAM,6BAEH,CAEHC,iBAAkB,GAClBC,gBAAiB,EACjBC,YAAa,KAIbC,MAAO,kBACIN,EAAEO,QAAO,EAAM,GAAIC,OAG9BC,aAAc,SAASC,UACfC,KAAM,SAGHD,KAAI,cACF,YACA,YACA,YACA,YACA,YACA,QACDC,KAAK,gBAGLA,KAAM,KAIXA,WACSD,KAAI,YACH,cACA,cACA,cACA,aACA,aACA,SACDC,KAAK,gBAGLA,KAAM,SAGXA,KAIXC,KAAM,SAAUF,UACRG,KAAOL,KAEXM,QAAQ,CAAC,8FAA6F,SAAST,aAC3GQ,KAAKR,YAAcA,YACnBK,KAAI,WAAiB,IACrBA,KAAI,MAAYA,KAAI,QACpBA,KAAI,SAAeK,EAAEC,IAAIC,QACzBJ,KAAKR,YAAYO,KAAKF,MACtBG,KAAKK,sBAkBbC,YAAa,SAAUC,WAWvBC,MAAO,SAAUC,QACTd,KAAKH,YAAYkB,cAGhBpB,iBAAmB,QACnBE,YAAYgB,MAAMC,OAAQd,KAAKH,kBAC/BmB,cAAe,OACfpB,gBAAkBqB,KAAKC,QAGhCC,KAAM,WACGnB,KAAKH,YAAYkB,aAGjBlB,YAAYsB,KAAKnB,KAAKH,cAG/Ba,gBAAiB,eACTL,KAAKL,UACJH,YAAYuB,cAAgB,SAASC,WAAYC,eAC1CjB,KAAKkB,qBAAqBF,WAAWC,iBAKrDC,qBAAsB,SAAUF,WAAWC,eACvC7B,IAAIC,MAAM2B,aAEdG,uBAAwB,SAAUH"}