Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
SkuciSe
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Tim 2 - 2022
SkuciSe
Commits
5c8edc40
Commit
5c8edc40
authored
Sep 17, 2022
by
Bogdan Andjelkovic
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
live chat uradjen - back i front
parent
5aa65891
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
19 additions
and
10 deletions
+19
-10
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/Message.java
+2
-0
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/MessageController.java
+7
-4
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSController.java
+1
-1
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSService.java
+4
-3
SkuciSe/src/main/resources/static/js/socket.js
+3
-2
SkuciSe/src/main/resources/templates/chat.html
+2
-0
No files found.
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/Message.java
View file @
5c8edc40
...
...
@@ -11,4 +11,6 @@ import lombok.Setter;
@NoArgsConstructor
public
class
Message
{
private
String
messageContent
;
private
String
from
;
private
String
to
;
}
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/MessageController.java
View file @
5c8edc40
package
com
.
example
.
SkuciSe
.
configuration
.
WebSocket
;
import
com.example.SkuciSe.model.korisnik.Korisnik
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.messaging.handler.annotation.MessageMapping
;
import
org.springframework.messaging.simp.annotation.SendToUser
;
import
org.springframework.stereotype.Controller
;
...
...
@@ -10,14 +11,16 @@ import java.security.Principal;
@Controller
public
class
MessageController
{
@Autowired
private
WSService
service
;
@MessageMapping
(
"/private-message"
)
@SendToUser
(
"topic/private-messages"
)
public
ResponseMessage
getPrivateMessage
(
final
Message
message
,
final
Principal
principal
)
throws
InterruptedException
{
Thread
.
sleep
(
1000
);
return
new
ResponseMessage
(
HtmlUtils
.
htmlEscape
(
"Sending private message to user "
+
principal
.
getName
()
+
": "
+
message
.
getMessageContent
())
);
message
.
setFrom
(
principal
.
getName
());
service
.
notifyUser
(
message
.
getTo
(),
message
);
return
new
ResponseMessage
(
HtmlUtils
.
htmlEscape
(
message
.
getFrom
()
+
": "
+
message
.
getMessageContent
()));
}
}
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSController.java
View file @
5c8edc40
...
...
@@ -15,6 +15,6 @@ public class WSController {
@PostMapping
(
"/send-private-message/{mail}"
)
public
void
sendPrivateMessage
(
@PathVariable
(
"mail"
)
final
String
mail
,
@RequestBody
final
Message
message
)
{
service
.
notifyUser
(
mail
,
message
.
getMessageContent
()
);
service
.
notifyUser
(
mail
,
message
);
}
}
SkuciSe/src/main/java/com/example/SkuciSe/configuration/WebSocket/WSService.java
View file @
5c8edc40
...
...
@@ -13,8 +13,8 @@ public class WSService {
public
WSService
(
SimpMessagingTemplate
messagingTemplate
)
{
this
.
messagingTemplate
=
messagingTemplate
;
}
public
void
notifyUser
(
final
String
mail
,
final
String
message
)
{
ResponseMessage
response
=
new
ResponseMessage
(
message
);
messagingTemplate
.
convertAndSendToUser
(
mail
,
"/topic/private-messages"
,
response
);
public
void
notifyUser
(
final
String
mail
,
final
Message
message
)
{
ResponseMessage
response
Message
=
new
ResponseMessage
(
message
.
getFrom
()
+
" "
+
message
.
getMessageContent
()
);
messagingTemplate
.
convertAndSendToUser
(
mail
,
"/topic/private-messages"
,
response
Message
);
}
}
\ No newline at end of file
SkuciSe/src/main/resources/static/js/socket.js
View file @
5c8edc40
...
...
@@ -20,10 +20,10 @@ function connect() {
}
function
showMessage
(
message
)
{
$
(
"#messages"
).
append
(
"<tr><td>"
+
message
+
"</td></tr>"
);
$
(
"#messages"
).
append
(
"<tr><td>"
+
message
+
"</td></tr>"
);
}
function
sendPrivateMessage
()
{
console
.
log
(
"sending private message"
);
stompClient
.
send
(
"/ws/private-message"
,
{},
JSON
.
stringify
({
'messageContent'
:
$
(
"#private-message"
).
val
()}));
stompClient
.
send
(
"/ws/private-message"
,
{},
JSON
.
stringify
({
'from'
:
""
,
'to'
:
$
(
"#to"
).
val
(),
'messageContent'
:
$
(
"#private-message"
).
val
()}));
}
\ No newline at end of file
SkuciSe/src/main/resources/templates/chat.html
View file @
5c8edc40
...
...
@@ -114,6 +114,8 @@
<div
class=
"form-group"
>
<label
for=
"private-message"
>
Private Message
</label>
<input
type=
"text"
id=
"private-message"
class=
"form-control"
placeholder=
"Enter your message here..."
>
<label
for=
"private-message"
>
To
</label>
<input
type=
"text"
id=
"to"
class=
"form-control"
placeholder=
"Enter your message here..."
>
</div>
<button
id=
"send-private"
class=
"btn btn-default"
type=
"button"
>
Send Private Message
</button>
</form>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment