Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
GeoFlyApi
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
GeoFly
GeoFlyApi
Commits
48b8d0bc
Commit
48b8d0bc
authored
Nov 24, 2025
by
gdj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加一键标定功能。
parent
94d9ec2a
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
266 additions
and
0 deletions
+266
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/DebugMethodEnum.java
+2
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationModuleEnum.java
+41
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationRequest.java
+37
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationRequestData.java
+80
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationTypeEnum.java
+36
-0
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java
+14
-0
cloud-sdk/src/main/java/com/dji/sdk/mqtt/events/EventsMethodEnum.java
+3
-0
sample/src/main/java/com/dji/sample/control/controller/DockController.java
+5
-0
sample/src/main/java/com/dji/sample/control/model/param/RtkCalibrationParam.java
+21
-0
sample/src/main/java/com/dji/sample/control/service/IControlService.java
+3
-0
sample/src/main/java/com/dji/sample/control/service/impl/ControlServiceImpl.java
+24
-0
No files found.
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/DebugMethodEnum.java
View file @
48b8d0bc
...
...
@@ -58,6 +58,8 @@ public enum DebugMethodEnum {
ESIM_OPERATOR_SWITCH
(
"esim_operator_switch"
,
EsimOperatorSwitchRequest
.
class
),
// 一键标定
RTK_CALIBRATION
(
"rtk_calibration"
,
RtkCalibrationRequest
.
class
),
;
private
final
String
method
;
...
...
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationModuleEnum.java
0 → 100644
View file @
48b8d0bc
package
com
.
dji
.
sdk
.
cloudapi
.
debug
;
import
com.fasterxml.jackson.annotation.JsonCreator
;
import
com.fasterxml.jackson.annotation.JsonValue
;
import
java.util.Arrays
;
/**
* @author guan
*/
public
enum
RtkCalibrationModuleEnum
{
// {"3": "机场", "6": "中继" }
UNKNOWN
(-
1
),
// {"1": "手动标定"}
DOCK
(
3
),
RELAY
(
6
),
;
private
final
int
module
;
RtkCalibrationModuleEnum
(
int
module
)
{
this
.
module
=
module
;
}
@JsonValue
public
int
getModule
()
{
return
module
;
}
@JsonCreator
public
static
RtkCalibrationModuleEnum
find
(
int
module
)
{
return
Arrays
.
stream
(
RtkCalibrationModuleEnum
.
values
()).
filter
(
moduleEnum
->
moduleEnum
.
module
==
module
).
findAny
()
.
orElse
(
UNKNOWN
);
}
}
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationRequest.java
0 → 100644
View file @
48b8d0bc
package
com
.
dji
.
sdk
.
cloudapi
.
debug
;
import
com.dji.sdk.common.BaseModel
;
import
javax.validation.constraints.NotNull
;
import
java.util.List
;
/**
* @author sean
* @version 1.7
* @date 2023/10/20
*/
public
class
RtkCalibrationRequest
extends
BaseModel
{
@NotNull
private
List
<
RtkCalibrationRequestData
>
devices
;
public
RtkCalibrationRequest
()
{
}
@Override
public
String
toString
()
{
return
"RtkCalibrationRequest{"
+
", devices="
+
devices
+
'}'
;
}
public
List
<
RtkCalibrationRequestData
>
getDevices
()
{
return
devices
;
}
public
RtkCalibrationRequest
setDevices
(
List
<
RtkCalibrationRequestData
>
devices
)
{
this
.
devices
=
devices
;
return
this
;
}
}
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationRequestData.java
0 → 100644
View file @
48b8d0bc
package
com
.
dji
.
sdk
.
cloudapi
.
debug
;
import
com.dji.sdk.cloudapi.control.Point
;
/**
* @author guan
*/
public
class
RtkCalibrationRequestData
{
/**
* 设备序列号
*/
private
String
sn
;
/**
* 标定类型
*/
RtkCalibrationTypeEnum
type
;
/**
* 模块枚举值
*/
RtkCalibrationModuleEnum
module
;
/**
* 标定数据
*/
Point
data
;
//» data 标定数据 struct
//»» longitude 经度 double
//»» latitude 纬度 double
//»» height 高度 double
@Override
public
String
toString
()
{
return
"RtkCalibrationRequestData{"
+
"sn="
+
sn
+
", type="
+
type
+
", module="
+
module
+
", data="
+
data
+
'}'
;
}
public
String
getSn
()
{
return
sn
;
}
public
RtkCalibrationRequestData
setSn
(
String
sn
)
{
this
.
sn
=
sn
;
return
this
;
}
public
RtkCalibrationTypeEnum
getType
()
{
return
type
;
}
public
RtkCalibrationRequestData
setType
(
RtkCalibrationTypeEnum
type
)
{
this
.
type
=
type
;
return
this
;
}
public
RtkCalibrationModuleEnum
getModule
()
{
return
module
;
}
public
RtkCalibrationRequestData
setModule
(
RtkCalibrationModuleEnum
module
)
{
this
.
module
=
module
;
return
this
;
}
public
Point
getData
()
{
return
data
;
}
public
RtkCalibrationRequestData
setData
(
Point
data
)
{
this
.
data
=
data
;
return
this
;
}
}
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/RtkCalibrationTypeEnum.java
0 → 100644
View file @
48b8d0bc
package
com
.
dji
.
sdk
.
cloudapi
.
debug
;
import
com.fasterxml.jackson.annotation.JsonCreator
;
import
com.fasterxml.jackson.annotation.JsonValue
;
import
java.util.Arrays
;
/**
* @author guan
*/
public
enum
RtkCalibrationTypeEnum
{
UNKNOWN
(-
1
),
// {"1": "手动标定"}
MANUAL
(
1
),
;
private
final
int
type
;
RtkCalibrationTypeEnum
(
int
type
)
{
this
.
type
=
type
;
}
@JsonValue
public
int
getType
()
{
return
type
;
}
@JsonCreator
public
static
RtkCalibrationTypeEnum
find
(
int
type
)
{
return
Arrays
.
stream
(
RtkCalibrationTypeEnum
.
values
()).
filter
(
typeEnum
->
typeEnum
.
type
==
type
).
findAny
()
.
orElse
(
UNKNOWN
);
}
}
cloud-sdk/src/main/java/com/dji/sdk/cloudapi/debug/api/AbstractDebugService.java
View file @
48b8d0bc
...
...
@@ -392,5 +392,19 @@ public abstract class AbstractDebugService {
request
);
}
/**
* 一键标定
* @param gateway gateway device
* @param request data
* @return services_reply
*/
@CloudSDKVersion
(
since
=
CloudSDKVersionEnum
.
V1_0_1
,
include
=
GatewayTypeEnum
.
DOCK3
)
public
TopicServicesResponse
<
ServicesReplyData
<
RemoteDebugResponse
>>
rtkCalibration
(
GatewayManager
gateway
,
BaseModel
request
)
{
return
servicesPublish
.
publish
(
new
TypeReference
<
RemoteDebugResponse
>()
{},
gateway
.
getGatewaySn
(),
DebugMethodEnum
.
RTK_CALIBRATION
.
getMethod
(),
request
);
}
}
cloud-sdk/src/main/java/com/dji/sdk/mqtt/events/EventsMethodEnum.java
View file @
48b8d0bc
...
...
@@ -64,6 +64,9 @@ public enum EventsMethodEnum {
ESIM_OPERATOR_SWITCH
(
"esim_operator_switch"
,
ChannelName
.
INBOUND_EVENTS_CONTROL_PROGRESS
,
new
TypeReference
<
EventsDataRequest
<
RemoteDebugProgress
>>()
{}),
RTK_CALIBRATION
(
"rtk_calibration"
,
ChannelName
.
INBOUND_EVENTS_CONTROL_PROGRESS
,
new
TypeReference
<
EventsDataRequest
<
RemoteDebugProgress
>>()
{}),
OTA_PROGRESS
(
"ota_progress"
,
ChannelName
.
INBOUND_EVENTS_OTA_PROGRESS
,
new
TypeReference
<
EventsDataRequest
<
OtaProgress
>>()
{}),
FILE_UPLOAD_PROGRESS
(
"fileupload_progress"
,
ChannelName
.
INBOUND_EVENTS_FILEUPLOAD_PROGRESS
,
new
TypeReference
<
EventsDataRequest
<
FileUploadProgress
>>()
{}),
...
...
sample/src/main/java/com/dji/sample/control/controller/DockController.java
View file @
48b8d0bc
...
...
@@ -62,5 +62,10 @@ public class DockController {
return
controlService
.
payloadCommands
(
param
);
}
@PostMapping
(
"/{sn}/jobs/rtkCalibration"
)
public
HttpResultResponse
createControlJob
(
@PathVariable
String
sn
,
@Valid
@RequestBody
RtkCalibrationParam
param
)
{
return
controlService
.
rtkCalibration
(
sn
,
param
);
}
}
sample/src/main/java/com/dji/sample/control/model/param/RtkCalibrationParam.java
0 → 100644
View file @
48b8d0bc
package
com
.
dji
.
sample
.
control
.
model
.
param
;
import
com.dji.sdk.cloudapi.debug.RtkCalibrationRequestData
;
import
lombok.Data
;
import
javax.validation.constraints.NotNull
;
import
java.util.List
;
/**
* @author guan
*/
@Data
public
class
RtkCalibrationParam
{
/**
* Identifies the dongle to be operated on.
*/
@NotNull
private
List
<
RtkCalibrationRequestData
>
devices
;
}
sample/src/main/java/com/dji/sample/control/service/IControlService.java
View file @
48b8d0bc
...
...
@@ -67,4 +67,7 @@ public interface IControlService {
* @return
*/
HttpResultResponse
payloadCommands
(
PayloadCommandsParam
param
)
throws
Exception
;
HttpResultResponse
rtkCalibration
(
String
sn
,
RtkCalibrationParam
param
);
}
sample/src/main/java/com/dji/sample/control/service/impl/ControlServiceImpl.java
View file @
48b8d0bc
...
...
@@ -266,4 +266,28 @@ public class ControlServiceImpl implements IControlService {
return
manageDeviceOperatingRecordService
.
saveOperatingRecord
(
sn
,
operatingType
,
paramStr
);
}
@Override
public
HttpResultResponse
rtkCalibration
(
String
sn
,
RtkCalibrationParam
param
)
{
saveOperatingRecord
(
sn
,
DebugMethodEnum
.
RTK_CALIBRATION
.
getMethod
(),
param
.
toString
());
boolean
isExist
=
deviceRedisService
.
checkDeviceOnline
(
sn
);
if
(!
isExist
)
{
return
HttpResultResponse
.
error
(
"The dock is offline."
);
}
DebugMethodEnum
methodEnum
=
DebugMethodEnum
.
RTK_CALIBRATION
;
// RemoteDebugHandler data = checkDebugCondition(sn, param, controlMethodEnum);
TopicServicesResponse
response
=
abstractDebugService
.
rtkCalibration
(
SDKManager
.
getDeviceSDK
(
sn
),
Objects
.
nonNull
(
methodEnum
.
getClazz
())
?
mapper
.
convertValue
(
param
,
methodEnum
.
getClazz
())
:
null
);
ServicesReplyData
serviceReply
=
(
ServicesReplyData
)
response
.
getData
();
if
(!
serviceReply
.
getResult
().
isSuccess
())
{
return
HttpResultResponse
.
error
(
serviceReply
.
getResult
());
}
return
HttpResultResponse
.
success
();
}
}
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