Merge remote-tracking branch 'origin/dev_MogoAP_eagle-1030_211020_8.0.14' into dev_MogoAP_eagle-1030_211020_8.0.14
This commit is contained in:
@@ -3,10 +3,7 @@ package com.mogo.eagle.core.function.monitoring
|
||||
import android.os.Handler
|
||||
import android.os.Looper
|
||||
import android.os.Message
|
||||
import com.mogo.eagle.core.data.camera.Camera
|
||||
import com.mogo.eagle.core.data.camera.CameraEntity
|
||||
import com.mogo.eagle.core.data.camera.LiveCameraInfo
|
||||
import com.mogo.eagle.core.data.camera.ReqLiveCarBean
|
||||
import com.mogo.eagle.core.data.camera.*
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager
|
||||
import com.mogo.eagle.core.function.monitoring.net.CameraListServices
|
||||
@@ -39,8 +36,9 @@ class CronTaskManager {
|
||||
when (msg.what) {
|
||||
CRON_TASK_TYPE -> {
|
||||
removeMessages(CRON_TASK_TYPE)
|
||||
// 路测和车侧摄像头列表分开调用
|
||||
requestCameraList()
|
||||
// 路测和车侧摄像头列表分开调用
|
||||
// requestCameraList()
|
||||
requestDeviceList()
|
||||
requestCarCameraList()
|
||||
sendEmptyMessageDelayed(CRON_TASK_TYPE, 10000)
|
||||
}
|
||||
@@ -48,6 +46,7 @@ class CronTaskManager {
|
||||
}
|
||||
}
|
||||
|
||||
@Deprecated("已废弃", ReplaceWith("requestDeviceList()"), DeprecationLevel.WARNING)
|
||||
private fun requestCameraList() {
|
||||
// 衡阳可直播的摄像头有限,先写死roadId便于调试
|
||||
disposable = netWork.create(CameraListServices::class.java, HostConst.CAMERA_STREAM_HOST)
|
||||
@@ -73,6 +72,37 @@ class CronTaskManager {
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 请求路口一定范围内的设备信息(包含:摄像头、灯)
|
||||
*/
|
||||
private fun requestDeviceList() {
|
||||
CallerMapLocationListenerManager.getCurrentLocation()?.let { location ->
|
||||
disposable = netWork.create(CameraListServices::class.java, HostConst.MEC_ETL_HOST)
|
||||
.getDeviceList(location.longitude, location.latitude, 500)
|
||||
.subscribeOn(Schedulers.io())
|
||||
.map { cameraListInfo ->
|
||||
cameraListInfo.result?.crossings?.flatMap { crossing ->
|
||||
crossing.cameras.filter { camera ->
|
||||
!camera.ip.isNullOrEmpty()
|
||||
}.map {
|
||||
CameraEntity(it.flvUrl, "", it.roadName,
|
||||
it.crossingName, it.getHeadingStr(), it.ip)
|
||||
}
|
||||
} ?: ArrayList()
|
||||
}
|
||||
.observeOn(AndroidSchedulers.mainThread())
|
||||
.subscribe({
|
||||
cameraList = it
|
||||
Logger.d(TAG, "requestDeviceList返回结果为:$it")
|
||||
}, {
|
||||
it.printStackTrace()
|
||||
Logger.e(TAG, "requestDeviceList:message is:${it.message}, cause is:${it.cause}")
|
||||
})
|
||||
} ?: run {
|
||||
Logger.e(TAG, "CurrentLocation is null!")
|
||||
}
|
||||
}
|
||||
|
||||
private fun requestCarCameraList() {
|
||||
CallerMapLocationListenerManager.getCurrentLocation()?.let { location ->
|
||||
carDisposable = netWork.create(CameraListServices::class.java, HostConst.LAUNCHER_SNAPSHOT_HOST)
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
package com.mogo.eagle.core.function.monitoring.net
|
||||
|
||||
import com.mogo.eagle.core.data.camera.CameraListInfo
|
||||
import com.mogo.eagle.core.data.camera.CameraStreamEntity
|
||||
import com.mogo.eagle.core.data.camera.LiveCarCameraInfo
|
||||
import com.mogo.eagle.core.data.camera.ReqLiveCarBean
|
||||
import com.mogo.eagle.core.data.camera.*
|
||||
import io.reactivex.Single
|
||||
import retrofit2.http.*
|
||||
|
||||
@@ -16,4 +13,10 @@ interface CameraListServices {
|
||||
|
||||
@GET("/openStream/{cameraIp}")
|
||||
fun openCameraStream(@Path("cameraIp") cameraIp: String): Single<CameraStreamEntity>
|
||||
|
||||
@GET("/mec-etl-server/crossing/geo/device")
|
||||
fun getDeviceList(
|
||||
@Query("lon") lon: Double, @Query("lat") lat: Double,
|
||||
@Query("radiusMeter") radiusMeter: Int
|
||||
): Single<CameraListInfo?>
|
||||
}
|
||||
@@ -62,7 +62,7 @@ data class Camera(
|
||||
@SerializedName("id")
|
||||
var id: String,
|
||||
@SerializedName("ip")
|
||||
var ip: String,
|
||||
var ip: String?,
|
||||
@SerializedName("lat")
|
||||
var lat: Double,
|
||||
@SerializedName("lon")
|
||||
|
||||
@@ -22,6 +22,7 @@ public class HostConst {
|
||||
public static final String WEBSOCKET_DOMAIN = "dzt-Instant.zhidaozhixing.com";
|
||||
public static final String CAMERA_STREAM_HOST = "http://dzt-smartTransportationAiCloud.zhidaozhixing.com";
|
||||
public static final String OPEN_CAMERA_STREAM_HOST = "http://10.0.16.6:18080";
|
||||
public static final String MEC_ETL_HOST = "http://dzt-mecEtl.zhidaozhixing.com";
|
||||
|
||||
public static final String SOCKET_CENTER_DOMAIN = "socketRegion";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user