LineSessionItem

Type parameters

Hierarchy

Properties

Readonly code

code: string

App code of the URL’s target (the app’s code).

Readonly data

data: Based<Partial<LineSessionData>>

Values of object’s fields.

Readonly fields

fields: Readonly<object>

Description of the object’s fields.

Readonly id

id: string

ID of the URL’s target.

Readonly namespace

namespace: string

Link target namespace (the code of the app's workspace).

Methods

assignToBot

  • assignToBot(silent?: undefined | false | true): Promise<void>
  • The method assigns a bot to a session.

    Parameters

    • Optional silent: undefined | false | true

    Returns Promise<void>

assignToOperator

  • assignToOperator(operator: UserItemRef): Promise<void>

assignToOperatorGroup

changeLine

  • The method moves the session to another Live Chat.

    The session is added to the target Live Chat queue: the assigned operator and operator group are reset. This method is supported only for channels of type livechat and internal (see LineChannelType). The target Live Chat must not be the same as the current one.

    Parameters

    Returns Promise<void>

close

  • close(): Promise<void>
  • The method is used to close an active session.

    Note that the script should be executed on behalf of the operator or bot assigned to the sessions. Other users cannot close the session.

    await Context.data.session.close();
    

    Returns Promise<void>

fetch

getAllMessages

  • getAllMessages(from?: undefined | number, size?: undefined | number): Promise<LineMessageItem[]>
  • The method returns all messages in a session.

    Parameters

    • Optional from: undefined | number
    • Optional size: undefined | number

    Returns Promise<LineMessageItem[]>

getLastMessage

  • The method returns the last message in a session.

    const lastMessage = await Context.data.session. getLastMessage();
    

    Returns Promise<LineMessageItem>

markAsSpam

  • markAsSpam(): Promise<void>
  • The method marks a session as spam.

    The data (metrics) of a session marked as spam are not taken into account when generating reports. The method is not available for the following types of channels: internal and support (see LineChannelType).

    await Context.data.session.markAsSpam();
    

    Returns Promise<void>

normalize

  • normalize(): void
  • Delete duplicate data in arrays.

    The method deletes duplicates in fields that store arrays of links to system objects (users, files, app items, or documents). For example, you can call this method after bulk editing data within an object.

    const  app1 = await Context.data.app1.fetch();
    const app2 = await Context.data.app2 .fetch(); 
    app1.data.executors.push(app2.data.executors); 
    app1.normalize();  
    // Now we need to go over the elements in the new array 
    app1.data.executors .forEach( ... ); 
    

    Returns void

save

  • save(): Promise<void>
  • The method saves the session object.

    This method is used to update the current session. The following fields are editable: __name and _apps.

        const session = await  Context.data.session.fetch();
        session.data.__name = 'new session name';  
        session.data._apps.push(Context.data.lead); 
        await session.save();  
    

    Returns Promise<void>

sendSystemMessage

setPriority

  • The method is used to set a session’s priority.

    await Context.data.session.setPriority(LineSessionPriority. Low);
    

    Parameters

    Returns Promise<void>

unmarkAsSpam

  • unmarkAsSpam(): Promise<void>
  • The method deletes a session from spam.

    The session is assigned to the operator who previously worked on it or added to the queue.

    await Context.data.session.unmarkAsSpam();
    

    Returns Promise<void>