in src/client/client.js [164:189]
sendAttachment(connectionToken, attachment, metadata) {
let self = this;
const startUploadRequestParams = {
ContentType: attachment.type,
AttachmentName: attachment.name,
AttachmentSizeInBytes: attachment.size,
ConnectionToken: connectionToken
};
const startUploadRequest = self.chatClient.startAttachmentUpload(startUploadRequestParams);
return self._sendRequest(startUploadRequest)
.then(startUploadResponse => {
return self._uploadToS3(attachment, startUploadResponse.data.UploadMetadata)
.then(() => {
self.logger.info("successfully uploaded attachment");
const completeUploadRequestParams = {
AttachmentIds: [ startUploadResponse.data.AttachmentId ],
ConnectionToken: connectionToken
};
const completeUploadRequest = self.chatClient.completeAttachmentUpload(completeUploadRequestParams);
return self._sendRequest(completeUploadRequest);
});
}).catch((err) => {
self.logger.error("error when sending attachment");
return Promise.reject(err);
});
}