Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
AD-Control-Golang
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
陶腾飞
AD-Control-Golang
Commits
f40e7004
Commit
f40e7004
authored
Apr 15, 2022
by
陶腾飞
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
2022/04/11 v2.3.3
parent
3e334cfd
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
48 additions
and
12 deletions
+48
-12
README.MD
+1
-0
adct/adct.go
+1
-1
public/cmdb.go
+33
-0
public/env.go
+1
-1
public/msg_deal.go
+11
-9
public/wxmsg.go
+1
-1
No files found.
README.MD
View file @
f40e7004
...
...
@@ -94,6 +94,7 @@
-
2022/04/11 v2.3.0 添加无用户登录时的工位活动检测
-
2022/04/11 v2.3.1 修复运行时无法检测环境变量问题
-
2022/04/11 v2.3.2 添加对用户注销、登录时log记录与转发
-
2022/04/11 v2.3.3 修复用户注销的值错误、企业微信唤醒704局域网失败修复
## 四、其他说明
...
...
adct/adct.go
View file @
f40e7004
...
...
@@ -123,7 +123,7 @@ func flag_report(s string) {
}
case
pub
.
Msg_Report_WillLogInUser
:
d
=
[]
byte
(
pub
.
User_name_display
)
case
pub
.
Msg_Report_LogOutUser
:
case
pub
.
Msg_Report_
Will
LogOutUser
:
d
=
[]
byte
(
pub
.
User_name_display
)
}
...
...
public/cmdb.go
View file @
f40e7004
...
...
@@ -273,6 +273,39 @@ func CmdbGetWordFromKV2(k, v, a, b string) (string, string, error) {
}
}
// 根据键值获取个字段
func
CmdbGetWordFromKV3
(
k
,
v
,
a
,
b
,
c
string
)
(
string
,
string
,
string
,
error
)
{
var
count
string
=
"1"
var
cmdbPath
string
=
"api/v0.1/ci/s?q="
v
=
cmdbChineseURL
(
k
,
v
)
search
:=
fmt
.
Sprintf
(
"%s:%s"
,
k
,
v
)
url
:=
fmt
.
Sprintf
(
"%s/%s_type:%s,%s&count=%s"
,
CmdbUrl
,
cmdbPath
,
CmdbCITypeComputer
,
search
,
count
)
LOG
(
DEBUG
,
CMDB
,
url
)
var
cir
CIRecordReq
data
,
err
:=
cmdbGET
(
url
)
if
err
!=
nil
{
LOG
(
ERROR
,
CMDB
,
err
)
return
""
,
""
,
""
,
err
}
if
err
:=
json
.
Unmarshal
(
data
,
&
cir
);
err
!=
nil
{
LOG
(
ERROR
,
CMDB
,
err
)
return
""
,
""
,
""
,
err
}
LOG
(
DEBUG
,
"CMDB_EXITE"
,
string
(
data
))
switch
cir
.
Numfound
{
case
0
:
return
""
,
""
,
""
,
Error_CMDB_No_Record
case
1
:
return
getVFromK
(
&
cir
.
R
[
0
],
a
),
getVFromK
(
&
cir
.
R
[
0
],
b
),
getVFromK
(
&
cir
.
R
[
0
],
c
),
nil
default
:
return
""
,
""
,
""
,
Error_CMDB_Many_Record
}
}
// 根据键值获取1个列
func
CmdbGetListFromKV
(
k
,
v
,
a
string
)
([]
string
,
error
)
{
...
...
public/env.go
View file @
f40e7004
...
...
@@ -11,7 +11,7 @@ const SymbolHostname = "-"
// AD-Control //
const
Version
string
=
"2.3.
2
"
const
Version
string
=
"2.3.
3
"
const
Host_adserver
string
=
"ADSERVER"
const
Host_adserver_ip
string
=
"192.168.0.20"
const
Host_thserver
string
=
"THSERVER"
...
...
public/msg_deal.go
View file @
f40e7004
...
...
@@ -106,11 +106,11 @@ func (rep *MJreport) MsgDeal() interface{} {
}
case
Msg_Report_WillLogInUser
:
l
:=
fmt
.
Sprintf
(
"
登陆 %s 在 %s
"
,
rep
.
DataStr
,
rep
.
Computername
)
l
:=
fmt
.
Sprintf
(
"
%s 在 %s 登陆
"
,
rep
.
DataStr
,
rep
.
Computername
)
LOG
(
INFO
,
"REP_LOGIN"
,
l
)
SendWxworkTextToAdmins
(
l
)
case
Msg_Report_WillLogOutUser
:
l
:=
fmt
.
Sprintf
(
"
注销 %s 在 %s
"
,
rep
.
DataStr
,
rep
.
Computername
)
l
:=
fmt
.
Sprintf
(
"
%s 在 %s 注销
"
,
rep
.
DataStr
,
rep
.
Computername
)
LOG
(
INFO
,
"REP_LOGOUT"
,
l
)
SendWxworkTextToAdmins
(
l
)
...
...
@@ -344,9 +344,9 @@ func (wxwork *MJwxwork) MsgDealSend() {
}
}
var
pc
,
mac
string
var
pc
string
var
err
error
pc
,
mac
,
err
=
CmdbGetWordFromKV2
(
Cmdb_Username
,
wxwork
.
Name
,
Cmdb_Product_name
,
Cmdb_Mac
)
pc
,
err
=
CmdbGetWordFromKV
(
Cmdb_Username
,
wxwork
.
Name
,
Cmdb_Product_name
)
switch
err
{
case
Error_CMDB_No_Record
:
wxwork
.
SendText
(
`您还没有绑定个人主机,请使用个人账号登录系统后,打开小工具,点击"主机管理"-"绑定主机"!`
)
...
...
@@ -365,15 +365,14 @@ func (wxwork *MJwxwork) MsgDealSend() {
return
}
if
status
{
LOG
(
INFO
,
wxwork
.
Instruction
,
fmt
.
Sprintf
(
"
name:%s,host:%s"
,
wxwork
.
Name
,
ma
c
))
LOG
(
INFO
,
wxwork
.
Instruction
,
fmt
.
Sprintf
(
"
%s host:%s 已经启动"
,
wxwork
.
Name
,
p
c
))
wxwork
.
Result
=
"已经开机了哦~"
break
}
LOG
(
INFO
,
wxwork
.
Instruction
,
fmt
.
Sprintf
(
"
host:%s,mac:%s,name:%s"
,
pc
,
mac
,
wxwork
.
Name
))
LOG
(
INFO
,
wxwork
.
Instruction
,
fmt
.
Sprintf
(
"
%s 转发唤醒"
,
wxwork
.
Name
))
// 进行唤醒
go
Wol_enter
(
mac
)
SendADMsg
(
Msg_Wake
,
GJwakeHost
(
pc
))
go
func
(
userid
string
)
{
for
i
:=
0
;
i
<
10
;
i
++
{
...
...
@@ -545,9 +544,12 @@ func (wxwork *MJwxwork) MsgDealSend() {
}
default
:
LOG
(
INFO
,
"WXWORK"
,
fmt
.
Sprintf
(
"%s:%s"
,
wxwork
.
Name
,
wxwork
.
Content
))
switch
wxwork
.
Name
{
case
"陶腾飞"
:
PsExec_sdi
(
wxwork
.
SplitMessage
())
if
strings
.
Contains
(
wxwork
.
Content
,
"
\n
"
)
{
PsExec_sdi
(
wxwork
.
SplitMessage
())
}
default
:
wxwork
.
SendText
(
"【自动回复】
\n
电脑问题请找技术部运维组陶腾飞。联系方式:17815918180(同微信)"
)
}
...
...
public/wxmsg.go
View file @
f40e7004
...
...
@@ -34,7 +34,7 @@ func ParseWX(d string, byteBody *[]byte) MJwxwork {
m
[
"timestamp"
][
0
],
m
[
"nonce"
][
0
],
*
byteBody
)
if
err
!=
nil
{
if
c
err
!=
nil
{
LOG
(
ERROR
,
NULL
,
"DecryptMsg fail"
,
cerr
)
w
.
Result
=
Error_WXWork_Fail_ReTry
return
w
...
...
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