Как программно добавить тег к файлу, загруженному в сообщество в IBM SmartCloud?

Я загружаю файл с помощью IBM Social Business Toolkit и теперь хочу добавить к нему теги. Либо во время загрузки, либо сразу после нее. В javadocs я вижу, что у FileService есть метод добавления комментария к файлу. Однако я не вижу эквивалента для тегов.


person Martin Perrie    schedule 20.04.2015    source источник


Ответы (1)


Существует метод Java для обновления тега в файле сообщества, но он не работает в самой последней версии Smartcloud. На самом деле это было исправлено в самой последней версии кода GitHub, но по состоянию на апрель 2015 года оно недоступно для загрузки.

Об ошибке сообщается здесь https://github.com/OpenNTF/SocialSDK/issues/1624. Метод ДОЛЖЕН быть updateCommunityFileMetadata, и с его помощью мы могли бы добавлять TAG в качестве метаданных. Это было бы просто добавить в конец Java-метода addFile.

Пример кода для пометки файла можно найти здесь, в игровой группе — он обновляет метаданные через JavaScript API.

https://greenhouse.lotus.com/sbt/sbtplayground.nsf/JavaScriptSnippets.xsp#snippet=Social_Files_API_UpdateCommunityFileMetadata

чтобы пометить файл, используйте следующее

function tagFile(yourFileId, yourDocUnid){
    require([ "sbt/connections/FileService", "sbt/dom", "sbt/json" ], function(FileService, dom, json) {

        var fileService = new FileService();
        var fileId = yourFileId
        var docId = yourDocUnid
        var tagArray = [];
        tagArray.push(docId)

        fileService.updateCommunityFileMetadata({
            id: fileId,
            tags: tagArray
        }, communityId).then(function(file) {
            dom.setText("json", json.jsonBeanStringify(file));
        }, function(error) {
            dom.setText("json", json.jsonBeanStringify(error));
        });

    });
}
person MarkyRoden    schedule 20.04.2015
comment
пожалуйста, используйте вкладку выпусков, чтобы загрузить последнюю сборку - github.com/OpenNTF/SocialSDK/releases - person Paul Bastide; 20.04.2015
comment
Павел, я скачал последнюю сборку (v1.1.3.20150220) и смог добавить тег с помощью fileService.uploadCommunityFile. Однако он также добавил второй тег tag_word по собственному желанию. Откуда это? Кроме того, я не мог понять, как добавить два отдельных тега. Если я добавлю вторую запись в хэш-карту параметров, она добавит только второй тег, игнорируя первый. И еще добавляет свой собственный тег tag_word. - person Martin Perrie; 21.04.2015
comment
Я думаю, вы должны получить сборку по ссылке выше. Недавно мы исправили эту проблему. - person Paul Bastide; 23.07.2015
comment
Я скачал v1.1.5.20150520-1200, но все еще вижу tag_word как дополнительный тег в SmartCloud. Кроме того, при перечислении тегов с помощью fileEntry.getTags(); Я вижу еще один дополнительный тег (документ), хотя он не отображается при просмотре в SmartCloud. - person Martin Perrie; 27.07.2015