podchat 12.5.1 → 12.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/chat.js CHANGED
@@ -218,7 +218,8 @@
218
218
  PUBLIC_GROUP: 2,
219
219
  CHANNEL_GROUP: 4,
220
220
  CHANNEL: 8,
221
- NOTIFICATION_CHANNEL: 16
221
+ NOTIFICATION_CHANNEL: 16,
222
+ SELF: 0x80
222
223
  },
223
224
  chatMessageTypes = {
224
225
  TEXT: '1',
@@ -290,6 +291,13 @@
290
291
  // POD Drive Services
291
292
  PODSPACE_UPLOAD_FILE_TO_USERGROUP: '/userGroup/uploadFile',
292
293
  PODSPACE_UPLOAD_IMAGE_TO_USERGROUP: '/userGroup/uploadImage',
294
+
295
+ PODSPACE_UPLOAD_FILE_TO_USERGROUP_NEW: '/api/usergroups/{userGroupHash}/files',
296
+ PODSPACE_UPLOAD_IMAGE_TO_USERGROUP_NEW: '/api/usergroups/{userGroupHash}/images',
297
+
298
+ PODSPACE_DOWNLOAD_FILE_NEW: '/api/files/{fileHash}',
299
+ PODSPACE_DOWNLOAD_IMAGE_NEW: '/api/images/{fileHash}',
300
+
293
301
  PODSPACE_UPLOAD_FILE: '/nzh/drive/uploadFile',
294
302
  PODSPACE_UPLOAD_FILE_FROM_URL: '/nzh/drive/uploadFileFromUrl',
295
303
  PODSPACE_UPLOAD_IMAGE: '/nzh/drive/uploadImage',
@@ -7188,6 +7196,184 @@
7188
7196
  }
7189
7197
  },
7190
7198
 
