From 21a15c5efc0d7c068b4fc771a32c3c6983288245 Mon Sep 17 00:00:00 2001 From: Sharon Kennedy Date: Thu, 11 Jun 2020 01:54:36 -0400 Subject: [PATCH] add metadata to file upload so it works on the app --- package.json | 2 +- src/bot.js | 17 ++++++++++------- yarn.lock | 8 ++++---- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 4c4693c..a30c100 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "license": "ISC", "dependencies": { "dotenv": "^8.2.0", - "matrix-js-sdk": "^5.0.1", + "matrix-js-sdk": "^6.2.1", "node-localstorage": "^2.1.5", "olm": "https://packages.matrix.org/npm/olm/olm-3.1.4.tgz", "uuidv4": "^6.0.2", diff --git a/src/bot.js b/src/bot.js index efe5da1..84673bf 100644 --- a/src/bot.js +++ b/src/bot.js @@ -116,7 +116,7 @@ class OcrccBot { const user = this.client.getUser(memberId); if ( user && - user.presence === "online" && + (user.presence === "online" || user.presence === "unavailable") && memberId !== this.config.BOT_USERID ) { chatOffline = false; @@ -288,17 +288,20 @@ class OcrccBot { } const filename = path.basename(transcriptFile) || "Transcript"; - const stream = fs.createReadStream(transcriptFile); + const file = fs.readFileSync(transcriptFile); + const stats = fs.statSync(transcriptFile); - const contentUrl = await this.client.uploadContent({ - stream: stream, - name: filename - }) + const url = await this.client.uploadContent(file, { rawResponse: false, type: 'text/plain' }) + logger.log('info', url) const content = { msgtype: "m.file", body: filename, - url: JSON.parse(contentUrl).content_uri, + info: { + size: stats.size, + mimetype: 'text/plain' + }, + url: url.content_uri, showToUser: senderId }; diff --git a/yarn.lock b/yarn.lock index 3099e60..9f628b9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3762,10 +3762,10 @@ map-visit@^1.0.0: dependencies: object-visit "^1.0.0" -matrix-js-sdk@^5.0.1: - version "5.1.0" - resolved "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-5.1.0.tgz#9b3b02af227ecc2d0cc35fb7312c92b8a6754293" - integrity sha512-IGRq5iACiKp3iIxAghwtdBPrbdgORowc0i8YuIMkZZMpRJDXnNaudt2BFwyQdukV7gvzz7F0sfxBUerySfOnKA== +matrix-js-sdk@^6.2.1: + version "6.2.1" + resolved "https://registry.yarnpkg.com/matrix-js-sdk/-/matrix-js-sdk-6.2.1.tgz#d5f76491a650c0a36fcdd078cff59f2da96edd7b" + integrity sha512-X12Y2SMg8MOJwE5P3VMsMV/mnQHOmyJkF+FZRida124w4B4tBJouaNxteYyYaH34w+wyaKGxuqEBXecfSpfvbw== dependencies: "@babel/runtime" "^7.8.3" another-json "^0.2.0"