Integration channel (integration_point)
Description
The integration channel basically defines a point for handling HTTP(s) webhooks coming from external systems, as well as a point for websocket connections with predefined permissions.
In some cases, the integration channel defines the URL of the external system to send HTTP requests to it from the scripts.
Supports streaming asynchronous processing of messages coming from websocket connections and sending response messages and events to them.
Supports the creation of project APIs using service scripts.
Websocket-connection to the integration channel is made by specifying token_local directly in the URL or in the Authorization header. Read more.
Http(s)-connection to the integration channel is made with token_local. Used for accessing project API, and for downloading call recordings.
Limitations
-
The collection is available in any domain.
-
Licensed by a quantitative parameter: a license per channel type is consumed.
Fields
{
"id": uuid,
"code": str,
"type": str,
"token_local": str,
"token_remote": str,
"token_remote2": str,
"url": str,
"recv_svcscriptcode": str,
"send_svcscriptcode": str,
"recv_svcscriptcode_ws": str,
"send_svcscriptcode_ws": str,
"opts": {
"allow_files_api": bool,
"comment": str,
"issync": bool,
"recv_timeout": int,
"roles": ["special01"],
"userid": "37a85e8-1a01-835f-4490-e78015a20052",
"title": str
},
"ext": {
"ct": date,
"lwt": date
}
}
Specification | Description |
---|---|
Field: |
Identifier. Can be specified at creation, otherwise generated by the system. |
Field: |
Code. Used to associate with other entities and script components. |
Field: |
Integration Channel Type. |
Local token. |
|
Field: |
External token. |
Field: |
Optional external token. |
The mask of the IP address of the request sender for which API access is allowed through this token.
|
|
The code of the service script that is run to process an incoming HTTP request using token_local. Enables the realization of project API. Endpoint to refer to the script: The following parameters are passed to the service script as input (available in expressions using the method startparam(N)):
The service script created local string variables whose values define the HTTP response:
The format of the body can be arbitrary and is defined by the header Content-Type. |
|
Field: |
Code of the service script run to send an HTTP request to the channel from the chatbot scripts |
The code of the service script to be run to process an incoming websocket message using the token_local. Enables the realization of project API. As part of the websocket connection to tokenize a method to invoke the script API: ["message", {"qid": …, "data": …, …}]. The following parameters are passed to the service script as input (available in expressions using the method startparam(N)):
The service script created local string variables whose values define the HTTP response:
Response Message Format:
[ "message_result", { "qid": ..., "success": true, "data": ... } ] |
|
Field: |
Code of the service script run to send a websocket message to the channel from the chatbot scripts |
Field: |
Data Provider URL. Used when constructing full URLs in the "Webquery" component of "Webquery" scripts. Relevant for domains with solenoid types that exclude the possibility of specifying full URLs in the "Webquery" component properties"__. |
Field: |
|
Field: |
Authorization to work with files. Available only for type= |
Field: |
Allow websocket connections to work with specific Websocket Token-APIs. You can list specific ones, or allow for all by specifying |
Field: |
Arbitrary comment |
Field: |
Switch on synchronous script startup mode, |
Field: |
Maximum recv_svcscript execution time in seconds. 0 means that the value defined by the web server (10 seconds) will be applied. The maximum allowed value is 60 sec. |
Field: |
Defines the composition of roles for authorization through the service IAM |
Field: |
Identifier of the system user on whose behalf the queries are executed. The roles of this user are also applied. |
Field: |
Arbitrary header |
Field: |
Allows you to extend the compound with arbitrary keys and values |
Field: |
Object creation time |
Field: |
Time of last modification of the object |
Types of integration channel
Value | Description |
---|---|
|
General purpose integration channel. Used in:
|
|
Integration channel for subscribers to system events. To each integration channel, regardless of the number of connections and subscriptions, each event is sent no more than 1 time. The recv_svcscriptcode, recv_svcscriptcode_ws, send_svcscriptcode, and send_svcscriptcode_ws fields are not used. |
|
Defined by the domain soluuon. The composition of other types of integration channels and service scripts are contained in the solusenet assemblies. The nature of operation is similar to the |