7199
+ getFileFromPodspaceNew = function (params, callback) {
7200
+ var downloadUniqueId = Utility.generateUUID(),
7201
+ getFileData = {};
7202
+ if (params) {
7203
+ if (params.hashCode && typeof params.hashCode == 'string') {
7204
+ getFileData.hash = params.hashCode;
7205
+ } else {
7206
+ callback({
7207
+ hasError: true,
7208
+ error: 'Enter a file hash to get'
7209
+ });
7210
+ return;
7211
+ }
7212
+
7213
+ if(params.checkUserGroupAccess) {
7214
+ getFileData.checkUserGroupAccess = true;
7215
+ }
7216
+ }
7217
+
7218
+ if (params.responseType === 'link') {
7219
+ var returnLink = SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS + SERVICES_PATH.PODSPACE_DOWNLOAD_FILE_NEW.replace('{fileHash}', params.hashCode) + `?checkUserGroupAccess=true`;
7220
+ callback({
7221
+ hasError: false,
7222
+ type: 'link',
7223
+ result: returnLink
7224
+ });
7225
+ } else {
7226
+ httpRequest({
7227
+ url: SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS + SERVICES_PATH.PODSPACE_DOWNLOAD_FILE_NEW.replace('{fileHash}', params.hashCode) + `?checkUserGroupAccess=true`,
7228
+ method: 'GET',
7229
+ responseType: 'blob',
7230
+ uniqueId: downloadUniqueId,
7231
+ headers: {
7232
+ 'Authorization': 'Bearer ' + token
7233
+ },
7234
+ enableDownloadProgressEvents: params.enableDownloadProgressEvents,
7235
+ hashCode: params.hashCode
7236
+ //data: getFileData
7237
+ }, function (result) {
7238
+ if (!result.hasError) {
7239
+ callback({
7240
+ hasError: result.hasError,
7241
+ result: result,
7242
+ type: 'blob'
7243
+ });
7244
+ } else {
7245
+ callback({
7246
+ hasError: true
7247
+ });
7248
+ }
7249
+ });
7250
+
7251
+ return {
7252
+ uniqueId: downloadUniqueId,
7253
+ cancel: function () {
7254
+ cancelFileDownload({
7255
+ uniqueId: downloadUniqueId
7256
+ }, function () {
7257
+ consoleLogging && console.log(`"${downloadUniqueId}" - File download has been canceled!`);
7258
+ });
7259
+ }
7260
+ };
7261
+ }
7262
+ },
7263
+
7264
+ getImageFromPodspaceNew = function (params, callback) {
7265
+ var downloadUniqueId = Utility.generateUUID(),
7266
+ getImageData = {
7267
+ size: params.size,
7268
+ quality: params.quality,
7269
+ crop: params.crop
7270
+ };
7271
+ if (params) {
7272
+ if (params.hashCode && typeof params.hashCode == 'string') {
7273
+ getImageData.hash = params.hashCode;
7274
+ } else {
7275
+ callback({
7276
+ hasError: true,
7277
+ error: 'Enter a file hash to get'
7278
+ });
7279
+ return;
7280
+ }
7281
+
7282
+ if (params.responseType === 'link') {
7283
+ var returnLink = SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS
7284
+ + SERVICES_PATH.PODSPACE_DOWNLOAD_IMAGE_NEW.replace('{fileHash}', params.hashCode) + `?checkUserGroupAccess=true&size=${params.size}&quality=${params.quality}&crop=${params.crop}`;
7285
+ //+ SERVICES_PATH.PODSPACE_DOWNLOAD_IMAGE + `?hash=${params.hashCode}&_token_=${token}&_token_issuer_=1&size=${params.size}&quality=${params.quality}&crop=${params.crop}`;
7286
+
7287
+ callback({
7288
+ hasError: false,
7289
+ type: 'link',
7290
+ result: returnLink
7291
+ });
7292
+ } else if (params.responseType === 'base64') {
7293
+ httpRequest({
7294
+ url: SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS
7295
+ + SERVICES_PATH.PODSPACE_DOWNLOAD_IMAGE_NEW.replace('{fileHash}', params.hashCode) + `?checkUserGroupAccess=true&size=${params.size}&quality=${params.quality}&crop=${params.crop}`,
7296
+ method: 'GET',
7297
+ uniqueId: downloadUniqueId,
7298
+ responseType: 'blob',
7299
+ headers: {
7300
+ 'Authorization': 'Bearer ' + token
7301
+ },
7302
+ enableDownloadProgressEvents: params.enableDownloadProgressEvents,
7303
+ hashCode: params.hashCode
7304
+ //data: getImageData
7305
+ }, function (result) {
7306
+ if (!result.hasError) {
7307
+ var fr = new FileReader();
7308
+
7309
+ fr.onloadend = function () {
7310
+ callback({
7311
+ hasError: result.hasError,
7312
+ type: 'base64',
7313
+ result: fr.result
7314
+ });
7315
+ }
7316
+
7317
+ fr.readAsDataURL(result);
7318
+ } else {
7319
+ callback({
7320
+ hasError: true
7321
+ });
7322
+ }
7323
+ });
7324
+
7325
+ return {
7326
+ uniqueId: downloadUniqueId,
7327
+ cancel: function () {
7328
+ cancelFileDownload({
7329
+ uniqueId: downloadUniqueId
7330
+ }, function () {
7331
+ consoleLogging && console.log(`"${downloadUniqueId}" - Image download has been canceled!`);
7332
+ });
7333
+ }
7334
+ };
7335
+ } else {
7336
+ httpRequest({
7337
+ url: SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS
7338
+ + SERVICES_PATH.PODSPACE_DOWNLOAD_IMAGE_NEW.replace('{fileHash}', params.hashCode) + `?checkUserGroupAccess=true&size=${params.size}&quality=${params.quality}&crop=${params.crop}`,
7339
+ method: 'GET',
7340
+ responseType: 'blob',
7341
+ uniqueId: downloadUniqueId,
7342
+ headers: {
7343
+ 'Authorization': 'Bearer ' + token
7344
+ },
7345
+ enableDownloadProgressEvents: params.enableDownloadProgressEvents,
7346
+ hashCode: params.hashCode
7347
+ //data: getImageData
7348
+ }, function (result) {
7349
+ if (!result.hasError) {
7350
+ callback({
7351
+ hasError: result.hasError,
7352
+ type: 'blob',
7353
+ result: result
7354
+ });
7355
+ } else {
7356
+ callback({
7357
+ hasError: true
7358
+ });
7359
+ }
7360
+ });
7361
+
7362
+ return {
7363
+ uniqueId: downloadUniqueId,
7364
+ cancel: function () {
7365
+ cancelFileDownload({
7366
+ uniqueId: downloadUniqueId
7367
+ }, function () {
7368
+ consoleLogging && console.log(`"${downloadUniqueId}" - Image download has been canceled!`);
7369
+ });
7370
+ }
7371
+ };
7372
+ }
7373
+ }
7374
+ },
7375
+
7376
+
7191
7377
  /**
7192
7378
  * Get Image Download Link From PodSpace
7193
7379
  *
@@ -8168,6 +8354,284 @@
8168
8354
  }
8169
8355
  },
8170
8356
 
8357
+ uploadImageToPodspaceUserGroupNew = function (params, callback) {
8358
+ var fileName,
8359
+ fileType,
8360
+ fileSize,
8361
+ fileWidth = 0,
8362
+ fileHeight = 0,
8363
+ fileExtension,
8364
+ uploadUniqueId,
8365
+ uploadThreadId;
8366
+ var continueImageUpload = function (params) {
8367
+ if (imageMimeTypes.indexOf(fileType) >= 0 || imageExtentions.indexOf(fileExtension) >= 0) {
8368
+ var uploadImageData = {};
8369
+ if (params) {
8370
+ if (typeof params.image !== 'undefined') {
8371
+ uploadImageData.file = params.image;
8372
+ } else {
8373
+ callback({
8374
+ hasError: true,
8375
+ errorCode: 999,
8376
+ errorMessage: 'You need to send a image file!'
8377
+ });
8378
+ return;
8379
+ }
8380
+ if (typeof params.userGroupHash == 'string') {
8381
+ uploadImageData.userGroupHash = params.userGroupHash;
8382
+ } else {
8383
+ callback({
8384
+ hasError: true,
8385
+ errorCode: 999,
8386
+ errorMessage: 'You need to enter a userGroupHash to be able to upload on PodSpace!'
8387
+ });
8388
+ return;
8389
+ }
8390
+ if (params.randomFileName) {
8391
+ uploadImageData.fileName = Utility.generateUUID() + '.' + fileExtension;
8392
+ } else {
8393
+ uploadImageData.filename = fileName;
8394
+ }
8395
+ uploadImageData.fileSize = fileSize;
8396
+ if (parseInt(params.threadId) > 0) {
8397
+ uploadThreadId = params.threadId;
8398
+ uploadImageData.threadId = params.threadId;
8399
+ } else {
8400
+ uploadThreadId = 0;
8401
+ uploadImageData.threadId = 0;
8402
+ }
8403
+ if (typeof params.uniqueId == 'string') {
8404
+ uploadUniqueId = params.uniqueId;
8405
+ uploadImageData.uniqueId = params.uniqueId;
8406
+ } else {
8407
+ uploadUniqueId = Utility.generateUUID();
8408
+ uploadImageData.uniqueId = uploadUniqueId;
8409
+ }
8410
+ if (typeof params.originalFileName == 'string') {
8411
+ uploadImageData.originalFileName = params.originalFileName;
8412
+ } else {
8413
+ uploadImageData.originalFileName = fileName;
8414
+ }
8415
+ uploadImageData.x = parseInt(params.xC) || 0;
8416
+ uploadImageData.y = parseInt(params.yC) || 0;
8417
+ uploadImageData.height = parseInt(params.hC) || fileHeight;
8418
+ uploadImageData.weight = parseInt(params.wC) || fileWidth;
8419
+ }
8420
+ httpRequest({
8421
+ url: SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS + SERVICES_PATH.PODSPACE_UPLOAD_IMAGE_TO_USERGROUP_NEW.replace('{userGroupHash}', uploadImageData.userGroupHash),
8422
+ method: 'POST',
8423
+ headers: {
8424
+ 'Authorization': 'Bearer ' + token,
8425
+ },
8426
+ data: uploadImageData,
8427
+ uniqueId: uploadUniqueId
8428
+ }, function (result) {
8429
+ if (!result.hasError) {
8430
+ try {
8431
+ var response = (typeof result.result.responseText == 'string')
8432
+ ? JSON.parse(result.result.responseText)
8433
+ : result.result.responseText;
8434
+ if (response.status < 400) {
8435
+ response.result.actualHeight = fileHeight;
8436
+ response.result.actualWidth = fileWidth;
8437
+ callback({
8438
+ hasError: response.hasError,
8439
+ result: response.result
8440
+ });
8441
+ } else {
8442
+ callback({
8443
+ hasError: true,
8444
+ errorCode: response.errorCode,
8445
+ errorMessage: response.message
8446
+ });
8447
+ }
8448
+ } catch (e) {
8449
+ consoleLogging && console.log(e)
8450
+ callback({
8451
+ hasError: true,
8452
+ errorCode: 6300,
8453
+ errorMessage: CHAT_ERRORS[6300]
8454
+ });
8455
+ }
8456
+ } else {
8457
+ callback({
8458
+ hasError: true,
8459
+ errorCode: result.errorCode,
8460
+ errorMessage: result.errorMessage
8461
+ });
8462
+ }
8463
+ });
8464
+ return {
8465
+ uniqueId: uploadUniqueId,
8466
+ threadId: uploadThreadId,
8467
+ participant: userInfo,
8468
+ content: {
8469
+ caption: params.content,
8470
+ file: {
8471
+ uniqueId: uploadUniqueId,
8472
+ fileName: fileName,
8473
+ fileSize: fileSize,
8474
+ fileObject: params.file
8475
+ }
8476
+ }
8477
+ };
8478
+ } else {
8479
+ callback({
8480
+ hasError: true,
8481
+ errorCode: 6301,
8482
+ errorMessage: CHAT_ERRORS[6301]
8483
+ });
8484
+ }
8485
+ }
8486
+
8487
+ if (isNode) {
8488
+ fileName = params.image.split('/')
8489
+ .pop();
8490
+ fileType = Mime.getType(params.image);
8491
+ fileSize = FS.statSync(params.image).size;
8492
+ fileExtension = params.image.split('.')
8493
+ .pop();
8494
+
8495
+ var dimensions = SizeOf(params.image);
8496
+ fileWidth = dimensions.width;
8497
+ fileHeight = dimensions.height;
8498
+
8499
+ continueImageUpload(params);
8500
+ } else {
8501
+ fileName = params.image.name;
8502
+ fileType = params.image.type;
8503
+ fileSize = params.image.size;
8504
+ fileExtension = params.image.name.split('.')
8505
+ .pop();
8506
+
8507
+ var reader = new FileReader();
8508
+ reader.onload = function (e) {
8509
+ var image = new Image();
8510
+ image.onload = function () {
8511
+ fileWidth = this.width;
8512
+ fileHeight = this.height;
8513
+ continueImageUpload(params);
8514
+ };
8515
+ image.src = e.target.result;
8516
+ };
8517
+ reader.readAsDataURL(params.image);
8518
+ }
8519
+
8520
+ },
8521
+
8522
+ uploadFileToPodspaceUserGroupNew = function (params, callback) {
8523
+ var fileName,
8524
+ //fileType,
8525
+ fileSize,
8526
+ //fileExtension,
8527
+ uploadUniqueId,
8528
+ uploadThreadId;
8529
+
8530
+ console.log(params)
8531
+
8532
+ if (isNode) {
8533
+ fileName = params.file.split('/')
8534
+ .pop();
8535
+ fileType = Mime.getType(params.file);
8536
+ fileSize = FS.statSync(params.file).size;
8537
+ fileExtension = params.file.split('.')
8538
+ .pop();
8539
+ } else {
8540
+ fileName = params.file.name;
8541
+ fileType = params.file.type;
8542
+ fileSize = params.file.size;
8543
+ fileExtension = params.file.name.split('.')
8544
+ .pop();
8545
+ }
8546
+ // fileName = params.file.name;
8547
+ //fileType = params.file.type;
8548
+ // fileSize = params.file.size;
8549
+ //fileExtension = params.file.name.split('.').pop();
8550
+
8551
+ var uploadFileData = {};
8552
+ if (params) {
8553
+ if (typeof params.file !== 'undefined') {
8554
+ uploadFileData.file = params.file;
8555
+ }
8556
+ if (parseInt(params.threadId) > 0) {
8557
+ uploadThreadId = params.threadId;
8558
+ uploadFileData.threadId = params.threadId;
8559
+ } else {
8560
+ uploadThreadId = 0;
8561
+ uploadFileData.threadId = 0;
8562
+ }
8563
+ if (typeof params.uniqueId == 'string') {
8564
+ uploadUniqueId = params.uniqueId;
8565
+ uploadFileData.uniqueId = params.uniqueId;
8566
+ } else {
8567
+ uploadUniqueId = Utility.generateUUID();
8568
+ uploadFileData.uniqueId = uploadUniqueId;
8569
+ }
8570
+ if (typeof params.userGroupHash == 'string') {
8571
+ uploadFileData.userGroupHash = params.userGroupHash;
8572
+ } else {
8573
+ callback({
8574
+ hasError: true,
8575
+ errorCode: 999,
8576
+ errorMessage: 'You need to enter a userGroupHash to be able to upload on PodSpace!'
8577
+ });
8578
+ return;
8579
+ }
8580
+ if (typeof params.originalFileName == 'string') {
8581
+ uploadFileData.originalFileName = params.originalFileName;
8582
+ } else {
8583
+ uploadFileData.originalFileName = fileName;
8584
+ }
8585
+ }
8586
+ httpRequest({
8587
+ url: SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS + SERVICES_PATH.PODSPACE_UPLOAD_FILE_TO_USERGROUP_NEW.replace('{userGroupHash}', uploadFileData.userGroupHash),
8588
+ method: 'POST',
8589
+ headers: {
8590
+ 'Authorization': 'Bearer ' + token,
8591
+ },
8592
+ data: uploadFileData,
8593
+ uniqueId: uploadUniqueId
8594
+ }, function (result) {
8595
+ if (!result.hasError) {
8596
+ try {
8597
+ var response = (typeof result.result.responseText == 'string')
8598
+ ? JSON.parse(result.result.responseText)
8599
+ : result.result.responseText;
8600
+ callback({
8601
+ hasError: response.hasError,
8602
+ result: response.result
8603
+ });
8604
+ } catch (e) {
8605
+ callback({
8606
+ hasError: true,
8607
+ errorCode: 999,
8608
+ errorMessage: 'Problem in Parsing result'
8609
+ });
8610
+ }
8611
+ } else {
8612
+ callback({
8613
+ hasError: true,
8614
+ errorCode: result.errorCode,
8615
+ errorMessage: result.errorMessage
8616
+ });
8617
+ }
8618
+ });
8619
+ return {
8620
+ uniqueId: uploadUniqueId,
8621
+ threadId: uploadThreadId,
8622
+ participant: userInfo,
8623
+ content: {
8624
+ caption: params.content,
8625
+ file: {
8626
+ uniqueId: uploadUniqueId,
8627
+ fileName: fileName,
8628
+ fileSize: fileSize,
8629
+ fileObject: params.file
8630
+ }
8631
+ }
8632
+ };
8633
+ }
8634
+
8171
8635
  sendFileMessage = function (params, callbacks) {
8172
8636
  var metadata = {file: {}},
8173
8637
  fileUploadParams = {},
@@ -8183,6 +8647,8 @@
8183
8647
  fileUploadParams.userGroupHash = params.userGroupHash;
8184
8648
  }
8185
8649
 
8650
+ let msgType = (params.messageType && typeof params.messageType.toUpperCase() !== 'undefined' && chatMessageTypes[params.messageType.toUpperCase()] > 0) ? chatMessageTypes[params.messageType.toUpperCase()] : 1;
8651
+
8186
8652
  return chatUploadHandler({
8187
8653
  threadId: params.threadId,
8188
8654
  file: params.file,
@@ -8194,7 +8660,7 @@
8194
8660
  message: {
8195
8661
  chatMessageVOType: chatMessageVOTypes.MESSAGE,
8196
8662
  typeCode: params.typeCode,
8197
- messageType: (params.messageType && params.messageType.toUpperCase() !== undefined && chatMessageTypes[params.messageType.toUpperCase()] > 0) ? chatMessageTypes[params.messageType.toUpperCase()] : 1,
8663
+ messageType: msgType,
8198
8664
  subjectId: params.threadId,
8199
8665
  repliedTo: params.repliedTo,
8200
8666
  content: params.content,
@@ -8205,19 +8671,31 @@
8205
8671
  },
8206
8672
  callbacks: callbacks
8207
8673
  }, function () {
8208
- if (imageMimeTypes.indexOf(fileType) >= 0 || imageExtentions.indexOf(fileExtension) >= 0) {
8209
-
8210
- uploadImageToPodspaceUserGroup(fileUploadParams, function (result) {
8674
+ if ((imageMimeTypes.indexOf(fileType) >= 0 || imageExtentions.indexOf(fileExtension) >= 0)) {
8675
+ uploadImageToPodspaceUserGroupNew(fileUploadParams, function (result) {
8211
8676
  if (!result.hasError) {
8677
+ // Send onFileUpload callback result
8678
+ if (typeof callbacks === 'object' && callbacks.hasOwnProperty('onFileUpload')) {
8679
+ callbacks.onFileUpload && callbacks.onFileUpload({
8680
+ name: result.result.name,
8681
+ hashCode: result.result.hash,
8682
+ parentHash: result.result.parentHash,
8683
+ size: result.result.size,
8684
+ actualHeight: result.result.actualHeight,
8685
+ actualWidth: result.result.actualWidth,
8686
+ link: `${SERVICE_ADDRESSES.PODSPACE_FILESERVER_ADDRESS}/api/images/${result.result.hash}?checkUserGroupAccess=true`
8687
+ });
8688
+ }
8212
8689
  metadata['name'] = result.result.name;
8213
- metadata['fileHash'] = result.result.hashCode;
8690
+ metadata['fileHash'] = result.result.hash;
8214
8691
  metadata['file']['name'] = result.result.name;
8215
- metadata['file']['fileHash'] = result.result.hashCode;
8216
- metadata['file']['hashCode'] = result.result.hashCode;
8692
+ metadata['file']['fileHash'] = result.result.hash;
8693
+ metadata['file']['hashCode'] = result.result.hash;
8217
8694
  metadata['file']['parentHash'] = result.result.parentHash;
8218
8695
  metadata['file']['size'] = result.result.size;
8219
8696
  metadata['file']['actualHeight'] = result.result.actualHeight;
8220
8697
  metadata['file']['actualWidth'] = result.result.actualWidth;
8698
+
8221
8699
  metadata['file']['link'] = `https://podspace.pod.ir/nzh/drive/downloadImage?hash=${result.result.hashCode}`;
8222
8700
  transferFromUploadQToSendQ(parseInt(params.threadId), fileUniqueId, JSON.stringify(metadata), function () {
8223
8701
  chatSendQueueHandler();
@@ -8227,13 +8705,14 @@
8227
8705
  }
8228
8706
  });
8229
8707
  } else {
8230
- uploadFileToPodspace(fileUploadParams, function (result) {
8708
+ uploadFileToPodspaceUserGroupNew(fileUploadParams, function (result) {
8709
+ console.log('result.result.hashCode ::', result.result.hash)
8231
8710
  if (!result.hasError) {
8232
- metadata['fileHash'] = result.result.hashCode;
8711
+ metadata['fileHash'] = result.result.hash;
8233
8712
  metadata['name'] = result.result.name;
8234
8713
  metadata['file']['name'] = result.result.name;
8235
- metadata['file']['fileHash'] = result.result.hashCode;
8236
- metadata['file']['hashCode'] = result.result.hashCode;
8714
+ metadata['file']['fileHash'] = result.result.hash;
8715
+ metadata['file']['hashCode'] = result.result.hash;
8237
8716
  metadata['file']['parentHash'] = result.result.parentHash;
8238
8717
  metadata['file']['size'] = result.result.size;
8239
8718
 
@@ -10522,9 +11001,9 @@
10522
11001
 
10523
11002
  this.getFile = getFile;
10524
11003
 
10525
- this.getFileFromPodspace = getFileFromPodspace;
11004
+ this.getFileFromPodspace = getFileFromPodspaceNew;//getFileFromPodspace;
10526
11005
 
10527
- this.getImageFromPodspace = getImageFromPodspace;
11006
+ this.getImageFromPodspace = getImageFromPodspaceNew;
10528
11007
 
10529
11008
  this.uploadFile = uploadFile;
10530
11009
 
@@ -12470,6 +12949,96 @@
12470
12949
  });
12471
12950
  };
12472
12951
 
12952
+ this.createSelfThread = function (params, callback) {
12953
+ var content = {
12954
+ type: createThreadTypes['SELF']
12955
+ };
12956
+
12957
+ if (params) {
12958
+ if (typeof params.description === 'string') {
12959
+ content.description = params.description;
12960
+ }
12961
+
12962
+ if (typeof params.metadata === 'string') {
12963
+ content.metadata = params.metadata;
12964
+ } else if (typeof params.metadata === 'object') {
12965
+ try {
12966
+ content.metadata = JSON.stringify(params.metadata);
12967
+ } catch (e) {
12968
+ consoleLogging && console.log(e);
12969
+ }
12970
+ }
12971
+
12972
+ if (typeof params.message == 'object') {
12973
+ content.message = {};
12974
+
12975
+ if (typeof params.message.text === 'string') {
12976
+ content.message.text = params.message.text;
12977
+ }
12978
+
12979
+ if (typeof params.message.uniqueId === 'string') {
12980
+ content.message.uniqueId = params.message.uniqueId;
12981
+ }
12982
+
12983
+ if (params.message.type > 0) {
12984
+ content.message.messageType = params.message.type;
12985
+ }
12986
+
12987
+ if (params.message.repliedTo > 0) {
12988
+ content.message.repliedTo = params.message.repliedTo;
12989
+ }
12990
+
12991
+ if (typeof params.message.metadata === 'string') {
12992
+ content.message.metadata = params.message.metadata;
12993
+ } else if (typeof params.message.metadata === 'object') {
12994
+ content.message.metadata = JSON.stringify(params.message.metadata);
12995
+ }
12996
+
12997
+ if (typeof params.message.systemMetadata === 'string') {
12998
+ content.message.systemMetadata = params.message.systemMetadata;
12999
+ } else if (typeof params.message.systemMetadata === 'object') {
13000
+ content.message.systemMetadata = JSON.stringify(params.message.systemMetadata);
13001
+ }
13002
+
13003
+ if (Array.isArray(params.message.forwardedMessageIds)) {
13004
+ content.message.forwardedMessageIds = params.message.forwardedMessageIds;
13005
+ content.message.forwardedUniqueIds = [];
13006
+ for (var i = 0; i < params.message.forwardedMessageIds.length; i++) {
13007
+ content.message.forwardedUniqueIds.push(Utility.generateUUID());
13008
+ }
13009
+ }
13010
+
13011
+ }
13012
+ }
13013
+
13014
+ var sendMessageParams = {
13015
+ chatMessageVOType: chatMessageVOTypes.CREATE_THREAD,
13016
+ typeCode: generalTypeCode,//params.typeCode,
13017
+ content: content
13018
+ };
13019
+
13020
+ return sendMessage(sendMessageParams, {
13021
+ onResult: function (result) {
13022
+ var returnData = {
13023
+ hasError: result.hasError,
13024
+ cache: false,
13025
+ errorMessage: result.errorMessage,
13026
+ errorCode: result.errorCode
13027
+ };
13028
+
13029
+ if (!returnData.hasError) {
13030
+ var messageContent = result.result;
13031
+
13032
+ returnData.result = {
13033
+ thread: createThread(messageContent)
13034
+ };
13035
+ }
13036
+
13037
+ callback && callback(returnData);
13038
+ }
13039
+ });
13040
+ };
13041
+
12473
13042
  this.mapStaticImage = function (params, callback) {
12474
13043
  var data = {},
12475
13044
  url = SERVICE_ADDRESSES.MAP_ADDRESS + SERVICES_PATH.STATIC_IMAGE,
package/test/test.jpg DELETED
Binary file