Created
March 17, 2017 10:02
-
-
Save perspolice/f8580f891b4dc54a6a3228038af2f5a9 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { Http, Headers, ResponseContentType } from '@angular/http'; | |
import { Component } from '@angular/core'; | |
import { | |
NavController, | |
AlertController, | |
Platform | |
} from 'ionic-angular'; | |
import { Injectable } from '@angular/core'; | |
import { | |
MediaPlugin, | |
Device, | |
File | |
} from 'ionic-native'; | |
import { AppConstants } from '../../app/app.constants'; | |
import { TextSpeechApi } from '../../app/service.textSpeechApi'; | |
import { | |
message | |
} from '../../app/app.datatypes'; | |
import Rx from 'rxjs/Rx'; | |
declare var cordova: any; | |
declare var window: any; | |
@Injectable() | |
export class AudioPlayer { | |
constructor(private http: Http) { | |
} | |
} | |
//public playAudio(){} | |
let parsedMessage = JSON.parse(message["data"]).activities[0]; | |
this.AudioPlayer.TextRecognise(parsedMessage.attachments[0].content.text) | |
.subscribe(res => { | |
console.log(res); | |
let errorFunc = function (err) { | |
console.log(err); | |
} | |
window.requestFileSystem(window.PERSISTENT, 5 * 1024 * 1024, function (fs) { | |
console.log('file system open: ' + fs.name); | |
createFile(fs.root, "tmp.mp3", res.arrayBuffer(), false); | |
}, errorFunc); | |
let createFile = function (dirEntry, fileName, data, isAppend) { | |
// Creates a new file or returns the file if it already exists. | |
dirEntry.getFile(fileName, { create: true, exclusive: false }, function (fileEntry) { | |
writeFile(fileEntry, data, isAppend); | |
}, errorFunc); | |
} | |
let writeFile = function (fileEntry, dataObj, isAppend) { | |
// Create a FileWriter object for our FileEntry (log.txt). | |
fileEntry.createWriter(function (fileWriter) { | |
fileWriter.onwriteend = function () { | |
console.log("Successful file write..."); | |
const onStatus = (status) => console.log(status); | |
let fileUrl = fileEntry.toNativeURL(); | |
const file = new MediaPlugin(fileUrl, onStatus); | |
file.init.then((file) => { | |
console.log(file); | |
}, (err) => { | |
console.log('somthing went wrong! error code: ' + err.code + ' message: ' + err.message); | |
}); | |
file.play(); | |
}; | |
fileWriter.onerror = function (e) { | |
console.log("Failed file write: " + e.toString()); | |
}; | |
// If data object is not passed in, | |
// create a new Blob instead. | |
fileWriter.write(dataObj, isAppend); | |
}); | |
} | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment