Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
M
MQTT_AGI_hy
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
xjp0422
MQTT_AGI_hy
Commits
2de43ab6
Commit
2de43ab6
authored
Nov 04, 2022
by
xjp0422
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
no message
parent
4d59c402
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
30 additions
and
18 deletions
+30
-18
.suo
.vs/Mqtt_AGI/v16/.suo
+0
-0
AGITopic.cs
Kepler_J20002TLE/AGITopic.cs
+6
-1
Program.cs
Kepler_J20002TLE/Program.cs
+24
-17
Mqtt_AGI.exe
Kepler_J20002TLE/bin/Release/Mqtt_AGI.exe
+0
-0
Mqtt_AGI.pdb
Kepler_J20002TLE/bin/Release/Mqtt_AGI.pdb
+0
-0
Mqtt_AGI.exe
Kepler_J20002TLE/obj/Release/Mqtt_AGI.exe
+0
-0
Mqtt_AGI.pdb
Kepler_J20002TLE/obj/Release/Mqtt_AGI.pdb
+0
-0
No files found.
.vs/Mqtt_AGI/v16/.suo
View file @
2de43ab6
No preview for this file type
Kepler_J20002TLE/AGITopic.cs
View file @
2de43ab6
...
@@ -38,10 +38,15 @@ namespace Mqtt_AGI
...
@@ -38,10 +38,15 @@ namespace Mqtt_AGI
}
}
//由level_uid生成level_system_uid 和
//由level_uid生成level_system_uid 和
public
static
string
Serilize
String
(
string
level_uid
,
systemID
system
)
public
static
string
Serilize
Topic
(
string
level_uid
,
systemID
system
)
{
{
return
level_uid
+
"/"
+((
int
)
system
).
ToString
();
return
level_uid
+
"/"
+((
int
)
system
).
ToString
();
//return Convert.ToString((Convert.ToUInt32(level_uid,2) | (((uint)system) << 16) ), 2).PadLeft(32, '0');
//return Convert.ToString((Convert.ToUInt32(level_uid,2) | (((uint)system) << 16) ), 2).PadLeft(32, '0');
}
}
public
static
string
SerilizeUid
(
string
level_uid
,
systemID
system
)
{
//return level_uid + "/" + ((int)system).ToString();
return
Convert
.
ToString
((
Convert
.
ToUInt32
(
level_uid
,
2
)
|
(((
uint
)
system
)
<<
16
)
),
2
).
PadLeft
(
32
,
'0'
);
}
}
}
}
}
Kepler_J20002TLE/Program.cs
View file @
2de43ab6
...
@@ -45,10 +45,10 @@ namespace Mqtt_AGI
...
@@ -45,10 +45,10 @@ namespace Mqtt_AGI
//static string clientId = Guid.NewGuid().ToString();
//static string clientId = Guid.NewGuid().ToString();
static
string
ip
,
port
;
static
string
ip
,
port
;
static
int
count
=
0
;
static
int
count
=
0
;
static
string
LevelUid
=
getLevelUid
()
;
static
string
LevelUid
,
LevelTopic
;
static
string
clientId
=
SerializeUid
.
SerilizeString
(
LevelUid
,
systemID
.
AGI
)
;
static
string
clientId
;
//获取配置信息中的站点等级信息 生成LevelUid
//获取配置信息中的站点等级信息 生成LevelUid
static
string
getLevelUid
()
static
void
Level_Topic_Uid_init
()
{
{
string
IniPath
=
System
.
Windows
.
Forms
.
Application
.
StartupPath
+
"\\config.ini"
;
string
IniPath
=
System
.
Windows
.
Forms
.
Application
.
StartupPath
+
"\\config.ini"
;
StringBuilder
level1
=
new
StringBuilder
(
16
);
StringBuilder
level1
=
new
StringBuilder
(
16
);
...
@@ -58,8 +58,10 @@ namespace Mqtt_AGI
...
@@ -58,8 +58,10 @@ namespace Mqtt_AGI
GetPrivateProfileString
(
"role"
,
"level2"
,
"0"
,
level2
,
16
,
IniPath
);
GetPrivateProfileString
(
"role"
,
"level2"
,
"0"
,
level2
,
16
,
IniPath
);
GetPrivateProfileString
(
"role"
,
"level3"
,
"0"
,
level3
,
16
,
IniPath
);
GetPrivateProfileString
(
"role"
,
"level3"
,
"0"
,
level3
,
16
,
IniPath
);
//Console.WriteLine(SerializeUid.SerilizeString(Convert.ToUInt32(level1.ToString()), Convert.ToUInt32(level2.ToString()), Convert.ToUInt32(level3.ToString())));
//Console.WriteLine(SerializeUid.SerilizeString(Convert.ToUInt32(level1.ToString()), Convert.ToUInt32(level2.ToString()), Convert.ToUInt32(level3.ToString())));
return
"/"
+
Convert
.
ToUInt32
(
level1
.
ToString
())+
"/"
+
Convert
.
ToUInt32
(
level2
.
ToString
())+
"/"
+
Convert
.
ToUInt32
(
level3
.
ToString
());
LevelTopic
=
"/"
+
Convert
.
ToUInt32
(
level1
.
ToString
())+
"/"
+
Convert
.
ToUInt32
(
level2
.
ToString
())+
"/"
+
Convert
.
ToUInt32
(
level3
.
ToString
());
LevelUid
=
SerializeUid
.
SerilizeString
(
Convert
.
ToUInt32
(
level1
.
ToString
())
,
Convert
.
ToUInt32
(
level2
.
ToString
())
,
Convert
.
ToUInt32
(
level3
.
ToString
()));
clientId
=
SerializeUid
.
SerilizeUid
(
LevelUid
,
systemID
.
AGI
);
Console
.
WriteLine
(
"MqttclientId:"
+
clientId
);
//Console.WriteLine(Convert.ToString(subTopic,2).PadLeft(32,'0'));//32位 前面补0
//Console.WriteLine(Convert.ToString(subTopic,2).PadLeft(32,'0'));//32位 前面补0
}
}
...
@@ -140,8 +142,8 @@ namespace Mqtt_AGI
...
@@ -140,8 +142,8 @@ namespace Mqtt_AGI
{
{
client
.
Connect
(
clientId
,
""
,
""
,
false
,
30
);
client
.
Connect
(
clientId
,
""
,
""
,
false
,
30
);
//level1/level2/level3/system
//level1/level2/level3/system
Console
.
WriteLine
(
"Subscribe:"
+
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
AGI
));
Console
.
WriteLine
(
"Subscribe:"
+
SerializeUid
.
Serilize
Topic
(
LevelTopic
,
systemID
.
AGI
));
client
.
Subscribe
(
new
string
[]
{
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
AGI
)
},
new
byte
[]
{
MqttMsgBase
.
QOS_LEVEL_EXACTLY_ONCE
});
client
.
Subscribe
(
new
string
[]
{
SerializeUid
.
Serilize
Topic
(
LevelTopic
,
systemID
.
AGI
)
},
new
byte
[]
{
MqttMsgBase
.
QOS_LEVEL_EXACTLY_ONCE
});
//client.Subscribe(new string[] { SerializeUid.SerilizeString(LevelUid, systemID.AGI) }, new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE });
//client.Subscribe(new string[] { SerializeUid.SerilizeString(LevelUid, systemID.AGI) }, new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE });
client
.
Subscribe
(
new
string
[]
{
"xyz_topic_parameter"
},
new
byte
[]
{
MqttMsgBase
.
QOS_LEVEL_EXACTLY_ONCE
});
client
.
Subscribe
(
new
string
[]
{
"xyz_topic_parameter"
},
new
byte
[]
{
MqttMsgBase
.
QOS_LEVEL_EXACTLY_ONCE
});
...
@@ -166,6 +168,7 @@ namespace Mqtt_AGI
...
@@ -166,6 +168,7 @@ namespace Mqtt_AGI
try
try
{
{
Level_Topic_Uid_init
();
//从配置文件获取ip port
//从配置文件获取ip port
StringBuilder
ip_build
=
new
StringBuilder
(
32
);
StringBuilder
ip_build
=
new
StringBuilder
(
32
);
StringBuilder
port_build
=
new
StringBuilder
(
32
);
StringBuilder
port_build
=
new
StringBuilder
(
32
);
...
@@ -241,21 +244,23 @@ namespace Mqtt_AGI
...
@@ -241,21 +244,23 @@ namespace Mqtt_AGI
//初始化包配置
//初始化包配置
TDSCmd
MessageSend
=
new
TDSCmd
();
TDSCmd
MessageSend
=
new
TDSCmd
();
MessageSend
.
InterfaceId
=
IID
.
AgiTleRespond
;
MessageSend
.
InterfaceId
=
IID
.
AgiTleRespond
;
MessageSend
.
DstSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
SERVER
));
MessageSend
.
DstSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
Uid
(
LevelUid
,
systemID
.
SERVER
));
MessageSend
.
SrcSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
AGI
));
MessageSend
.
SrcSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
Uid
(
LevelUid
,
systemID
.
AGI
));
MessageSend
.
ForwardFlag
=
0
;
//不需要转发
MessageSend
.
ForwardFlag
=
0
;
//不需要转发
//加载数据段
//加载数据段
Any
Parameter
=
Any
.
Pack
(
calctleret
);
Any
Parameter
=
Any
.
Pack
(
calctleret
);
MessageSend
.
Parameters
.
Add
(
Parameter
);
MessageSend
.
Parameters
.
Add
(
Parameter
);
client
.
Publish
(
SerializeUid
.
SerilizeString
(
LevelUid
,
systemID
.
SERVER
),
MessageSend
.
ToByteArray
());
client
.
Publish
(
SerializeUid
.
SerilizeTopic
(
LevelTopic
,
systemID
.
SERVER
),
MessageSend
.
ToByteArray
());
Console
.
WriteLine
(
"send topic:"
+
SerializeUid
.
SerilizeTopic
(
LevelTopic
,
systemID
.
SERVER
));
Console
.
WriteLine
(
line0
);
Console
.
WriteLine
(
line1
);
Console
.
WriteLine
(
line2
);
Console
.
WriteLine
(
"pacakge length:"
+
MessageSend
.
ToByteArray
().
Length
);
Console
.
WriteLine
(
"pacakge length:"
+
MessageSend
.
ToByteArray
().
Length
);
Console
.
WriteLine
(
"Sucess send count:"
+
(++
count
));
Console
.
WriteLine
(
"Sucess send count:"
+
(++
count
));
Console
.
WriteLine
(
"Content:"
+
MessageSend
);
//Console.WriteLine(line0);
//Console.WriteLine(line1);
//Console.WriteLine(line2);
//client.Publish("server/response/agi/tle", System.Text.Encoding.Default.GetBytes(line0+";"+line1+";"+line2));
//client.Publish("server/response/agi/tle", System.Text.Encoding.Default.GetBytes(line0+";"+line1+";"+line2));
...
@@ -567,23 +572,25 @@ namespace Mqtt_AGI
...
@@ -567,23 +572,25 @@ namespace Mqtt_AGI
//初始化包配置
//初始化包配置
TDSCmd
MessageSend
=
new
TDSCmd
();
TDSCmd
MessageSend
=
new
TDSCmd
();
MessageSend
.
InterfaceId
=
IID
.
AgiReportRespond
;
MessageSend
.
InterfaceId
=
IID
.
AgiReportRespond
;
MessageSend
.
DstSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
SERVER
));
MessageSend
.
DstSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
Uid
(
LevelUid
,
systemID
.
SERVER
));
MessageSend
.
SrcSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
AGI
));
MessageSend
.
SrcSuid
=
Convert
.
ToUInt32
(
SerializeUid
.
Serilize
Uid
(
LevelUid
,
systemID
.
AGI
));
MessageSend
.
ForwardFlag
=
0
;
//不需要转发
MessageSend
.
ForwardFlag
=
0
;
//不需要转发
//加载数据段
//加载数据段
Any
Parameter
=
Any
.
Pack
(
CalcReport
);
Any
Parameter
=
Any
.
Pack
(
CalcReport
);
MessageSend
.
Parameters
.
Add
(
Parameter
);
MessageSend
.
Parameters
.
Add
(
Parameter
);
client
.
Publish
(
SerializeUid
.
Serilize
String
(
LevelUid
,
systemID
.
SERVER
),
MessageSend
.
ToByteArray
());
client
.
Publish
(
SerializeUid
.
Serilize
Topic
(
LevelTopic
,
systemID
.
SERVER
),
MessageSend
.
ToByteArray
());
//protobuf end
//protobuf end
//CalcRetJson.Add("tasks", ReportArray);
//CalcRetJson.Add("tasks", ReportArray);
Console
.
WriteLine
(
"send topic:"
+
SerializeUid
.
SerilizeTopic
(
LevelTopic
,
systemID
.
SERVER
));
Console
.
WriteLine
(
"pacakge length:"
+
MessageSend
.
ToByteArray
().
Length
);
Console
.
WriteLine
(
"pacakge length:"
+
MessageSend
.
ToByteArray
().
Length
);
//client.Publish("server/response/agi/json", System.Text.Encoding.Default.GetBytes(CalcRetJson.ToString())); //将任务星下点信息发布出去
//client.Publish("server/response/agi/json", System.Text.Encoding.Default.GetBytes(CalcRetJson.ToString())); //将任务星下点信息发布出去
Console
.
WriteLine
(
"Sucess send count:"
+
(++
count
));
Console
.
WriteLine
(
"Sucess send count:"
+
(++
count
));
Console
.
WriteLine
(
"Content:"
+
MessageSend
);
//Console.WriteLine(CalcRetJson.ToString());
//Console.WriteLine(CalcRetJson.ToString());
}
}
catch
(
Exception
e
)
catch
(
Exception
e
)
...
...
Kepler_J20002TLE/bin/Release/Mqtt_AGI.exe
View file @
2de43ab6
No preview for this file type
Kepler_J20002TLE/bin/Release/Mqtt_AGI.pdb
View file @
2de43ab6
No preview for this file type
Kepler_J20002TLE/obj/Release/Mqtt_AGI.exe
View file @
2de43ab6
No preview for this file type
Kepler_J20002TLE/obj/Release/Mqtt_AGI.pdb
View file @
2de43ab6
No preview for this file type
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