Skip to content

Commit 0219b25

Browse files
feat: #1 Add end_user_email and end_user_phone columns to chat table (buerokratt#139)
* feat: #1 Add end_user_email and end_user_phone columns to chat table * feat: #1 Add end_user_email and end_user_phone variables to everything chat related in dmapper, resql, ruuter * feat: #1 Add sql to insert end_user_email and end_user_phone * feat: #1 Set end_user_email and end_user_phone defaultValue as empty string * feat: #1 Remove created value inserting when updating end_user_email and end_user_phone * feat: #1 Add end-user-email-phone post conf * feat: #1 Add period to end-user-email-phone post conf success message * feat: #1 Remove comment from end-user-email-phone post conf * chore: #1 Add missing " to endUserEmail and endUserPhone in reflect_init_chat.hbs * fix: buerokratt#25 Fix notification dmapper templates * fix: buerokratt#25 Fix notification ruuter confs * fix: buerokratt#25 Fix notification dmapper templates * fix: #1 Update endUserEmail and endUserPhone with one request, so only one new line is created in database * fix: #1 Update endUserEmail and endUserPhone with one request, so only one new line is created in database
1 parent ba64e89 commit 0219b25

32 files changed

+198
-16
lines changed

DSL.DMapper/notification_new_chat.hbs

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
Uus vestlus aadressil {{endUserUrl}}, seadmelt {{endUserOs}}.
2-
3-
{{authorTimestamp}}: {{content}}.
1+
{
2+
"notification": "Uus vestlus aadressil {{endUserUrl}}, seadmelt {{endUserOs}}.\n{{authorTimestamp}}: {{content}}."
3+
}
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
1-
Kasutaja {{from}} on suunanud teile uue vestluse {{chatId}}.
1+
{
2+
"notification": "Kasutaja {{from}} on suunanud teile uue vestluse {{chatId}}."
3+
}

DSL.DMapper/reflect_destination_forward.hbs

