[
  {
    "comment": "/**\n * @module\n * @name SDK\n * @version 2.42.0-lts.4 - Documentation generated on 2026/04/24T11:38:22.926Z\n * @public\n * @description\n *      This module is the core module of the Rainbow SDK for Node.JS <br>.\n *      It gives access to the other modules and allow to start/stop the SDK\n *      <br><br>\n *      The main methods proposed in that module allow to: <br>\n *      - Access to each module like Bubbles, Contacts...<br>\n *      - Access to Event module <br>\n *      - Start and stop the SDK <br>\n *      - Get the version number <br>\n *      - Get the SDK internal state\n *\n *      Warning: Before deploying in production a bot that can generate heavy traffic, please contact ALE.\n */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 46,
      "columnno": 0,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "kind": "module",
    "name": "SDK",
    "version": "2.42.0-lts.4 - Documentation generated on 2026/04/24T11:38:22.926Z",
    "access": "public",
    "description": "This module is the core module of the Rainbow SDK for Node.JS <br>.\n     It gives access to the other modules and allow to start/stop the SDK\n     <br><br>\n     The main methods proposed in that module allow to: <br>\n     - Access to each module like Bubbles, Contacts...<br>\n     - Access to Event module <br>\n     - Start and stop the SDK <br>\n     - Get the version number <br>\n     - Get the SDK internal state\n\n     Warning: Before deploying in production a bot that can generate heavy traffic, please contact ALE.",
    "longname": "module:SDK",
    "$longname": "SDK",
    "$kind": "module"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} Appreciation\n     * @static\n     * @description\n     *    Get connections Appreciation type. <br>\n     * @return {Appreciation}\n     */",
    "meta": {
      "range": [
        43160,
        43232
      ],
      "filename": "NodeSDK.js",
      "lineno": 1030,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001532",
        "name": "NodeSDK.Appreciation",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "Appreciation"
      }
    ],
    "scope": "static",
    "description": "Get connections Appreciation type. <br>",
    "returns": [
      {
        "type": {
          "names": [
            "Appreciation"
          ]
        }
      }
    ],
    "name": "Appreciation",
    "longname": "module:SDK~NodeSDK.Appreciation",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK.Appreciation",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} AutoReplyManager\n     * @static\n     * @description\n     *    Get connections AutoReplyManager type. <br>\n     * @return {AutoReplyManager}\n     */",
    "meta": {
      "range": [
        43722,
        43814
      ],
      "filename": "NodeSDK.js",
      "lineno": 1052,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001548",
        "name": "NodeSDK.AutoReplyManager",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "AutoReplyManager"
      }
    ],
    "scope": "static",
    "description": "Get connections AutoReplyManager type. <br>",
    "returns": [
      {
        "type": {
          "names": [
            "AutoReplyManager"
          ]
        }
      }
    ],
    "name": "AutoReplyManager",
    "longname": "module:SDK~NodeSDK.AutoReplyManager",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK.AutoReplyManager",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} CalendarManager\n     * @static\n     * @description\n     *    Get connections CalendarManager type. <br>\n     * @return {CalendarManager}\n     */",
    "meta": {
      "range": [
        43431,
        43520
      ],
      "filename": "NodeSDK.js",
      "lineno": 1041,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001540",
        "name": "NodeSDK.CalendarManager",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "CalendarManager"
      }
    ],
    "scope": "static",
    "description": "Get connections CalendarManager type. <br>",
    "returns": [
      {
        "type": {
          "names": [
            "CalendarManager"
          ]
        }
      }
    ],
    "name": "CalendarManager",
    "longname": "module:SDK~NodeSDK.CalendarManager",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK.CalendarManager",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} CLOUDPBXCLIOPTIONPOLICY\n     * @description\n     *    Get access to the CLOUDPBXCLIOPTIONPOLICY type\n     * @return {CLOUDPBXCLIOPTIONPOLICY}\n     */",
    "meta": {
      "range": [
        39142,
        39241
      ],
      "filename": "NodeSDK.js",
      "lineno": 910,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001439",
        "name": "NodeSDK.CLOUDPBXCLIOPTIONPOLICY",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "CLOUDPBXCLIOPTIONPOLICY"
      }
    ],
    "description": "Get access to the CLOUDPBXCLIOPTIONPOLICY type",
    "returns": [
      {
        "type": {
          "names": [
            "CLOUDPBXCLIOPTIONPOLICY"
          ]
        }
      }
    ],
    "name": "CLOUDPBXCLIOPTIONPOLICY",
    "longname": "module:SDK~NodeSDK.CLOUDPBXCLIOPTIONPOLICY",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.CLOUDPBXCLIOPTIONPOLICY",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} DataStoreType\n     * @description\n     *    Get access to the DataStoreType type\n     * @return {DataStoreType}\n     */",
    "meta": {
      "range": [
        38628,
        38701
      ],
      "filename": "NodeSDK.js",
      "lineno": 890,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001423",
        "name": "NodeSDK.DataStoreType",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "DataStoreType"
      }
    ],
    "description": "Get access to the DataStoreType type",
    "returns": [
      {
        "type": {
          "names": [
            "DataStoreType"
          ]
        }
      }
    ],
    "name": "DataStoreType",
    "longname": "module:SDK~NodeSDK.DataStoreType",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.DataStoreType",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} LEVELS\n     * @description\n     *    Get access to the LEVELS type\n     * @return {LEVELS}\n     */",
    "meta": {
      "range": [
        40942,
        41007
      ],
      "filename": "NodeSDK.js",
      "lineno": 980,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001495",
        "name": "NodeSDK.LEVELS",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "LEVELS"
      }
    ],
    "description": "Get access to the LEVELS type",
    "returns": [
      {
        "type": {
          "names": [
            "LEVELS"
          ]
        }
      }
    ],
    "name": "LEVELS",
    "longname": "module:SDK~NodeSDK.LEVELS",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.LEVELS",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} LEVELSCOLORS\n     * @description\n     *    Get access to the PresencePhone type\n     * @return {LEVELSCOLORS}\n     */",
    "meta": {
      "range": [
        41179,
        41256
      ],
      "filename": "NodeSDK.js",
      "lineno": 990,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001503",
        "name": "NodeSDK.LEVELSCOLORS",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "LEVELSCOLORS"
      }
    ],
    "description": "Get access to the PresencePhone type",
    "returns": [
      {
        "type": {
          "names": [
            "LEVELSCOLORS"
          ]
        }
      }
    ],
    "name": "LEVELSCOLORS",
    "longname": "module:SDK~NodeSDK.LEVELSCOLORS",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.LEVELSCOLORS",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} LEVELSNAMES\n     * @description\n     *    Get access to the LEVELSNAMES type\n     * @return {LEVELSNAMES}\n     */",
    "meta": {
      "range": [
        40714,
        40789
      ],
      "filename": "NodeSDK.js",
      "lineno": 970,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001487",
        "name": "NodeSDK.LEVELSNAMES",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "LEVELSNAMES"
      }
    ],
    "description": "Get access to the LEVELSNAMES type",
    "returns": [
      {
        "type": {
          "names": [
            "LEVELSNAMES"
          ]
        }
      }
    ],
    "name": "LEVELSNAMES",
    "longname": "module:SDK~NodeSDK.LEVELSNAMES",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.LEVELSNAMES",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} PresenceDetails\n     * @description\n     *    Get access to the PresenceDetails type\n     * @return {PresenceDetails}\n     */",
    "meta": {
      "range": [
        40198,
        40287
      ],
      "filename": "NodeSDK.js",
      "lineno": 950,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001471",
        "name": "NodeSDK.PresenceDetails",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "PresenceDetails"
      }
    ],
    "description": "Get access to the PresenceDetails type",
    "returns": [
      {
        "type": {
          "names": [
            "PresenceDetails"
          ]
        }
      }
    ],
    "name": "PresenceDetails",
    "longname": "module:SDK~NodeSDK.PresenceDetails",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.PresenceDetails",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} PresenceLevel\n     * @description\n     *    Get access to the PresenceLevel type\n     * @return {PresenceLevel}\n     */",
    "meta": {
      "range": [
        39415,
        39500
      ],
      "filename": "NodeSDK.js",
      "lineno": 920,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001447",
        "name": "NodeSDK.PresenceLevel",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "PresenceLevel"
      }
    ],
    "description": "Get access to the PresenceLevel type",
    "returns": [
      {
        "type": {
          "names": [
            "PresenceLevel"
          ]
        }
      }
    ],
    "name": "PresenceLevel",
    "longname": "module:SDK~NodeSDK.PresenceLevel",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.PresenceLevel",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} PresencePhone\n     * @description\n     *    Get access to the PresencePhone type\n     * @return {PresencePhone}\n     */",
    "meta": {
      "range": [
        40461,
        40546
      ],
      "filename": "NodeSDK.js",
      "lineno": 960,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001479",
        "name": "NodeSDK.PresencePhone",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "PresencePhone"
      }
    ],
    "description": "Get access to the PresencePhone type",
    "returns": [
      {
        "type": {
          "names": [
            "PresencePhone"
          ]
        }
      }
    ],
    "name": "PresencePhone",
    "longname": "module:SDK~NodeSDK.PresencePhone",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.PresencePhone",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} PresenceShow\n     * @description\n     *    Get access to the PresenceShow type\n     * @return {PresenceShow}\n     */",
    "meta": {
      "range": [
        39671,
        39754
      ],
      "filename": "NodeSDK.js",
      "lineno": 930,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001455",
        "name": "NodeSDK.PresenceShow",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "PresenceShow"
      }
    ],
    "description": "Get access to the PresenceShow type",
    "returns": [
      {
        "type": {
          "names": [
            "PresenceShow"
          ]
        }
      }
    ],
    "name": "PresenceShow",
    "longname": "module:SDK~NodeSDK.PresenceShow",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.PresenceShow",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} PresenceStatus\n     * @description\n     *    Get access to the PresenceStatus type\n     * @return {PresenceStatus}\n     */",
    "meta": {
      "range": [
        39931,
        40018
      ],
      "filename": "NodeSDK.js",
      "lineno": 940,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001463",
        "name": "NodeSDK.PresenceStatus",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "PresenceStatus"
      }
    ],
    "description": "Get access to the PresenceStatus type",
    "returns": [
      {
        "type": {
          "names": [
            "PresenceStatus"
          ]
        }
      }
    ],
    "name": "PresenceStatus",
    "longname": "module:SDK~NodeSDK.PresenceStatus",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.PresenceStatus",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} UrgencyType\n     * @description\n     *    Get access to the UrgencyType type\n     * @return {UrgencyType}\n     */",
    "meta": {
      "range": [
        38869,
        38938
      ],
      "filename": "NodeSDK.js",
      "lineno": 900,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001431",
        "name": "NodeSDK.UrgencyType",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "UrgencyType"
      }
    ],
    "description": "Get access to the UrgencyType type",
    "returns": [
      {
        "type": {
          "names": [
            "UrgencyType"
          ]
        }
      }
    ],
    "name": "UrgencyType",
    "longname": "module:SDK~NodeSDK.UrgencyType",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "static",
    "params": [],
    "$longname": "SDK~NodeSDK.UrgencyType",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @method {LogLevelAreas} getAreasLogs\n     * @instance\n     * @nodered true\n     * @description\n     *    Get access to the Logs Areas\n     * @return {ImsService}\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 512,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "{LogLevelAreas} getAreasLogs",
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Logs Areas",
    "returns": [
      {
        "type": {
          "names": [
            "ImsService"
          ]
        }
      }
    ],
    "longname": "module:SDK#{LogLevelAreas} getAreasLogs",
    "memberof": "module:SDK",
    "$longname": "SDK#{LogLevelAreas} getAreasLogs",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method destroy\n     * @instance\n     * @description\n     *    This method should be called before the bot to point to the SDK's instance to remove listener of \"process\" object. </br>\n     *    And then avoid the error `MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGINT listeners added to [process]. Use emitter.setMaxListeners() to increase limit` when the SDK is instantiated and removed more than\n     *    10 times.\n     *\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 473,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "destroy",
    "scope": "instance",
    "description": "This method should be called before the bot to point to the SDK's instance to remove listener of \"process\" object. </br>\n   And then avoid the error `MaxListenersExceededWarning: Possible EventEmitter memory leak detected. 11 SIGINT listeners added to [process]. Use emitter.setMaxListeners() to increase limit` when the SDK is instantiated and removed more than\n   10 times.",
    "longname": "module:SDK#destroy",
    "memberof": "module:SDK",
    "$longname": "SDK#destroy",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method getConnectionStatus\n     * @instance\n     * @nodered true\n     * @description\n     *    Get connections status of each low layer services, and also the full SDK state. <br>\n     * <br>\n     * { <br>\n     * restStatus: boolean, The status of the REST connection authentication to rainbow server. <br>\n     * xmppStatus: boolean, The status of the XMPP Connection to rainbow server. <br>\n     * s2sStatus: boolean, The status of the S2S Connection to rainbow server. <br>\n     * state: SDKSTATUSENUM The state of the SDK. <br>\n     * nbHttpAdded: number, the number of HTTP requests (any verb GET, HEAD, POST, ...) added in the HttpManager queue. Note that it is reset to zero when it reaches Number.MAX_SAFE_INTEGER value. <br>\n     * httpQueueSize: number, the number of requests stored in the Queue. Note that when a request is sent to server, it is already removed from the queue. <br>\n     * nbRunningReq: number, the number of requests which has been poped from the queue and the SDK did not yet received an answer for it. <br>\n     * maxSimultaneousRequests : number, the number of request which can be launch at a same time. <br>\n     * nbReqInQueue : number, the number of requests waiting for being treated by the HttpManager.  <br>\n     * } <br>\n     * @return {Promise<{ restStatus: boolean, xmppStatus: boolean, s2sStatus: boolean, state: SDKSTATUSENUM, nbHttpAdded: number, httpQueueSize: number, nbRunningReq: number, maxSimultaneousRequests : number }>}\n     * @category async\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 997,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "getConnectionStatus",
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "category",
        "title": "category",
        "text": "async",
        "value": "async"
      }
    ],
    "description": "Get connections status of each low layer services, and also the full SDK state. <br>\n<br>\n{ <br>\nrestStatus: boolean, The status of the REST connection authentication to rainbow server. <br>\nxmppStatus: boolean, The status of the XMPP Connection to rainbow server. <br>\ns2sStatus: boolean, The status of the S2S Connection to rainbow server. <br>\nstate: SDKSTATUSENUM The state of the SDK. <br>\nnbHttpAdded: number, the number of HTTP requests (any verb GET, HEAD, POST, ...) added in the HttpManager queue. Note that it is reset to zero when it reaches Number.MAX_SAFE_INTEGER value. <br>\nhttpQueueSize: number, the number of requests stored in the Queue. Note that when a request is sent to server, it is already removed from the queue. <br>\nnbRunningReq: number, the number of requests which has been poped from the queue and the SDK did not yet received an answer for it. <br>\nmaxSimultaneousRequests : number, the number of request which can be launch at a same time. <br>\nnbReqInQueue : number, the number of requests waiting for being treated by the HttpManager.  <br>\n} <br>",
    "returns": [
      {
        "type": {
          "names": [
            "Promise.<{restStatus: boolean, xmppStatus: boolean, s2sStatus: boolean, state: SDKSTATUSENUM, nbHttpAdded: number, httpQueueSize: number, nbRunningReq: number, maxSimultaneousRequests: number}>"
          ]
        }
      }
    ],
    "longname": "module:SDK#getConnectionStatus",
    "memberof": "module:SDK",
    "$longname": "SDK#getConnectionStatus",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method setCredentialPassword\n     * @instance\n     * @description\n     *    Set the password credential of the Bot for the login.</br>\n     *    Note: The SDK use this password in the next connection/reconnection.\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 436,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "setCredentialPassword",
    "scope": "instance",
    "description": "Set the password credential of the Bot for the login.</br>\n   Note: The SDK use this password in the next connection/reconnection.",
    "longname": "module:SDK#setCredentialPassword",
    "memberof": "module:SDK",
    "$longname": "SDK#setCredentialPassword",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method setRenewedToken\n     * @instance\n     * @description\n     *    Set the token renewed externaly of the SDK. This is for oauth authentication.</br>\n     *   Note: An event #rainbow_onusertokenrenewfailed is fired when an oauth token is expired.</br>\n     *      The application must refresh the token and send it back to SDK with `setRenewedToken` API.\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 423,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "setRenewedToken",
    "scope": "instance",
    "description": "Set the token renewed externaly of the SDK. This is for oauth authentication.</br>\n  Note: An event #rainbow_onusertokenrenewfailed is fired when an oauth token is expired.</br>\n     The application must refresh the token and send it back to SDK with `setRenewedToken` API.",
    "longname": "module:SDK#setRenewedToken",
    "memberof": "module:SDK",
    "$longname": "SDK#setRenewedToken",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method siginCLI\n     * @instance\n     * @description\n     *      Sign-in in CLI Mode (without the XMPP link)\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 398,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "siginCLI",
    "scope": "instance",
    "description": "Sign-in in CLI Mode (without the XMPP link)",
    "longname": "module:SDK#siginCLI",
    "memberof": "module:SDK",
    "$longname": "SDK#siginCLI",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method start\n     * @instance\n     * @param {String} token a valid token to login without login/password. <br>\n     * if Oauth token is provided to the SDK then application MUST implement the refresh token and send it back to SDK with `setRenewedToken` API, while following event are raised : <br>\n     * Events rainbow_onusertokenrenewfailed : fired when an oauth token is expired. <br>\n     * Events rainbow_onusertokenwillexpire : fired when the duration of the current user token reaches half of the maximum time. <br>\n     *      For instance, if the token is valid for 1 hour, this event will arrive at 30 minutes. <br>\n     *      It is recommended to renew the token upon the arrival of this event. <br>\n     * @description\n     *    Start the SDK <br>\n     *    Note :<br>\n     *    The token must be empty to signin with credentials.<br>\n     *    The SDK is disconnected when the renew of the token had expired (No initial signin possible with out credentials.)<br>\n     *    There is a sample using the oauth and sdk at https://github.com/Rainbow-CPaaS/passport-rainbow-oauth2-with-rainbow-node-sdk-example <br>\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 261,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "start",
    "scope": "instance",
    "params": [
      {
        "type": {
          "names": [
            "String"
          ]
        },
        "description": "a valid token to login without login/password. <br>\nif Oauth token is provided to the SDK then application MUST implement the refresh token and send it back to SDK with `setRenewedToken` API, while following event are raised : <br>\nEvents rainbow_onusertokenrenewfailed : fired when an oauth token is expired. <br>\nEvents rainbow_onusertokenwillexpire : fired when the duration of the current user token reaches half of the maximum time. <br>\n     For instance, if the token is valid for 1 hour, this event will arrive at 30 minutes. <br>\n     It is recommended to renew the token upon the arrival of this event. <br>",
        "name": "token"
      }
    ],
    "description": "Start the SDK <br>\n   Note :<br>\n   The token must be empty to signin with credentials.<br>\n   The SDK is disconnected when the renew of the token had expired (No initial signin possible with out credentials.)<br>\n   There is a sample using the oauth and sdk at https://github.com/Rainbow-CPaaS/passport-rainbow-oauth2-with-rainbow-node-sdk-example <br>",
    "longname": "module:SDK#start",
    "memberof": "module:SDK",
    "$longname": "SDK#start",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method startCLI\n     * @instance\n     * @description\n     *      Start the SDK in CLI Mode\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 373,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "startCLI",
    "scope": "instance",
    "description": "Start the SDK in CLI Mode",
    "longname": "module:SDK#startCLI",
    "memberof": "module:SDK",
    "$longname": "SDK#startCLI",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method startWSOnly\n     * @instance\n     * @description\n     *    Start the SDK with only XMPP link<br>\n     *\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 321,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "startWSOnly",
    "scope": "instance",
    "description": "Start the SDK with only XMPP link<br>",
    "longname": "module:SDK#startWSOnly",
    "memberof": "module:SDK",
    "$longname": "SDK#startWSOnly",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @method stop\n     * @instance\n     * @description\n     *    Stop the SDK\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 448,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "kind": "function",
    "name": "stop",
    "scope": "instance",
    "description": "Stop the SDK",
    "longname": "module:SDK#stop",
    "memberof": "module:SDK",
    "$longname": "SDK#stop",
    "$kind": "method"
  },
  {
    "comment": "/**\n     * @public\n     * @property {AdminService} admin\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Admin module\n     * @return {AdminService}\n     */",
    "meta": {
      "range": [
        33472,
        33524
      ],
      "filename": "NodeSDK.js",
      "lineno": 663,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001241",
        "name": "NodeSDK#admin",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "AdminService"
          ]
        },
        "name": "admin"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Admin module",
    "returns": [
      {
        "type": {
          "names": [
            "AdminService"
          ]
        }
      }
    ],
    "name": "admin",
    "longname": "module:SDK~NodeSDK#admin",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#admin",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {AlertsService} alerts\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the alerts module\n     * @return {AlertsService}\n     */",
    "meta": {
      "range": [
        37168,
        37223
      ],
      "filename": "NodeSDK.js",
      "lineno": 827,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001373",
        "name": "NodeSDK#alerts",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "AlertsService"
          ]
        },
        "name": "alerts"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the alerts module",
    "returns": [
      {
        "type": {
          "names": [
            "AlertsService"
          ]
        }
      }
    ],
    "name": "alerts",
    "longname": "module:SDK~NodeSDK#alerts",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#alerts",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {BubblesService} bubbles\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Bubbles module\n     * @return {BubblesService}\n     */",
    "meta": {
      "range": [
        32043,
        32099
      ],
      "filename": "NodeSDK.js",
      "lineno": 599,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001191",
        "name": "NodeSDK#bubbles",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "BubblesService"
          ]
        },
        "name": "bubbles"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Bubbles module",
    "returns": [
      {
        "type": {
          "names": [
            "BubblesService"
          ]
        }
      }
    ],
    "name": "bubbles",
    "longname": "module:SDK~NodeSDK#bubbles",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#bubbles",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {CallLogService} calllog\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the calllog module\n     * @return {CallLogService}\n     */",
    "meta": {
      "range": [
        36007,
        36063
      ],
      "filename": "NodeSDK.js",
      "lineno": 775,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001333",
        "name": "NodeSDK#calllog",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "CallLogService"
          ]
        },
        "name": "calllog"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the calllog module",
    "returns": [
      {
        "type": {
          "names": [
            "CallLogService"
          ]
        }
      }
    ],
    "name": "calllog",
    "longname": "module:SDK~NodeSDK#calllog",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#calllog",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {ChannelsService} channels\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Channels module\n     * @return {ChannelsService}\n     */",
    "meta": {
      "range": [
        30841,
        30899
      ],
      "filename": "NodeSDK.js",
      "lineno": 547,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001151",
        "name": "NodeSDK#channels",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "ChannelsService"
          ]
        },
        "name": "channels"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Channels module",
    "returns": [
      {
        "type": {
          "names": [
            "ChannelsService"
          ]
        }
      }
    ],
    "name": "channels",
    "longname": "module:SDK~NodeSDK#channels",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#channels",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {ConnectedUser} connectedUser\n     * @instance\n     * @nodered true\n     * @description\n     *      Return the connected user information\n     * @return {any}\n     */",
    "meta": {
      "range": [
        35132,
        35199
      ],
      "filename": "NodeSDK.js",
      "lineno": 736,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001301",
        "name": "NodeSDK#connectedUser",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "ConnectedUser"
          ]
        },
        "name": "connectedUser"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Return the connected user information",
    "returns": [
      {
        "type": {
          "names": [
            "any"
          ]
        }
      }
    ],
    "name": "connectedUser",
    "longname": "module:SDK~NodeSDK#connectedUser",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#connectedUser",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {ContactsService} contacts\n     * @nodered true\n     * @service true\n     * @instance\n     * @description\n     *    Get access to the Contacts module\n     * @return {ContactsService}\n     */",
    "meta": {
      "range": [
        31135,
        31193
      ],
      "filename": "NodeSDK.js",
      "lineno": 560,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001161",
        "name": "NodeSDK#contacts",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "ContactsService"
          ]
        },
        "name": "contacts"
      }
    ],
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "scope": "instance",
    "description": "Get access to the Contacts module",
    "returns": [
      {
        "type": {
          "names": [
            "ContactsService"
          ]
        }
      }
    ],
    "name": "contacts",
    "longname": "module:SDK~NodeSDK#contacts",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#contacts",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {ConversationsService} conversations\n     * @nodered true\n     * @service true\n     * @instance\n     * @description\n     *    Get access to the Conversations module\n     * @return {ConversationsService}\n     */",
    "meta": {
      "range": [
        31449,
        31517
      ],
      "filename": "NodeSDK.js",
      "lineno": 573,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001171",
        "name": "NodeSDK#conversations",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "ConversationsService"
          ]
        },
        "name": "conversations"
      }
    ],
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "scope": "instance",
    "description": "Get access to the Conversations module",
    "returns": [
      {
        "type": {
          "names": [
            "ConversationsService"
          ]
        }
      }
    ],
    "name": "conversations",
    "longname": "module:SDK~NodeSDK#conversations",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#conversations",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Events} events\n     * @instance\n     * @nodered true\n     * @description\n     *    Get access to the Events module\n     * @return {Events}\n     */",
    "meta": {
      "range": [
        32574,
        32628
      ],
      "filename": "NodeSDK.js",
      "lineno": 624,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001211",
        "name": "NodeSDK#events",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Events"
          ]
        },
        "name": "events"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Events module",
    "returns": [
      {
        "type": {
          "names": [
            "Events"
          ]
        }
      }
    ],
    "name": "events",
    "longname": "module:SDK~NodeSDK#events",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#events",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {FavoritesService} favorites\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the favorite module\n     * @return {FavoritesService}\n     */",
    "meta": {
      "range": [
        36302,
        36363
      ],
      "filename": "NodeSDK.js",
      "lineno": 788,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001343",
        "name": "NodeSDK#favorites",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "FavoritesService"
          ]
        },
        "name": "favorites"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the favorite module",
    "returns": [
      {
        "type": {
          "names": [
            "FavoritesService"
          ]
        }
      }
    ],
    "name": "favorites",
    "longname": "module:SDK~NodeSDK#favorites",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#favorites",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {FileServerService} fileServer\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the File Server module\n     * @return {FileServerService}\n     */",
    "meta": {
      "range": [
        32873,
        32935
      ],
      "filename": "NodeSDK.js",
      "lineno": 637,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001221",
        "name": "NodeSDK#fileServer",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "FileServerService"
          ]
        },
        "name": "fileServer"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the File Server module",
    "returns": [
      {
        "type": {
          "names": [
            "FileServerService"
          ]
        }
      }
    ],
    "name": "fileServer",
    "longname": "module:SDK~NodeSDK#fileServer",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#fileServer",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {FileStorageService} fileStorage\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the File Storage module\n     * @return {FileStorageService}\n     */",
    "meta": {
      "range": [
        33184,
        33248
      ],
      "filename": "NodeSDK.js",
      "lineno": 650,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001231",
        "name": "NodeSDK#fileStorage",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "FileStorageService"
          ]
        },
        "name": "fileStorage"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the File Storage module",
    "returns": [
      {
        "type": {
          "names": [
            "FileStorageService"
          ]
        }
      }
    ],
    "name": "fileStorage",
    "longname": "module:SDK~NodeSDK#fileStorage",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#fileStorage",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {GroupsService} groups\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Groups module\n     * @return {GroupsService}\n     */",
    "meta": {
      "range": [
        32327,
        32381
      ],
      "filename": "NodeSDK.js",
      "lineno": 612,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001201",
        "name": "NodeSDK#groups",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "GroupsService"
          ]
        },
        "name": "groups"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Groups module",
    "returns": [
      {
        "type": {
          "names": [
            "GroupsService"
          ]
        }
      }
    ],
    "name": "groups",
    "longname": "module:SDK~NodeSDK#groups",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#groups",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {HTTPoverXMPP} httpoverxmpp\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the httpoverxmpp module\n     * @return {HTTPoverXMPP}\n     */",
    "meta": {
      "range": [
        38040,
        38107
      ],
      "filename": "NodeSDK.js",
      "lineno": 866,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001403",
        "name": "NodeSDK#httpoverxmpp",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "HTTPoverXMPP"
          ]
        },
        "name": "httpoverxmpp"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the httpoverxmpp module",
    "returns": [
      {
        "type": {
          "names": [
            "HTTPoverXMPP"
          ]
        }
      }
    ],
    "name": "httpoverxmpp",
    "longname": "module:SDK~NodeSDK#httpoverxmpp",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#httpoverxmpp",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {ImsService} im\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the IM module\n     * @return {ImsService}\n     */",
    "meta": {
      "range": [
        30559,
        30605
      ],
      "filename": "NodeSDK.js",
      "lineno": 534,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001141",
        "name": "NodeSDK#im",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "ImsService"
          ]
        },
        "name": "im"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the IM module",
    "returns": [
      {
        "type": {
          "names": [
            "ImsService"
          ]
        }
      }
    ],
    "name": "im",
    "longname": "module:SDK~NodeSDK#im",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#im",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {InvitationsService} invitations\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the invitation module\n     * @return {InvitationsService}\n     */",
    "meta": {
      "range": [
        36610,
        36675
      ],
      "filename": "NodeSDK.js",
      "lineno": 801,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001353",
        "name": "NodeSDK#invitations",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "InvitationsService"
          ]
        },
        "name": "invitations"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the invitation module",
    "returns": [
      {
        "type": {
          "names": [
            "InvitationsService"
          ]
        }
      }
    ],
    "name": "invitations",
    "longname": "module:SDK~NodeSDK#invitations",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#invitations",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {PresenceService} presence\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Presence module\n     * @return {PresenceService}\n     */",
    "meta": {
      "range": [
        31753,
        31811
      ],
      "filename": "NodeSDK.js",
      "lineno": 586,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001181",
        "name": "NodeSDK#presence",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "PresenceService"
          ]
        },
        "name": "presence"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Presence module",
    "returns": [
      {
        "type": {
          "names": [
            "PresenceService"
          ]
        }
      }
    ],
    "name": "presence",
    "longname": "module:SDK~NodeSDK#presence",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#presence",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {Object} profiles\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Profiles module\n     * @return {ProfilesService}\n     */",
    "meta": {
      "range": [
        33751,
        33809
      ],
      "filename": "NodeSDK.js",
      "lineno": 676,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001251",
        "name": "NodeSDK#profiles",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "name": "profiles"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Profiles module",
    "returns": [
      {
        "type": {
          "names": [
            "ProfilesService"
          ]
        }
      }
    ],
    "name": "profiles",
    "longname": "module:SDK~NodeSDK#profiles",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#profiles",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {RBVoiceService} alerts\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the webinar module\n     * @return {RBVoiceService}\n     */",
    "meta": {
      "range": [
        37454,
        37511
      ],
      "filename": "NodeSDK.js",
      "lineno": 840,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001383",
        "name": "NodeSDK#rbvoice",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "RBVoiceService"
          ]
        },
        "name": "alerts"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the webinar module",
    "returns": [
      {
        "type": {
          "names": [
            "RBVoiceService"
          ]
        }
      }
    ],
    "name": "rbvoice",
    "longname": "module:SDK~NodeSDK#rbvoice",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#rbvoice",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {RPCoverXMPPService} rpcoverxmpp\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the rpcoverxmpp module\n     * @return {RPCoverXMPPService}\n     */",
    "meta": {
      "range": [
        38355,
        38420
      ],
      "filename": "NodeSDK.js",
      "lineno": 879,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001413",
        "name": "NodeSDK#rpcoverxmpp",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "RPCoverXMPPService"
          ]
        },
        "name": "rpcoverxmpp"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the rpcoverxmpp module",
    "returns": [
      {
        "type": {
          "names": [
            "RPCoverXMPPService"
          ]
        }
      }
    ],
    "name": "rpcoverxmpp",
    "longname": "module:SDK~NodeSDK#rpcoverxmpp",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#rpcoverxmpp",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {S2SService} s2s\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the s2s module\n     * @return {S2SService}\n     */",
    "meta": {
      "range": [
        36891,
        36940
      ],
      "filename": "NodeSDK.js",
      "lineno": 814,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001363",
        "name": "NodeSDK#s2s",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "S2SService"
          ]
        },
        "name": "s2s"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the s2s module",
    "returns": [
      {
        "type": {
          "names": [
            "S2SService"
          ]
        }
      }
    ],
    "name": "s2s",
    "longname": "module:SDK~NodeSDK#s2s",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#s2s",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {SettingsService} settings\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the Settings module\n     * @return {SettingsService}\n     */",
    "meta": {
      "range": [
        34274,
        34332
      ],
      "filename": "NodeSDK.js",
      "lineno": 700,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001271",
        "name": "NodeSDK#settings",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "SettingsService"
          ]
        },
        "name": "settings"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the Settings module",
    "returns": [
      {
        "type": {
          "names": [
            "SettingsService"
          ]
        }
      }
    ],
    "name": "settings",
    "longname": "module:SDK~NodeSDK#settings",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#settings",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {SDKSTATUSENUM} state\n     * @instance\n     * @nodered true\n     * @description\n     *    Return the state of the SDK (eg: STOPPED, STARTED, CONNECTED, READY, DISCONNECTED, RECONNECTING, FAILED, ERROR)\n     * @return {SDKSTATUSENUM}\n     */",
    "meta": {
      "range": [
        34618,
        34670
      ],
      "filename": "NodeSDK.js",
      "lineno": 712,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001281",
        "name": "NodeSDK#state",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "SDKSTATUSENUM"
          ]
        },
        "name": "state"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Return the state of the SDK (eg: STOPPED, STARTED, CONNECTED, READY, DISCONNECTED, RECONNECTING, FAILED, ERROR)",
    "returns": [
      {
        "type": {
          "names": [
            "SDKSTATUSENUM"
          ]
        }
      }
    ],
    "name": "state",
    "longname": "module:SDK~NodeSDK#state",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#state",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {TasksService} tasks\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the tasks module\n     * @return {TasksService}\n     */",
    "meta": {
      "range": [
        35723,
        35775
      ],
      "filename": "NodeSDK.js",
      "lineno": 762,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001323",
        "name": "NodeSDK#tasks",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "TasksService"
          ]
        },
        "name": "tasks"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the tasks module",
    "returns": [
      {
        "type": {
          "names": [
            "TasksService"
          ]
        }
      }
    ],
    "name": "tasks",
    "longname": "module:SDK~NodeSDK#tasks",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#tasks",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {TelephonyService} telephony\n     * @instance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the telephony module\n     * @return {TelephonyService}\n     */",
    "meta": {
      "range": [
        35439,
        35499
      ],
      "filename": "NodeSDK.js",
      "lineno": 749,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001313",
        "name": "NodeSDK#telephony",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "TelephonyService"
          ]
        },
        "name": "telephony"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the telephony module",
    "returns": [
      {
        "type": {
          "names": [
            "TelephonyService"
          ]
        }
      }
    ],
    "name": "telephony",
    "longname": "module:SDK~NodeSDK#telephony",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#telephony",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {String} version\n     * @instance\n     * @nodered true\n     * @description\n     *      Return the version of the SDK\n     * @return {String}\n     */",
    "meta": {
      "range": [
        34864,
        34920
      ],
      "filename": "NodeSDK.js",
      "lineno": 724,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001291",
        "name": "NodeSDK#version",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "String"
          ]
        },
        "name": "version"
      }
    ],
    "scope": "instance",
    "tags": [
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Return the version of the SDK",
    "returns": [
      {
        "type": {
          "names": [
            "String"
          ]
        }
      }
    ],
    "name": "version",
    "longname": "module:SDK~NodeSDK#version",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "params": [],
    "$longname": "SDK~NodeSDK#version",
    "$kind": "property"
  },
  {
    "comment": "/**\n     * @public\n     * @property {WebinarsService} alerts\n     * @intance\n     * @nodered true\n     * @service true\n     * @description\n     *    Get access to the webinar module\n     * @return {WebinarsService}\n     */",
    "meta": {
      "range": [
        37743,
        37802
      ],
      "filename": "NodeSDK.js",
      "lineno": 853,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100001393",
        "name": "NodeSDK#webinars",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "access": "public",
    "properties": [
      {
        "type": {
          "names": [
            "WebinarsService"
          ]
        },
        "name": "alerts"
      }
    ],
    "tags": [
      {
        "originalTitle": "intance",
        "title": "intance",
        "text": ""
      },
      {
        "originalTitle": "nodered",
        "title": "nodered",
        "text": "true",
        "value": "true"
      },
      {
        "originalTitle": "service",
        "title": "service",
        "text": "true",
        "value": "true"
      }
    ],
    "description": "Get access to the webinar module",
    "returns": [
      {
        "type": {
          "names": [
            "WebinarsService"
          ]
        }
      }
    ],
    "name": "webinars",
    "longname": "module:SDK~NodeSDK#webinars",
    "kind": "member",
    "memberof": "module:SDK~NodeSDK",
    "scope": "instance",
    "params": [],
    "$longname": "SDK~NodeSDK#webinars",
    "$kind": "property"
  },
  {
    "comment": "",
    "meta": {
      "range": [
        2079,
        2096
      ],
      "filename": "NodeSDK.js",
      "lineno": 65,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100000165",
        "name": "SDK",
        "type": "MethodDefinition",
        "paramnames": []
      },
      "vars": {
        "": null
      }
    },
    "undocumented": true,
    "name": "SDK",
    "longname": "module:SDK~SDK",
    "kind": "class",
    "memberof": "module:SDK",
    "scope": "inner",
    "params": [],
    "$longname": "SDK",
    "$kind": "constructor"
  },
  {
    "comment": "/**\n * @public\n * @name NodeSDK\n * @class\n * @description\n * NodeSDK Class\n */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 67,
      "columnno": 0,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "access": "public",
    "name": "NodeSDK",
    "kind": "class",
    "description": "NodeSDK Class",
    "longname": "module:SDK~NodeSDK",
    "scope": "inner",
    "memberof": "module:SDK",
    "$longname": "SDK~NodeSDK",
    "$kind": "class"
  },
  {
    "comment": "",
    "meta": {
      "range": [
        17055,
        19882
      ],
      "filename": "NodeSDK.js",
      "lineno": 219,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {
        "id": "astnode100000180",
        "name": "NodeSDK",
        "type": "MethodDefinition",
        "paramnames": [
          "options"
        ]
      },
      "vars": {
        "": null
      }
    },
    "undocumented": true,
    "name": "NodeSDK",
    "longname": "module:SDK~NodeSDK",
    "kind": "class",
    "memberof": "module:SDK",
    "scope": "inner",
    "params": [],
    "$longname": "SDK~NodeSDK",
    "$kind": "constructor"
  },
  {
    "comment": "/**\n     * @method constructor\n     * @public\n     * @description\n     *      The entry point of the Rainbow Node SDK.\n     * @param {Object} options SDK Startup options of constructor.\n     * @param {string} options.rainbow.host \"official\", Can be \"sandbox\" (developer platform), \"official\" or any other hostname when using dedicated AIO.\n     * @param {string} options.rainbow.mode \"xmpp\", The event mode used to receive the events. Can be `xmpp` or `s2s` (default : `xmpp`).\n     * @param {string} options.xmpp.timeBetweenXmppRequests the time between two xmpp request (avoid burst)\n     * @param {string} options.xmpp.raiseLowLevelXmppInEvent enable the raise of event \"rainbow_onxmmpeventreceived\" when a data is received in xmpp pipe.\n     * @param {string} options.xmpp.xmppRessourceName to define the name of the xmpp resource.\n     * @param {string} options.xmpp.raiseLowLevelXmppOutReq enable the raise of event \"rainbow_onxmmprequestsent\" when a data is sent in xmpp pipe.\n     * @param {string} options.xmpp.maxIdleTimer to define the delay without xmpp exchange after which a ping is sent to server.\n     * @param {string} options.xmpp.maxPingAnswerTimer to define the time to wait the xmpp ping response.\n     * @param {string} options.xmpp.maxPendingAsyncLockXmppQueue the number of xmpp requests waiting for sending.\n     * @param {string} options.s2s.hostCallback \"http://3d260881.ngrok.io\", S2S Callback URL used to receive events on internet.\n     * @param {string} options.s2s.locallistenningport \"4000\", Local port where the events must be forwarded from S2S Callback Web server.\n     * @param {string} options.s2s.expressEngine Local instance for S2S Callback Web server.\n     * @param {string} options.rest.useRestAtStartup enable the REST requests to the rainbow server at startup (used with startWSOnly method). default value is true.\n     * @param {string} options.rest.useGotLibForHttp allows to enable the use of `got` lib for REST requests (esle the old Request lib is used). Default value is true.\n     * @param {string} options.rest.gotOptions, allows to customize the `got` lib for REST requests options. Default value is : </BR>\n     *  {</BR>\n     *  agentOptions: { </BR>\n     * //Keep sockets around in a pool to be used by other requests in the future. Default = false</BR>\n     * keepAlive: true, // ?: boolean or undefined;</BR>\n     * </BR>\n     * //When using HTTP KeepAlive, how often to send TCP KeepAlive packets over sockets being kept alive. Default = 4301.</BR>\n     * //Only relevant if keepAlive is set to true.</BR>\n     * keepAliveMsecs: 4301, // ?: number or undefined;</BR>\n     * </BR>\n     * Maximum number of sockets to allow per host. Default for Node 0.10 is 5, default for Node 0.12 is Infinity</BR>\n     * maxSockets: 26, // ?: number or undefined;</BR>\n     * </BR>\n     * Maximum number of sockets allowed for all hosts in total. Each request will use a new socket until the maximum is reached. Default: Infinity.</BR>\n     * maxTotalSockets: Infinity, // ?: number or undefined;</BR>\n     * </BR>\n     * Maximum number of sockets to leave open in a free state. Only relevant if keepAlive is set to true. Default = 256.</BR>\n     * maxFreeSockets: 1001, // ?: number or undefined;</BR>\n     * </BR>\n     * Socket timeout in milliseconds. This will set the timeout after the socket is connected.</BR>\n     * timeout: 60001 , // ?: number or undefined;</BR>\n     * rejectUnauthorized: true // If not false, the server certificate is verified against the list of supplied CAs. Default: true.\n     * }</BR> ,\n     * gotRequestOptions : {</BR>\n     *  timeout: { // This object describes the maximum allowed time for particular events.</BR>\n     *      lookup: 800, // Starts when a socket is assigned.  Ends when the hostname has been resolved.</BR>\n     *      connect: 1250, // Starts when lookup completes.  Ends when the socket is fully connected.</BR>\n     *      secureConnect: 1250, // Starts when connect completes. Ends when the handshake process completes.</BR>\n     *      socket: 2000, // Starts when the socket is connected. Resets when new data is transferred.</BR>\n     *      send: 90000, // Starts when the socket is connected. Ends when all data have been written to the socket.</BR>\n     *      response: 2000 // Starts when request has been flushed. Ends when the headers are received.</BR>\n     *   }</BR>\n     *  }</BR>\n     * }</BR>\n     *\n     * @param {string} options.credentials.login \"user@xxxx.xxx\", The Rainbow email account to use.\n     * @param {string} options.credentials.password \"XXXXX\", The password.\n     * @param {string} options.application.appID \"XXXXXXXXXXXXXXXXXXXXXXXXXXXX\", The Rainbow Application Identifier.\n     * @param {string} options.application.appSecret \"XXXXXXXXXXXXXXXXXXXXXXXXXXXXX\", The Rainbow Application Secret.\n     * @param {string} options.proxy.host \"xxx.xxx.xxx.xxx\", The proxy address.\n     * @param {string} options.proxy.port xxxx, The proxy port.\n     * @param {string} options.proxy.protocol \"http\", The proxy protocol (note http is used to https also).\n     * @param {string} options.proxy.user \"proxyuser\", The proxy username.\n     * @param {string} options.proxy.password \"XXXXX\", The proxy password.\n     * @param {boolean} options.logs.enableConsoleLogs false, Activate logs on the console.\n     * @param {boolean} options.logs.enableFileLogs false, Activate the logs in a file.\n     * @param {boolean} options.logs.enableEventsLogs: false, Activate the logs to be raised from the events service (with `onLog` listener). Used for logs in connection node in red node contrib.\n     * @param {boolean} options.logs.enableEncryptedLogs: true, Activate the encryption of stanza in logs.\n     * @param {boolean} options.logs.color true, Activate the ansii color in the log (more humain readable, but need a term console or reader compatible (ex : vim + AnsiEsc module)).\n     * @param {string} options.logs.level \"info\", The level of logs. The value can be \"error\", \"warn\", \"info\", \"trace\", \"http\", \"xmpp\", \"debug\", \"internalerror\", \"internal\". These Severities of levels are shown in an inclusive order, so \"error\" level only show \"error\" logs, \"warn\" level only show \"error\" and \"warn\" levels, and so on.\n     * @param {LogLevelAreas} options.logs.areas Areas allow to override the log level for specifics limited area of code.\n     * @param {string} options.logs.customLabel \"MyRBProject\", A label inserted in every lines of the logs. It is usefull if you use multiple SDK instances at a same time. It allows to separate logs in console.\n     * @param {string} options.logs.file.path \"c:/temp/\", Path to the log file.\n     * @param {string} options.logs.file.customFileName \"R-SDK-Node-MyRBProject\", A label inserted in the name of the log file.\n     * @param {string} options.logs.file.zippedArchive false Can activate a zip of file. It needs CPU process, so avoid it.\n     * @param {boolean} options.testOutdatedVersion true, Parameter to verify at startup if the current SDK Version is the lastest published on npmjs.com.\n     * @param {boolean} options.testDNSentry true, Parameter to verify at startup/reconnection that the rainbow server DNS entry name is available.\n     * @param {boolean} options.httpoverxmppserver false, Activate the treatment of Http over Xmpp requests (xep0332).\n     * @param {number} options.intervalBetweenCleanMemoryCache 21600000 (6 hours), There is a cleannig process to reduce memory use and this option allow to modify the interval between it.\n     * @param {string} options.requestsRate.useRequestRateLimiter true, // Allows to use the rate limit of the http requests to server.\n     * @param {string} options.requestsRate.maxReqByIntervalForRequestRate 600, // nb requests during the interval of the rate limit of the http requests to server.\n     * @param {string} options.requestsRate.intervalForRequestRate 60, // nb of seconds used for the calcul of the rate limit of the rate limit of the http requests to server.\n     * @param {string} options.requestsRate.timeoutRequestForRequestRate 600 // nb seconds Request stay in queue before being rejected if queue is full of the rate limit of the http requests to server.\n     * @param {boolean} options.im.sendReadReceipt true, Allow to automatically send back a 'read' status of the received message. Usefull for Bots.\n     * @param {string} options.im.messageMaxLength 16384, Maximum size of messages send by rainbow. Note that this value should not be modified without ALE Agreement. Max stanza's size on server is 18432.\n     * @param {boolean} options.im.sendMessageToConnectedUser false, Forbid the SDK to send a message to the connected user it self. This is to avoid bot loopback.\n     * @param {string} options.im.conversationsRetrievedFormat \"small\", Set the size of the conversation's content retrieved from server. Can be `small`, `medium`, `full`.\n     * @param {string} options.im.storeMessages false, Tell the server to store the message for delay distribution and also for history. Please avoid to set it to true for a bot which will not read anymore the messages. It is a better way to store it in your own CPaaS application.\n     * @param {boolean} options.im.copyMessage to manage if the Messages hint should not be copied to others resources (https://xmpp.org/extensions/xep-0334.html#no-copy) . The default value is true.\n     * @param {string} options.im.nbMaxConversations 15, Parameter to set the maximum number of conversations to keep (defaut value to 15). Old ones are remove from XMPP server with the new method `ConversationsService::removeOlderConversations`.\n     * @param {number} options.im.rateLimitPerHour 1000, Parameter to set the maximum of \"message\" stanza sent to server by hour. Default value is 1000.\n     * @param {string} options.im.messagesDataStore Parameter to override the storeMessages parameter of the SDK to define the behaviour of the storage of the messages (Enum DataStoreType in lib/config/config , default value \"DataStoreType.UsestoreMessagesField\" so it follows the storeMessages behaviour).<br>\n     *                         DataStoreType.NoStore \"no-store\" Tell the server to NOT store the messages for delay distribution or for history of the bot and the contact.<br>\n     *                          DataStoreType.NoPermanentStore \"no-permanent-store\" Tell the server to NOT store the messages for history of the bot and the contact. But being stored temporarily as a normal part of delivery (e.g. if the recipient is offline at the time of sending).<br>\n     *                          DataStoreType.StoreTwinSide \"storetwinside\" The messages are fully stored.<br>\n     *                          DataStoreType.UsestoreMessagesField \"OldstoreMessagesUsed\" to follow the storeMessages SDK's parameter behaviour.\n     * @param {boolean} options.im.autoInitialGetBubbles to allow automatic opening of the bubbles the user is in. Default value is true.\n     * @param {boolean} options.im.autoInitialBubblePresence to allow automatic opening of conversation to the bubbles with sending XMPP initial presence to the room. Default value is true.\n     * @param {number} options.im.maxBubbleJoinInProgress to define the maximum of simultaneous \"send initial presence of the bubbles\".\n     * @param {boolean} options.im.autoInitialBubbleFormat to allow modify format of data received at getting the bubbles. Default value is true.\n     * @param {boolean} options.im.autoInitialBubbleUnsubscribed to allow get the bubbles when the user is unsubscribed form it. Default value is true.\n     * @param {boolean} options.im.autoLoadConversations to activate the retrieve of conversations from the server. The default value is true.\n     * @param {boolean} options.im.autoLoadConversationHistory to activate the retrieve of conversation's messages from the server. The default value is false.\n     * @param {boolean} options.im.autoLoadContacts to activate the retrieve of contacts from roster from the server. The default value is true.\n     * @param {boolean} options.im.autoLoadCallLog to activate the retrieve of calllog from the server. The default value is false.\n     * @param {boolean} options.im.forceHistoryGetContactFromServer Allows to force to retrieve information about contacts when history messages are getted from server.\n     * @param {boolean} options.im.enableCarbon to manage carbon copy of message (https://xmpp.org/extensions/xep-0280.html). The default value is true.     * @param {string} options.im.enablesendurgentpushmessages permit to add <retry-push xmlns='urn:xmpp:hints'/> tag to allows the server sending this messge in push with a small ttl (meaning urgent for apple/google backend) and retry sending it 10 times to increase probability that it is received by mobile device. The default value is false.\n     * @param {boolean} options.im.enablesendurgentpushmessages permit to add <retry-push xmlns='urn:xmpp:hints'/> tag to allows the server sending this messge in push with a small ttl (meaning urgent for apple/google backend) and retry sending it 10 times to increase probability that it is received by mobile device. The default value is false.\n     * @param {boolean} options.im.storeMessagesInConversation Allows to store messages in conversation cache if true else the conversation.messages property stay empty. The default value is true.\n     * @param {number} options.im.maxMessagesStoredInConversation Allows to store messages in conversation with a maximum entries. The default value is 1000. Note: `storeMessagesInConversation` needs to be setted to true to be relevant.\n     * @param {Object} options.servicesToStart <br>\n     *    Services to start. This allows to start the SDK with restricted number of services, so there are less call to API.<br>\n     *    Take care, severals services are linked, so disabling a service can disturb an other one.<br>\n     *    By default all the services are started. Events received from server are not yet filtered.<br>\n     *    So this feature is realy risky, and should be used with much more cautions.<br>\n     *        {<br>\n     *       \"bubbles\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"telephony\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"channels\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"admin\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"fileServer\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"fileStorage\": {<br>\n     *           start_up: true,<br>\n     *       },<br>\n     *       \"calllog\": {<br>\n     *           \"start_up\": true,<br>\n     *       },<br>\n     *       \"favorites\": {<br>\n     *           \"start_up\": true,<br>\n     *\n     */",
    "meta": {
      "filename": "NodeSDK.js",
      "lineno": 78,
      "columnno": 4,
      "path": "/home/jenkins/workspace/cts_Rainbow-Node-SDK_LTSDelivery/lib",
      "code": {}
    },
    "kind": "function",
    "name": "constructor",
    "access": "public",
    "description": "The entry point of the Rainbow Node SDK.",
    "params": [
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "description": "SDK Startup options of constructor.",
        "name": "options"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"official\", Can be \"sandbox\" (developer platform), \"official\" or any other hostname when using dedicated AIO.",
        "name": "options.rainbow.host"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"xmpp\", The event mode used to receive the events. Can be `xmpp` or `s2s` (default : `xmpp`).",
        "name": "options.rainbow.mode"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "the time between two xmpp request (avoid burst)",
        "name": "options.xmpp.timeBetweenXmppRequests"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "enable the raise of event \"rainbow_onxmmpeventreceived\" when a data is received in xmpp pipe.",
        "name": "options.xmpp.raiseLowLevelXmppInEvent"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "to define the name of the xmpp resource.",
        "name": "options.xmpp.xmppRessourceName"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "enable the raise of event \"rainbow_onxmmprequestsent\" when a data is sent in xmpp pipe.",
        "name": "options.xmpp.raiseLowLevelXmppOutReq"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "to define the delay without xmpp exchange after which a ping is sent to server.",
        "name": "options.xmpp.maxIdleTimer"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "to define the time to wait the xmpp ping response.",
        "name": "options.xmpp.maxPingAnswerTimer"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "the number of xmpp requests waiting for sending.",
        "name": "options.xmpp.maxPendingAsyncLockXmppQueue"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"http://3d260881.ngrok.io\", S2S Callback URL used to receive events on internet.",
        "name": "options.s2s.hostCallback"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"4000\", Local port where the events must be forwarded from S2S Callback Web server.",
        "name": "options.s2s.locallistenningport"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "Local instance for S2S Callback Web server.",
        "name": "options.s2s.expressEngine"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "enable the REST requests to the rainbow server at startup (used with startWSOnly method). default value is true.",
        "name": "options.rest.useRestAtStartup"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "allows to enable the use of `got` lib for REST requests (esle the old Request lib is used). Default value is true.",
        "name": "options.rest.useGotLibForHttp"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "allows to customize the `got` lib for REST requests options. Default value is : </BR>\n {</BR>\n agentOptions: { </BR>\n//Keep sockets around in a pool to be used by other requests in the future. Default = false</BR>\nkeepAlive: true, // ?: boolean or undefined;</BR>\n</BR>\n//When using HTTP KeepAlive, how often to send TCP KeepAlive packets over sockets being kept alive. Default = 4301.</BR>\n//Only relevant if keepAlive is set to true.</BR>\nkeepAliveMsecs: 4301, // ?: number or undefined;</BR>\n</BR>\nMaximum number of sockets to allow per host. Default for Node 0.10 is 5, default for Node 0.12 is Infinity</BR>\nmaxSockets: 26, // ?: number or undefined;</BR>\n</BR>\nMaximum number of sockets allowed for all hosts in total. Each request will use a new socket until the maximum is reached. Default: Infinity.</BR>\nmaxTotalSockets: Infinity, // ?: number or undefined;</BR>\n</BR>\nMaximum number of sockets to leave open in a free state. Only relevant if keepAlive is set to true. Default = 256.</BR>\nmaxFreeSockets: 1001, // ?: number or undefined;</BR>\n</BR>\nSocket timeout in milliseconds. This will set the timeout after the socket is connected.</BR>\ntimeout: 60001 , // ?: number or undefined;</BR>\nrejectUnauthorized: true // If not false, the server certificate is verified against the list of supplied CAs. Default: true.\n}</BR> ,\ngotRequestOptions : {</BR>\n timeout: { // This object describes the maximum allowed time for particular events.</BR>\n     lookup: 800, // Starts when a socket is assigned.  Ends when the hostname has been resolved.</BR>\n     connect: 1250, // Starts when lookup completes.  Ends when the socket is fully connected.</BR>\n     secureConnect: 1250, // Starts when connect completes. Ends when the handshake process completes.</BR>\n     socket: 2000, // Starts when the socket is connected. Resets when new data is transferred.</BR>\n     send: 90000, // Starts when the socket is connected. Ends when all data have been written to the socket.</BR>\n     response: 2000 // Starts when request has been flushed. Ends when the headers are received.</BR>\n  }</BR>\n }</BR>\n}</BR>",
        "name": "options.rest.gotOptions,"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"user@xxxx.xxx\", The Rainbow email account to use.",
        "name": "options.credentials.login"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"XXXXX\", The password.",
        "name": "options.credentials.password"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"XXXXXXXXXXXXXXXXXXXXXXXXXXXX\", The Rainbow Application Identifier.",
        "name": "options.application.appID"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"XXXXXXXXXXXXXXXXXXXXXXXXXXXXX\", The Rainbow Application Secret.",
        "name": "options.application.appSecret"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"xxx.xxx.xxx.xxx\", The proxy address.",
        "name": "options.proxy.host"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "xxxx, The proxy port.",
        "name": "options.proxy.port"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"http\", The proxy protocol (note http is used to https also).",
        "name": "options.proxy.protocol"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"proxyuser\", The proxy username.",
        "name": "options.proxy.user"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"XXXXX\", The proxy password.",
        "name": "options.proxy.password"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "false, Activate logs on the console.",
        "name": "options.logs.enableConsoleLogs"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "false, Activate the logs in a file.",
        "name": "options.logs.enableFileLogs"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "false, Activate the logs to be raised from the events service (with `onLog` listener). Used for logs in connection node in red node contrib.",
        "name": "options.logs.enableEventsLogs:"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "true, Activate the encryption of stanza in logs.",
        "name": "options.logs.enableEncryptedLogs:"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "true, Activate the ansii color in the log (more humain readable, but need a term console or reader compatible (ex : vim + AnsiEsc module)).",
        "name": "options.logs.color"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"info\", The level of logs. The value can be \"error\", \"warn\", \"info\", \"trace\", \"http\", \"xmpp\", \"debug\", \"internalerror\", \"internal\". These Severities of levels are shown in an inclusive order, so \"error\" level only show \"error\" logs, \"warn\" level only show \"error\" and \"warn\" levels, and so on.",
        "name": "options.logs.level"
      },
      {
        "type": {
          "names": [
            "LogLevelAreas"
          ]
        },
        "description": "Areas allow to override the log level for specifics limited area of code.",
        "name": "options.logs.areas"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"MyRBProject\", A label inserted in every lines of the logs. It is usefull if you use multiple SDK instances at a same time. It allows to separate logs in console.",
        "name": "options.logs.customLabel"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"c:/temp/\", Path to the log file.",
        "name": "options.logs.file.path"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"R-SDK-Node-MyRBProject\", A label inserted in the name of the log file.",
        "name": "options.logs.file.customFileName"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "false Can activate a zip of file. It needs CPU process, so avoid it.",
        "name": "options.logs.file.zippedArchive"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "true, Parameter to verify at startup if the current SDK Version is the lastest published on npmjs.com.",
        "name": "options.testOutdatedVersion"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "true, Parameter to verify at startup/reconnection that the rainbow server DNS entry name is available.",
        "name": "options.testDNSentry"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "false, Activate the treatment of Http over Xmpp requests (xep0332).",
        "name": "options.httpoverxmppserver"
      },
      {
        "type": {
          "names": [
            "number"
          ]
        },
        "description": "21600000 (6 hours), There is a cleannig process to reduce memory use and this option allow to modify the interval between it.",
        "name": "options.intervalBetweenCleanMemoryCache"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "true, // Allows to use the rate limit of the http requests to server.",
        "name": "options.requestsRate.useRequestRateLimiter"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "600, // nb requests during the interval of the rate limit of the http requests to server.",
        "name": "options.requestsRate.maxReqByIntervalForRequestRate"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "60, // nb of seconds used for the calcul of the rate limit of the rate limit of the http requests to server.",
        "name": "options.requestsRate.intervalForRequestRate"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "600 // nb seconds Request stay in queue before being rejected if queue is full of the rate limit of the http requests to server.",
        "name": "options.requestsRate.timeoutRequestForRequestRate"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "true, Allow to automatically send back a 'read' status of the received message. Usefull for Bots.",
        "name": "options.im.sendReadReceipt"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "16384, Maximum size of messages send by rainbow. Note that this value should not be modified without ALE Agreement. Max stanza's size on server is 18432.",
        "name": "options.im.messageMaxLength"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "false, Forbid the SDK to send a message to the connected user it self. This is to avoid bot loopback.",
        "name": "options.im.sendMessageToConnectedUser"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "\"small\", Set the size of the conversation's content retrieved from server. Can be `small`, `medium`, `full`.",
        "name": "options.im.conversationsRetrievedFormat"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "false, Tell the server to store the message for delay distribution and also for history. Please avoid to set it to true for a bot which will not read anymore the messages. It is a better way to store it in your own CPaaS application.",
        "name": "options.im.storeMessages"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to manage if the Messages hint should not be copied to others resources (https://xmpp.org/extensions/xep-0334.html#no-copy) . The default value is true.",
        "name": "options.im.copyMessage"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "15, Parameter to set the maximum number of conversations to keep (defaut value to 15). Old ones are remove from XMPP server with the new method `ConversationsService::removeOlderConversations`.",
        "name": "options.im.nbMaxConversations"
      },
      {
        "type": {
          "names": [
            "number"
          ]
        },
        "description": "1000, Parameter to set the maximum of \"message\" stanza sent to server by hour. Default value is 1000.",
        "name": "options.im.rateLimitPerHour"
      },
      {
        "type": {
          "names": [
            "string"
          ]
        },
        "description": "Parameter to override the storeMessages parameter of the SDK to define the behaviour of the storage of the messages (Enum DataStoreType in lib/config/config , default value \"DataStoreType.UsestoreMessagesField\" so it follows the storeMessages behaviour).<br>\n                        DataStoreType.NoStore \"no-store\" Tell the server to NOT store the messages for delay distribution or for history of the bot and the contact.<br>\n                         DataStoreType.NoPermanentStore \"no-permanent-store\" Tell the server to NOT store the messages for history of the bot and the contact. But being stored temporarily as a normal part of delivery (e.g. if the recipient is offline at the time of sending).<br>\n                         DataStoreType.StoreTwinSide \"storetwinside\" The messages are fully stored.<br>\n                         DataStoreType.UsestoreMessagesField \"OldstoreMessagesUsed\" to follow the storeMessages SDK's parameter behaviour.",
        "name": "options.im.messagesDataStore"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to allow automatic opening of the bubbles the user is in. Default value is true.",
        "name": "options.im.autoInitialGetBubbles"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to allow automatic opening of conversation to the bubbles with sending XMPP initial presence to the room. Default value is true.",
        "name": "options.im.autoInitialBubblePresence"
      },
      {
        "type": {
          "names": [
            "number"
          ]
        },
        "description": "to define the maximum of simultaneous \"send initial presence of the bubbles\".",
        "name": "options.im.maxBubbleJoinInProgress"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to allow modify format of data received at getting the bubbles. Default value is true.",
        "name": "options.im.autoInitialBubbleFormat"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to allow get the bubbles when the user is unsubscribed form it. Default value is true.",
        "name": "options.im.autoInitialBubbleUnsubscribed"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to activate the retrieve of conversations from the server. The default value is true.",
        "name": "options.im.autoLoadConversations"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to activate the retrieve of conversation's messages from the server. The default value is false.",
        "name": "options.im.autoLoadConversationHistory"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to activate the retrieve of contacts from roster from the server. The default value is true.",
        "name": "options.im.autoLoadContacts"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to activate the retrieve of calllog from the server. The default value is false.",
        "name": "options.im.autoLoadCallLog"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "Allows to force to retrieve information about contacts when history messages are getted from server.",
        "name": "options.im.forceHistoryGetContactFromServer"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "to manage carbon copy of message (https://xmpp.org/extensions/xep-0280.html). The default value is true.     * @param {string} options.im.enablesendurgentpushmessages permit to add <retry-push xmlns='urn:xmpp:hints'/> tag to allows the server sending this messge in push with a small ttl (meaning urgent for apple/google backend) and retry sending it 10 times to increase probability that it is received by mobile device. The default value is false.",
        "name": "options.im.enableCarbon"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "permit to add <retry-push xmlns='urn:xmpp:hints'/> tag to allows the server sending this messge in push with a small ttl (meaning urgent for apple/google backend) and retry sending it 10 times to increase probability that it is received by mobile device. The default value is false.",
        "name": "options.im.enablesendurgentpushmessages"
      },
      {
        "type": {
          "names": [
            "boolean"
          ]
        },
        "description": "Allows to store messages in conversation cache if true else the conversation.messages property stay empty. The default value is true.",
        "name": "options.im.storeMessagesInConversation"
      },
      {
        "type": {
          "names": [
            "number"
          ]
        },
        "description": "Allows to store messages in conversation with a maximum entries. The default value is 1000. Note: `storeMessagesInConversation` needs to be setted to true to be relevant.",
        "name": "options.im.maxMessagesStoredInConversation"
      },
      {
        "type": {
          "names": [
            "Object"
          ]
        },
        "description": "<br>\n   Services to start. This allows to start the SDK with restricted number of services, so there are less call to API.<br>\n   Take care, severals services are linked, so disabling a service can disturb an other one.<br>\n   By default all the services are started. Events received from server are not yet filtered.<br>\n   So this feature is realy risky, and should be used with much more cautions.<br>\n       {<br>\n      \"bubbles\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"telephony\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"channels\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"admin\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"fileServer\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"fileStorage\": {<br>\n          start_up: true,<br>\n      },<br>\n      \"calllog\": {<br>\n          \"start_up\": true,<br>\n      },<br>\n      \"favorites\": {<br>\n          \"start_up\": true,<br>",
        "name": "options.servicesToStart"
      }
    ],
    "longname": "module:SDK~constructor",
    "scope": "inner",
    "memberof": "module:SDK",
    "$longname": "SDK~constructor",
    "$kind": "method"
  }
]