Comments (5)
Here is a worked example of showing a file open dialog and sending the file as the attachment parameter in the args:
function uploadFile()
{
if (!chatSession)
{
return;
}
var input = document.createElement('input');
input.type = 'file';
input.onchange = e => {
var file = e.target.files[0];
chatSession.sendAttachment({
attachment: file
}).then(function(data) {
console.info('Upload complete');
})
.catch(function(error) {
console.error('Failed to upload', error);
});
}
input.click();
}
from amazon-connect-chatjs.
Hi jospas, thank you for taking the time to raise this issue. I have added notes in the README, merged in #179
from amazon-connect-chatjs.
@spencerlepine Can you please help me to pass metadata in chatSession.sendAttachment().
from amazon-connect-chatjs.
@spencerlepine i am on react native, therefore i am currently using react-native-image-picker
, for some reason why i use this conversion, the image wouldn't be able to be open.
private async convertUriToFile({
uri,
fileName,
fileType,
}: {
uri: string;
fileName: string;
fileType: string;
}): Promise<File> {
const filePath = Platform.OS === 'ios' ? uri.replace('file://', '') : uri;
const fileData = await RNFetchBlob.fs.readFile(filePath, 'base64');
// Works from here
const byteCharacters = decode(fileData);
const byteNumbers = new Array(byteCharacters.length);
for (let i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
const blob = new Blob([byteArray], {type: fileType});
return new File([blob], fileName, {type: fileType});
}
the image type i got is
export interface ImagePickerResponse {
didCancel?: boolean;
errorCode?: ErrorCode;
errorMessage?: string;
assets?: Asset[];
}
from amazon-connect-chatjs.
All good, this solution works
private convertAssetToFile = async (asset: {
uri: string;
fileName: string;
type: string;
}): Promise<File> => {
try {
const resp = await fetch(asset.uri);
const blob = await resp.blob();
return new File([blob], asset.fileName, {type: asset.type});
} catch (error) {
throw error;
}
};
from amazon-connect-chatjs.
Related Issues (20)
- Specifying incorrect participantId in ChatSession.create() fails silently, causes onDeliveredReceipt()/onReadReceipt() listeners to be invoked when they shouldn't
- TypeScript typings are outdated HOT 5
- Function is not allowing Inside connect.contact(()=>{}) HOT 2
- connectionDetails value not accessible, seems to not be assigned properly & types don't match HOT 2
- Typo on 'throttleTime' property when trying to call 'setGlobalConfig' HOT 2
- ReferenceError: connect is not defined in JS HOT 15
- React native CSM support HOT 4
- Facing Issue when working with multimedia messages HOT 3
- Send attachment throw error that signature does not match HOT 1
- Callbacks not called when its mounted next time HOT 2
- Download Attachment Returning Blob istead of S3 pre-signed URL HOT 1
- Avoid having to use "unsafe-inline" settings for CSS (style directive) HOT 1
- Want to send additional information with file in send Attachment method HOT 5
- StateError: There is no upstream conduit! HOT 1
- CSP Error on loadCsmScriptAndExecute() HOT 1
- Some type definitions are missing from versions above 2.0 HOT 1
- Issue with setGlobalConfig and messageReceipts in Amazon Connect ChatJS HOT 5
- Support for `chatSession.onParticipantLeft()` HOT 1
- Set transcript in chat HOT 1
- v2.0 types are missing critical information & don't provide ChatSession interface HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from amazon-connect-chatjs.