OnImConnectorMessageUpdate Event

Scope: imconnector

Who can subscribe: any user

The OnImConnectorMessageUpdate event is triggered when a message is modified in an open line of Bitrix24, and the change is sent to the external system channel via a custom connector.

The event does not trigger:

  • for built-in connectors
  • when a message sent from the external system channel is modified

After processing the event, call the imconnector.send.status.delivery method to mark the message as successfully updated in the external system channel.

Events will not be sent to the application until the installation is complete. Check the application installation

What the Handler Receives

Data is transmitted as a POST request

{
            "event": "ONIMCONNECTORMESSAGEUPDATE",
            "event_handler_id": 557,
            "data": {
                "CONNECTOR": "myconnector",
                "LINE": 107,
                "MESSAGES": [
                    {
                        "im": {
                            "chat_id": 1807,
                            "message_id": 86501
                        },
                        "message": {
                            "id": ["ext-msg-005"],
                            "text": "[b]Samantha Johnson:[/b][br] What questions do you have?"
                        },
                        "chat": {
                            "id": "channel-123"
                        }
                    }
                ]
            },
            "ts": 1773760030,
            "auth": {
                "access_token": "2e7cb0071b04400007eb2a255d2a542d6d0ca03ceb",
                "expires": 1773763630,
                "expires_in": 3600,
                "scope": "imconnector, imopenlines",
                "domain": "some-domain.bitrix24.com",
                "server_endpoint": "https://oauth.bitrix24.tech/rest/",
                "status": "F",
                "client_endpoint": "https://some-domain.bitrix24.com/rest/",
                "member_id": "bac1cd5c8940947a75e0d71b1a84e348",
                "user_id": 27,
                "application_token": "831c76b092f9f135d9b6b36c3a720757"
            }
        }
        

Parameter
type

Description

event
string

Symbolic event code.

In this case - ONIMCONNECTORMESSAGEUPDATE

event_handler_id
integer

Event handler identifier

data
object

Object with parameters of the outgoing message change event.

The structure is described below

ts
timestamp

Date and time the event was sent from the event queue

auth
object

Object with authorization parameters and information about the account where the event occurred.

The structure is described below

Data Parameter

Parameter
type

Description

CONNECTOR
string

Connector identifier

LINE
integer

Open line identifier

MESSAGES
object[]

Array of messages that were modified in Bitrix24 and sent to the external system channel.

The structure of the array element is described below

MESSAGES Array Element

Parameter
type

Description

im
object

Object with message identifiers in Bitrix24.

The structure is described below

message
object

Object with data of the modified message for the external system channel.

The structure is described below

chat
object

Object with the chat identifier in the external system channel.

The structure is described below

im Parameter

Parameter
type

Description

chat_id
integer

Chat identifier in Bitrix24

message_id
integer

Identifier of the modified message in Bitrix24

message Parameter

Parameter
type

Description

id
string[]

Array of identifiers of the modified message in the external system channel

text
string

New text of the message in the format provided in the event

chat Parameter

Parameter
type

Description

id
string

Identifier of the chat in the external system channel

auth Parameter

Required parameters are marked with *

Name
type

Description

access_token
string

Authorization token OAuth 2.0

expires_in
integer

Time in seconds until the token expires

scope*
string

Scope under which the event occurred

domain*
string

Address of Bitrix24 where the event occurred

server_endpoint*
string

Address of the Bitrix24 authorization server needed to refresh OAuth 2.0 tokens

status*
string

Status of the application that subscribed to this event:

client_endpoint*
string

Common path for REST API method calls for Bitrix24 where the event occurred

member_id*
string

Identifier of Bitrix24 where the event occurred

refresh_token
string

Token for extending authorization OAuth 2.0

application_token*
string

Token for secure event handling

Authorization tokens are not always passed to the event handler. If the hit that initiated the event could not be linked to a specific Bitrix24 user, the tokens are not passed. Always check the contents of the auth key in the code.

It is recommended to store tokens obtained earlier during the application installation. Use them when working with the application interface in the form of embeds, widgets, and so on.

Continue Learning