send image display done

This commit is contained in:
Eudes Inácio
2022-01-25 14:36:31 +01:00
parent 78569f38d5
commit f85d55cae7
+61 -47
View File
@@ -13,7 +13,7 @@ import { Camera, CameraResultType, CameraSource, Photo} from '@capacitor/camera
import { Filesystem, Directory } from '@capacitor/filesystem';
import { environment } from 'src/environments/environment';
import { HttpClient, HttpEventType, HttpHeaders, HttpParams } from '@angular/common/http';
import { Storage } from '@ionic/storage';
const IMAGE_DIR = 'stored-images';
@@ -53,6 +53,7 @@ export class FileService {
private platform: Platform,
private loadingCtrl: LoadingController,
private http: HttpClient,
private storage: Storage
) {
this.headers = new HttpHeaders();
}
@@ -354,70 +355,83 @@ export class FileService {
//loader.remove();
});
*/ }
addPictureToChat(roomId) {
addPictureToChat(roomId) {
console.log('add picture to chat')
console.log('add picture to chat')
const input = this.fileLoaderService.createInput({
accept: ['image/apng', 'image/jpeg', 'image/png']
})
const input = this.fileLoaderService.createInput({
accept: ['image/apng', 'image/jpeg', 'image/png']
})
setInterval(()=>{
console.log(input.value)
}, 550)
setInterval(() => {
console.log(input.value)
}, 550)
input.onchange = async () => {
input.onchange = async () => {
//alert('Onchange AQUI')
//alert('Onchange AQUI')
const file = this.fileLoaderService.getFirstFile(input)
const file = this.fileLoaderService.getFirstFile(input)
console.log(file);
console.log(file);
const formData = new FormData();
formData.append("blobFile", file);
let guid: any = await this.uploadFile(formData).toPromise()
console.log('add picture to chat',guid.path);
const formData = new FormData();
formData.append("blobFile", file);
let guid: any = await this.uploadFile(formData).toPromise()
console.log('add picture to chat', guid.path);
this.downloadFile(guid.path).subscribe(async (event) => {
/* const imageData = await this.fileToBase64Service.convert(file)
this.capturedImage = imageData; */
this.capturedImageTitle = file.name;
if (event.type === HttpEventType.DownloadProgress) {
//this.downloadProgess = Math.round((100 * event.loaded) / event.total);
//console.log('FILE TYPE 33', msg.file.type)
} else if (event.type === HttpEventType.Response) {
var fileImage = 'data:image/jpeg;base64,' + btoa(new Uint8Array(event.body).reduce((data, byte) => data + String.fromCharCode(byte), ''));
console.log('add picture to chat',fileImage);
await this.storage.set(guid, fileImage).then(() => {
console.log('add picture to chat IMAGE SAVED')
let body = {
"message":
{
"rid": roomId,
"msg": "",
"attachments": [{
//"title": this.capturedImageTitle ,
//"text": "description",
"title_link_download": false,
//"image_url": this.capturedImage,
}],
"file":{
"type": "application/img",
"guid": guid.path,
"image_url": ""
let body = {
"message":
{
"rid": roomId,
"msg": "",
"attachments": [{
//"title": this.capturedImageTitle ,
//"text": "description",
"title_link_download": false,
//"image_url": this.capturedImage,
}],
"file": {
"type": "application/img",
"guid": guid.path,
"image_url": fileImage
}
}
}
}
console.log('SELECT PICTURE GALLERY', body)
console.log(this.capturedImage)
this.chatService.sendMessage(body).subscribe(res => {
console.log('Msg after send image', res);
}, (error) => {
console.log('Msg after send image error', error);
});
});
}
console.log('SELECT PICTURE GALLERY', body)
console.log(this.capturedImage)
});
this.chatService.sendMessage(body).subscribe(res=> {
/* const imageData = await this.fileToBase64Service.convert(file)
this.capturedImage = imageData; */
console.log('Msg after send image',res);
},(error) => {
console.log('Msg after send image error',error);
});
//console.log(this.capturedImage)
};
}
//console.log(this.capturedImage)
};
}
addDocumentToChat(roomId:string) {
const input = this.fileLoaderService.createInput({