Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
I
im-pool
Project
Project
Details
Activity
Releases
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
haoyanbin
im-pool
Commits
f9a37051
Commit
f9a37051
authored
Jan 06, 2023
by
haoyanbin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1
parent
be273959
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
22 additions
and
5 deletions
+22
-5
client.go
pool/client.go
+2
-2
publicApi.go
pool/publicApi.go
+20
-3
No files found.
pool/client.go
View file @
f9a37051
...
...
@@ -309,7 +309,7 @@ Loop:
//关闭写入io对象
if
err
:=
w
.
Close
();
err
!=
nil
{
c
.
onError
(
errors
.
New
(
"连接ID:"
+
c
.
Id
+
"关闭写入IO对象出错,连接中断"
+
err
.
Error
()))
c
.
onError
(
errors
.
New
(
"连接ID:"
+
c
.
User
+
"关闭写入IO对象出错,连接中断"
+
err
.
Error
()))
goto
Loop1
}
case
p
,
ok
:=
<-
c
.
sendPing
:
//定时发送ping
...
...
@@ -320,7 +320,7 @@ Loop:
c
.
conn
.
SetWriteDeadline
(
time
.
Now
()
.
Add
(
writeWait
))
if
err
:=
c
.
conn
.
WriteMessage
(
websocket
.
PingMessage
,
nil
);
err
!=
nil
{
fmt
.
Println
(
err
)
c
.
onError
(
errors
.
New
(
"连接ID:"
+
c
.
Id
+
"关闭写入IO对象出错,连接中断"
+
err
.
Error
()))
c
.
onError
(
errors
.
New
(
"连接ID:"
+
c
.
User
+
"关闭写入IO对象出错,连接中断"
+
err
.
Error
()))
goto
Loop1
}
}
...
...
pool/publicApi.go
View file @
f9a37051
...
...
@@ -92,7 +92,7 @@ func (c *Client) OpenClient(w http.ResponseWriter, r *http.Request, head http.He
c
.
closeTicker
=
time
.
NewTimer
(
closeWait
)
c
.
conn
.
SetPongHandler
(
func
(
str
string
)
error
{
c
.
conn
.
SetReadDeadline
(
time
.
Now
()
.
Add
(
pongWait
))
fmt
.
Println
(
"收到pong---"
,
c
.
Id
,
str
)
fmt
.
Println
(
"收到pong---"
,
c
.
User
,
str
)
c
.
pingPeriodTicker
.
Reset
(
pingPeriod
)
c
.
onPong
()
return
nil
...
...
@@ -101,7 +101,7 @@ func (c *Client) OpenClient(w http.ResponseWriter, r *http.Request, head http.He
c
.
conn
.
SetPingHandler
(
func
(
str
string
)
error
{
c
.
conn
.
SetReadDeadline
(
time
.
Now
()
.
Add
(
pongWait
))
c
.
pingPeriodTicker
.
Reset
(
pingPeriod
)
fmt
.
Println
(
"收到ping---"
,
c
.
Id
,
str
)
fmt
.
Println
(
"收到ping---"
,
c
.
User
,
str
)
c
.
recvPing
<-
1
//if err := c.conn.WriteMessage(websocket.PongMessage, nil); err != nil {
// c.onError(errors.New("回复客户端PongMessage出现异常:"+err.Error()))
...
...
@@ -112,7 +112,7 @@ func (c *Client) OpenClient(w http.ResponseWriter, r *http.Request, head http.He
c
.
conn
.
SetCloseHandler
(
func
(
code
int
,
str
string
)
error
{
//收到客户端连接关闭时的回调
fmt
.
Println
(
"连接ID:"
+
c
.
Id
,
"SetCloseHandler接收到连接关闭状态:"
,
code
,
"关闭信息:"
,
str
)
fmt
.
Println
(
"连接ID:"
+
c
.
User
,
"SetCloseHandler接收到连接关闭状态:"
,
code
,
"关闭信息:"
,
str
)
return
nil
})
...
...
@@ -268,6 +268,23 @@ func Send(msg *SendMsg) error {
}
}
if
msg
.
FromClientId
!=
""
{
userInfoSelf
,
_
:=
GetClientInfo
(
msg
.
FromClientId
)
cListSelf
:=
wsSever
.
hub
.
clients
[
userInfoSelf
.
ClientId
]
for
_
,
c
:=
range
cListSelf
{
if
c
!=
nil
{
if
c
.
User
!=
userInfoSelf
.
User
{
err
:=
c
.
Send
(
msg
)
if
err
!=
nil
{
return
errors
.
New
(
"发送消息出错:"
+
err
.
Error
()
+
",连接对象id="
+
c
.
User
+
"。"
)
}
}
}
else
{
fmt
.
Println
(
2
)
}
}
}
return
nil
}
...
...
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