+2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
{
22
"messages": {{{messages}}},
3+
"endUserEmail": "{{endUserEmail}}",
4+
"endUserPhone": "{{endUserPhone}}",
35
"endUserOs": "{{endUserOs}}",
46
"endUserUrl": "{{endUserUrl}}",
57
"destinationChatId": "{{destinationChatId}}",

DSL.DMapper/reflect_init_chat.hbs

+2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
"authorTimestamp": "{{authorTimestamp}}",
55
"content": "{{{escape_special_chars content}}}",
66
"endUserId": "{{endUserId}}",
7+
"endUserEmail": "{{endUserEmail}}",
8+
"endUserPhone": "{{endUserPhone}}",
79
"endUserOs": "{{endUserOs}}",
810
"endUserUrl": "{{endUserUrl}}",
911
"forwardedByUser": "{{forwardedByUser}}",

DSL.DMapper/return_first_chat_from_array.hbs

+2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@
1111
"receivedFrom": "{{chatArray.0.receivedFrom}}",
1212
"receivedFromName": "{{chatArray.0.receivedFromName}}",
1313
"status": "{{chatArray.0.status}}",
14+
"endUserEmail": "{{chatArray.0.endUserEmail}}",
15+
"endUserPhone": "{{chatArray.0.endUserPhone}}",
1416
"endUserOs": "{{chatArray.0.endUserOs}}",
1517
"endUserUrl": "{{chatArray.0.endUserUrl}}",
1618
"lastMessage": "{{{escape_special_chars chatArray.0.lastmessage}}}",
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
5+
http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-4.1.xsd">
6+
7+
<changeSet id="20230202180000" author="Net Group">
8+
<addColumn tableName="chat">
9+
<column name="end_user_email" type="varchar" defaultValue="" />
10+
<column name="end_user_phone" type="varchar" defaultValue="" />
11+
</addColumn>
12+
</changeSet>
13+
</databaseChangeLog>

DSL.Resql/get-active-chat-by-id.sql

+2
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ SELECT c.base_id AS id,
77
c.end_user_first_name,
88
c.end_user_last_name,
99
c.status,
10+
c.end_user_email,
11+
c.end_user_phone,
1012
c.end_user_os,
1113
c.end_user_url,
1214
c.feedback_text,

DSL.Resql/get-chat-by-id.sql

+2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ SELECT c.base_id AS id,
55
c.end_user_first_name,
66
c.end_user_last_name,
77
c.status,
8+
c.end_user_email,
9+
c.end_user_phone,
810
c.end_user_os,
911
c.end_user_url,
1012
c.created,

DSL.Resql/get-cs-all-active-chats.sql

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ SELECT c.base_id AS id,
1010
c.created,
1111
c.updated,
1212
c.ended,
13+
c.end_user_email,
14+
c.end_user_phone,
1315
c.end_user_os,
1416
c.end_user_url,
1517
c.external_id,

DSL.Resql/get-cs-all-ended-chats.sql

+4
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,10 @@ SELECT c.base_id AS id,
66
c.end_user_id,
77
c.end_user_first_name,
88
c.end_user_last_name,
9+
c.end_user_email,
10+
c.end_user_phone,
11+
c.end_user_os,
12+
c.end_user_url,
913
c.status,
1014
c.created,
1115
c.updated,

DSL.Resql/init-chat.sql

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
44
VALUES (:id,
55
(CASE
@@ -25,7 +25,7 @@ VALUES (:id,
2525
WHEN (:ended = '') THEN null
2626
WHEN (:ended = 'null') THEN null
2727
ELSE :ended END):: timestamp with time zone,
28-
:endUserOs, :endUserUrl, :feedbackText, :feedbackRating, :externalId, :forwardedTo, :forwardedToName,
28+
:endUserEmail, :endUserPhone, :endUserOs, :endUserUrl, :feedbackText, :feedbackRating, :externalId, :forwardedTo, :forwardedToName,
2929
:receivedFrom, :receivedFromName, (CASE
3030
WHEN ((SELECT value
3131
FROM configuration

DSL.Resql/insert-chat-customer-support-by-customer-support-id.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
44
SELECT base_id,
55
'',
@@ -10,6 +10,8 @@ SELECT base_id,
1010
status,
1111
created,
1212
ended,
13+
end_user_email,
14+
end_user_phone,
1315
end_user_os,
1416
end_user_url,
1517
feedback_text,

DSL.Resql/insert-chat-ended-by-last-message-datetime.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ WITH active_chats AS (SELECT c.id
6666
ON c.base_id = m.chat_base_id)
6767
INSERT
6868
INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
69-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
69+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
7070
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name)
7171
SELECT c.base_id,
7272
c.customer_support_id,
@@ -77,6 +77,8 @@ SELECT c.base_id,
7777
:newStatus,
7878
c.created,
7979
:currentDatetime::timestamp with time zone,
80+
c.end_user_email,
81+
c.end_user_phone,
8082
c.end_user_os,
8183
c.end_user_url,
8284
c.feedback_text,

DSL.Resql/insert-chat.sql

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
44
VALUES (:id, :customerSupportId, :customerSupportDisplayName, :endUserId, :endUserFirstName,
55
:endUserLastName, :status, :created::timestamp with time zone,
66
(CASE WHEN (:ended = '') THEN null WHEN (:ended = 'null') THEN null ELSE :ended END)::timestamp with time zone,
7-
:endUserOs, :endUserUrl, :feedbackText, :feedbackRating, :externalId, :forwardedTo, :forwardedToName,
7+
:endUserEmail, :endUserPhone, :endUserOs, :endUserUrl, :feedbackText, :feedbackRating, :externalId, :forwardedTo, :forwardedToName,
88
:receivedFrom, :receivedFromName, (CASE WHEN (:csaTitle = 'null') THEN null WHEN (:csaTitle = '') THEN null ELSE :csaTitle END));

DSL.Resql/remove-agent-from-chats.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, csa_title, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name)
44
SELECT base_id,
55
'',
@@ -11,6 +11,8 @@ SELECT base_id,
1111
status,
1212
:created::timestamp with time zone,
1313
ended,
14+
end_user_email,
15+
end_user_phone,
1416
end_user_os,
1517
end_user_url,
1618
feedback_text,

DSL.Resql/remove_cs_agent_from_chat.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, csa_title, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name)
44
SELECT base_id,
55
'',
@@ -11,6 +11,8 @@ SELECT base_id,
1111
status,
1212
created,
1313
ended,
14+
end_user_email,
15+
end_user_phone,
1416
end_user_os,
1517
end_user_url,
1618
feedback_text,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
3+
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
4+
SELECT base_id,
5+
customer_support_id,
6+
customer_support_display_name,
7+
end_user_id,
8+
end_user_first_name,
9+
end_user_last_name,
10+
status,
11+
created::timestamp with time zone,
12+
ended::timestamp with time zone,
13+
:endUserEmail,
14+
:endUserPhone,
15+
end_user_os,
16+
end_user_url,
17+
feedback_text,
18+
feedback_rating,
19+
external_id,
20+
forwarded_to,
21+
forwarded_to_name,
22+
received_from,
23+
received_from_name,
24+
csa_title
25+
FROM chat
26+
WHERE base_id = :chatId
27+
ORDER BY updated DESC
28+
LIMIT 1;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
3+
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
4+
SELECT base_id,
5+
customer_support_id,
6+
customer_support_display_name,
7+
end_user_id,
8+
end_user_first_name,
9+
end_user_last_name,
10+
status,
11+
created::timestamp with time zone,
12+
ended::timestamp with time zone,
13+
:endUserEmail,
14+
end_user_phone,
15+
end_user_os,
16+
end_user_url,
17+
feedback_text,
18+
feedback_rating,
19+
external_id,
20+
forwarded_to,
21+
forwarded_to_name,
22+
received_from,
23+
received_from_name,
24+
csa_title
25+
FROM chat
26+
WHERE base_id = :chatId
27+
ORDER BY updated DESC
28+
LIMIT 1;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
3+
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
4+
SELECT base_id,
5+
customer_support_id,
6+
customer_support_display_name,
7+
end_user_id,
8+
end_user_first_name,
9+
end_user_last_name,
10+
status,
11+
created::timestamp with time zone,
12+
ended::timestamp with time zone,
13+
end_user_email,
14+
:endUserPhone,
15+
end_user_os,
16+
end_user_url,
17+
feedback_text,
18+
feedback_rating,
19+
external_id,
20+
forwarded_to,
21+
forwarded_to_name,
22+
received_from,
23+
received_from_name,
24+
csa_title
25+
FROM chat
26+
WHERE base_id = :chatId
27+
ORDER BY updated DESC
28+
LIMIT 1;

DSL.Resql/update-chat-with-feedback-rating.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
44
SELECT base_id,
55
customer_support_id,
@@ -10,6 +10,8 @@ SELECT base_id,
1010
status,
1111
:created::timestamp with time zone,
1212
ended::timestamp with time zone,
13+
end_user_email,
14+
end_user_phone,
1315
end_user_os,
1416
end_user_url,
1517
feedback_text,

DSL.Resql/update-chat-with-feedback-text.sql

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
INSERT INTO chat(base_id, customer_support_id, customer_support_display_name, end_user_id, end_user_first_name,
2-
end_user_last_name, status, created, ended, end_user_os, end_user_url, feedback_text, feedback_rating,
2+
end_user_last_name, status, created, ended, end_user_email, end_user_phone, end_user_os, end_user_url, feedback_text, feedback_rating,
33
external_id, forwarded_to, forwarded_to_name, received_from, received_from_name, csa_title)
44
SELECT base_id,
55
customer_support_id,
@@ -10,6 +10,8 @@ SELECT base_id,
1010
status,
1111
:created::timestamp with time zone,
1212
ended::timestamp with time zone,
13+
end_user_email,
14+
end_user_phone,
1315
end_user_os,
1416
end_user_url,
1517
:feedbackText,

DSL.Ruuter-v1.private/chat/cs-chat-add-forwarding-value.json

+2
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,8 @@
142142
"endUserFirstName": "{#.get_not_ended_chat[0]#.endUserFirstName}",
143143
"endUserLastName": "{#.get_not_ended_chat[0]#.endUserLastName}",
144144
"status": "{#.get_not_ended_chat[0]#.status}",
145+
"endUserEmail": "{#.get_not_ended_chat[0]#.endUserEmail}",
146+
"endUserPhone": "{#.get_not_ended_chat[0]#.endUserPhone}",
145147
"endUserOs": "{#.get_not_ended_chat[0]#.endUserOs}",
146148
"endUserUrl": "{#.get_not_ended_chat[0]#.endUserUrl}",
147149
"feedbackText": "",

DSL.Ruuter-v1.private/chat/cs-claim-chat.json

+2
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,8 @@
130130
"endUserFirstName": "{#.get_not_ended_chat[0]#.endUserFirstName}",
131131
"endUserLastName": "{#.get_not_ended_chat[0]#.endUserLastName}",
132132
"status": "{#.get_not_ended_chat[0]#.status}",
133+
"endUserEmail": "{#.get_not_ended_chat[0]#.endUserEmail}",
134+
"endUserPhone": "{#.get_not_ended_chat[0]#.endUserPhone}",
133135
"endUserOs": "{#.get_not_ended_chat[0]#.endUserOs}",
134136
"endUserUrl": "{#.get_not_ended_chat[0]#.endUserUrl}",
135137
"feedbackText": "",

DSL.Ruuter-v1.private/chat/cs-end-chat.json

+2
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,8 @@
248248
"endUserFirstName": "{#.get_not_ended_chat[0]#.endUserFirstName}",
249249
"endUserLastName": "{#.get_not_ended_chat[0]#.endUserLastName}",
250250
"status": "ENDED",
251+
"endUserEmail": "{#.get_not_ended_chat[0]#.endUserEmail}",
252+
"endUserPhone": "{#.get_not_ended_chat[0]#.endUserPhone}",
251253
"endUserOs": "{#.get_not_ended_chat[0]#.endUserOs}",
252254
"endUserUrl": "{#.get_not_ended_chat[0]#.endUserUrl}",
253255
"feedbackText": "",

DSL.Ruuter-v1.private/chat/cs-redirect-chat.json

+3-1
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,8 @@
133133
"endUserFirstName": "{#.get_not_ended_chat[0]#.endUserFirstName}",
134134
"endUserLastName": "{#.get_not_ended_chat[0]#.endUserLastName}",
135135
"status": "{#.get_not_ended_chat[0]#.status}",
136+
"endUserEmail": "{#.get_not_ended_chat[0]#.endUserEmail}",
137+
"endUserPhone": "{#.get_not_ended_chat[0]#.endUserPhone}",
136138
"endUserOs": "{#.get_not_ended_chat[0]#.endUserOs}",
137139
"endUserUrl": "{#.get_not_ended_chat[0]#.endUserUrl}",
138140
"feedbackText": "",
@@ -276,7 +278,7 @@
276278
"post_body_struct": {
277279
"to": "{#.get_user_email[0]#.csaEmail}",
278280
"subject": "Teile on suunatud vestlus!",
279-
"text": "{$.fill_notification_redirected_chat}"
281+
"text": "{$.fill_notification_redirected_chat$.notification}"
280282
}
281283
},
282284
"response": {

DSL.Ruuter-v1.public/account/login-with-tara-jwt.json

+2
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@
8585
"customerSupportDisplayName": "{#.get_chat_by_id[0]#.customerSupportDisplayName}",
8686
"csaTitle": "{#.get_chat_by_id[0]#.csaTitle}",
8787
"status": "{#.get_chat_by_id[0]#.status}",
88+
"endUserEmail": "{#.get_chat_by_id[0]#.endUserEmail}",
89+
"endUserPhone": "{#.get_chat_by_id[0]#.endUserPhone}",
8890
"endUserOs": "{#.get_chat_by_id[0]#.endUserOs}",
8991
"endUserUrl": "{#.get_chat_by_id[0]#.endUserUrl}",
9092
"feedbackText": "",

DSL.Ruuter-v1.public/chat/destination-forward.json

+4
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@
1414
"endpoint": "{dmapper_url}/json/v2/reflect_destination_forward",
1515
"post_body_struct": {
1616
"messages": "{#.messages}",
17+
"endUserEmail": "{#.endUserEmail}",
18+
"endUserPhone": "{#.endUserPhone}",
1719
"endUserOs": "{#.endUserOs}",
1820
"endUserUrl": "{#.endUserUrl}",
1921
"destinationChatId": "{#.destinationChatId}",
@@ -94,6 +96,8 @@
9496
"ended": "",
9597
"feedbackRating": "",
9698
"feedbackText": "",
99+
"endUserEmail": "{#.reflect_input#.endUserEmail}",
100+
"endUserPhone": "{#.reflect_input#.endUserPhone}",
97101
"endUserOs": "{#.reflect_input#.endUserOs}",
98102
"endUserUrl": "{#.reflect_input#.endUserUrl}",
99103
"forwardedTo": "",

DSL.Ruuter-v1.public/chat/end-chat-locally.json

+2
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,8 @@
180180
"endUserFirstName": "{#.get_not_ended_chat[0]#.endUserFirstName}",
181181
"endUserLastName": "{#.get_not_ended_chat[0]#.endUserLastName}",
182182
"status": "ENDED",
183+
"endUserEmail": "{#.get_not_ended_chat[0]#.endUserEmail}",
184+
"endUserPhone": "{#.get_not_ended_chat[0]#.endUserPhone}",
183185
"endUserOs": "{#.get_not_ended_chat[0]#.endUserOs}",
184186
"endUserUrl": "{#.get_not_ended_chat[0]#.endUserUrl}",
185187
"feedbackText": "{#.get_not_ended_chat[0]#.feedbackText}",

0 commit comments

Comments
 (0)