Technical¶
Components¶
- Table and Field Definitions Lime CRM
- Frontend with Lime Web Components (webclient)
- Custom endpoints
- Userlike
Table and Field Definitions Lime CRM¶
The installation of Lime Chat will create the ulconversation
table and add a ulconversation
field on the table specified in the installer config. If a document limetype is specified, a ul_messageid
field will be added to the document table.
Below is an example of the database structure changes when the installation targets the Helpdesk limetype.
Table database name: ulconversation
Field | Field type | Required | Read only | Invisible | Note |
---|---|---|---|---|---|
conversationid | Integer | No | Yes | No | |
link | Link (512) | No | Yes | No | |
contactid | Text (256) | No | Yes | On Forms | |
helpdesk | Relation | - | Yes | No | |
startedtime | Date and Time | No | Yes | No | |
contactfirstmessagetime | Date and Time | No | Yes | No |
Warning
The entire ulconversation
table should be invisible
Table database name: helpdesk
Field | Field type | Required | Read only | Invisible | Note |
---|---|---|---|---|---|
ulconversation | Relation | - | No | No |
Table database name: document
Field | Field type | Required | Read only | Invisible | Note |
---|---|---|---|---|---|
ul_messageid | Text (256) | No | Yes | Yes | Used for media files import. |
Lime Web Components¶
Hijacks the create new conversation button to link a new conversation in Userlike to an existing limeobject.
Custom Endpoints¶
Userlike¶
POST¶
/userlike/
Creates a history note of the transcript and connects it to the created instance object.
Payload (for full example see the chat_session_end
example here):
{
"id": 1,
"topics": [{"text": "lead"}],
"contact": {
"name": "example",
"email": "[email protected]"
},
"transcript": [
{
"body": "Hello, you're talking to Lisa Abel. How can I help?",
"operator_name": "Lisa Abel"
},
{
"body": "hi",
"operator_name": ""
}
]
}
Response:
{"url": "<URL_TO_INSTANCE_OBJECT>"}
Conversation¶
POST¶
/conversation/
Connect a conversation to a limeobject.
Query parameters:
{
"limetype": "helpdesk",
"limeobjectId": 1500,
"conversationId": "1000"
}
Response:
{
"limetype": "helpdesk",
"limeobjectId": 1500
}
Translations¶
GET¶
/translations/
Gets all translations for the limepkg-userlike
package. Language is based on the Accept-Language
header.
Userlike¶
Please contact Userlike or see their documentation for technical information about Lime Chat from the Userlike point of view.