# Module events description ## Structure | field | required | description | | ----- | -------- | ------------- | | name | true | Name of event | | update | false | If exists, then update special fields in internal package. ([Update object structure](/UKz2SZrkSt-XwgG8iFt0zA)) > Also can include custom fields for special events > Example: ``` { name: String, ?update: updateObject } ``` ## List of events | API | Name of event | Description | | :--: | ---------------------- | ----------- | | null | beginProcess || | null | endProcess || | null | changeConversationFlow || | null | startCall || | null | endCall || | null | endSession || | null | sendMessage || | null | timeoutSession || | null | changeEndMessage || ### Send message This event using for sending message to entity. > If this event catch pack without messageId, then it is new message. This message will be sended fron bot entity > | field | description | | ----- | ----------- | | message | Standart internal message object [InternalMessageObject](/@9pOGaLzOSNmFnnEG6Et3LA/HJ-gRcjrS) | Example: ``` { name: 'sendMessage', message: InternalMessageObject } ``` ### Session timeout This event using for sending message to entity. | field | description | | ----- | ----------- | | value | Value on which must be changed session.sessionTtl field| Example: ``` { name: 'timeoutSession', value: Number } ``` ### Change EndMessage text This event using for change [End message](/0L723p8hTqqlQpKOXa8pZw) for special entity in session. | field | description | | ----- | ----------- | | entityId | | | message | Standart internal message object [InternalMessageObject](/@9pOGaLzOSNmFnnEG6Et3LA/HJ-gRcjrS) | Example: ``` { name: 'sendMessage', entityId: Number, message: String } ``` ### Process end In this case we set for all entities is session default end session message Example: ``` { name: 'endProcess', } ``` ### Start call This event change session.typId and sends this message further along the logic of the bot | field | description | | ----- | ----------- | | value | Object with special data for end platform | Example: ``` { name: 'startCall', value: Object } ```