apis

package
v0.6.7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 15, 2024 License: AGPL-3.0 Imports: 63 Imported by: 0

Documentation

Overview

RhinoH3 固件相关操作

Index

Constants

View Source
const (
	SECRETKEY = "you-can-not-get-this-secret"
)

Variables

This section is empty.

Functions

func AiBase

func AiBase(c *gin.Context, ruleEngine typex.RuleX)

* * AiBase *

func AllHwPorts

func AllHwPorts(c *gin.Context, ruleEngine typex.RuleX)

* * 硬件接口 *

func AppDetail

func AppDetail(c *gin.Context, ruleEngine typex.RuleX)

* * APP 详情 *

func ApplyNewestEtcEthConfig

func ApplyNewestEtcEthConfig() error

* * 生成最新的ETC配置 *

func Apps

func Apps(c *gin.Context, ruleEngine typex.RuleX)

列表

func BindResource

func BindResource(c *gin.Context, ruleEngine typex.RuleX)

* * 绑定资源 *

func CatOsRelease

func CatOsRelease(c *gin.Context, ruleEngine typex.RuleX)

func ChangeX

func ChangeX(filePath string) error

* * 给Linux下 ELF 文件增加可执行权限 *

func CleanDhcpClients added in v0.6.6

func CleanDhcpClients(c *gin.Context, ruleEngine typex.RuleX)

* * 清空DHCP表 *

func CleanGoodsUpload

func CleanGoodsUpload(c *gin.Context, ruleEngine typex.RuleX)

* * 清理垃圾文件: 从数据库里面筛选出所有的路径检查是不是和本地文件匹配,没用的直接删了 *

func ClearInternalNotifies

func ClearInternalNotifies(c *gin.Context, ruleEngine typex.RuleX)

* * 清空 *

func CreateAiBase

func CreateAiBase(c *gin.Context, ruleEngine typex.RuleX)

func CreateApp

func CreateApp(c *gin.Context, ruleEngine typex.RuleX)

func CreateCronTask

func CreateCronTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

CreateCronTask godoc @BasePath /api/v1 @Summary 创建定时任务 @Tags crontask @param object body dto.CronTaskCreateDTO true "创建" @Accept json @Produce json @Success 200 {object} httpserver.R @Router /crontask/create [post]

func CreateDataSchema

func CreateDataSchema(c *gin.Context, ruleEngine typex.RuleX)

* * 新建一个物模型表 *

func CreateDevice

func CreateDevice(c *gin.Context, ruleEngine typex.RuleX)

创建设备

func CreateGoods

func CreateGoods(c *gin.Context, ruleEngine typex.RuleX)

* * 新建一个扩展 *

func CreateGroup

func CreateGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 新建大屏 *

func CreateInend

func CreateInend(c *gin.Context, ruleEngine typex.RuleX)

Create or Update InEnd

func CreateIotSchemaProperty added in v0.6.6

func CreateIotSchemaProperty(c *gin.Context, ruleEngine typex.RuleX)

分页获取

func CreateOutEnd

func CreateOutEnd(c *gin.Context, ruleEngine typex.RuleX)

Create or Update OutEnd

func CreateProtocolApp

func CreateProtocolApp(c *gin.Context, ruleEngine typex.RuleX)

* * 新建大屏 *

func CreateRule

func CreateRule(c *gin.Context, ruleEngine typex.RuleX)

Create rule

func CreateUser

func CreateUser(c *gin.Context, ruleEngine typex.RuleX)

CreateUser

func CreateUserLuaTemplate

func CreateUserLuaTemplate(c *gin.Context, ruleEngine typex.RuleX)

func CreateVisual

func CreateVisual(c *gin.Context, ruleEngine typex.RuleX)

func DataSchemaDetail

func DataSchemaDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 模型详情 *

func DeleteAiBase

func DeleteAiBase(c *gin.Context, ruleEngine typex.RuleX)

* * 删除 *

func DeleteCronTask

func DeleteCronTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

DeleteCronTask godoc @BasePath /api/v1 @Summary 删除定时任务 @Tags crontask @Param uuid query string true "uuid" @Accept json @Produce json @Success 200 {object} httpserver.R @Router /crontask/del [delete]

func DeleteDataSchema

func DeleteDataSchema(c *gin.Context, ruleEngine typex.RuleX)

* * 删除模型 *

func DeleteDevice

func DeleteDevice(c *gin.Context, ruleEngine typex.RuleX)

删除设备

func DeleteDhcpClient added in v0.6.6

func DeleteDhcpClient(c *gin.Context, ruleEngine typex.RuleX)

* * 删除某一个DHCP客户端 *

func DeleteGoods

func DeleteGoods(c *gin.Context, ruleEngine typex.RuleX)

* * 删除外挂 *

func DeleteGroup

func DeleteGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 删除大屏 *

func DeleteInEnd

func DeleteInEnd(c *gin.Context, ruleEngine typex.RuleX)

Delete inend by UUID

func DeleteIotSchemaProperty added in v0.6.6

func DeleteIotSchemaProperty(c *gin.Context, ruleEngine typex.RuleX)

删除属性

func DeleteOutEnd

func DeleteOutEnd(c *gin.Context, ruleEngine typex.RuleX)

Delete outEnd by UUID

func DeleteProtocolApp

func DeleteProtocolApp(c *gin.Context, ruleEngine typex.RuleX)

* * 删除大屏 *

func DeleteRule

func DeleteRule(c *gin.Context, ruleEngine typex.RuleX)

Delete rule by UUID

func DeleteUserLuaTemplate

func DeleteUserLuaTemplate(c *gin.Context, ruleEngine typex.RuleX)

* * 删除用户模板 *

func DeleteVisual

func DeleteVisual(c *gin.Context, ruleEngine typex.RuleX)

* * 删除大屏 *

func DeviceDetail

func DeviceDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 列表先读数据库,然后读内存,合并状态后输出 *

func DevicePropertiesPage added in v0.6.6

func DevicePropertiesPage(c *gin.Context, ruleEngine typex.RuleX)

* *物模型 *

func DownloadSqlite

func DownloadSqlite(c *gin.Context, ruleEngine typex.RuleX)

* * 备份Sqlite文件 *

func Drivers

func Drivers(c *gin.Context, ruleEngine typex.RuleX)

Get all Drivers

func Get4GBaseInfo

func Get4GBaseInfo(c *gin.Context, ruleEngine typex.RuleX)

* * 获取4G基本信息 *

func Get4GCOPS

func Get4GCOPS(c *gin.Context, ruleEngine typex.RuleX)

(1,"CHINA MOBILE","CMCC","46000",0), (3,"CHN-UNICOM","UNICOM","46001",7), +COPS: 0,0,\"CHINA MOBILE\",7

func Get4GCSQ

func Get4GCSQ(c *gin.Context, ruleEngine typex.RuleX)

* * 信号强度 *

func Get4GICCID

func Get4GICCID(c *gin.Context, ruleEngine typex.RuleX)

func GetAPN

func GetAPN(c *gin.Context, ruleEngine typex.RuleX)

func GetAllResources added in v0.6.7

func GetAllResources(c *gin.Context, ruleEngine typex.RuleX)

func GetCurrentNetConnection

func GetCurrentNetConnection(c *gin.Context, ruleEngine typex.RuleX)

* * 获取当前网络情况 *

func GetDHCP

func GetDHCP(c *gin.Context, ruleEngine typex.RuleX)

func GetDhcpClients

func GetDhcpClients(c *gin.Context, ruleEngine typex.RuleX)

* * 解析/var/lib/dhcp/dhcpd.leases文件获取DHCP客户端 *

func GetEthNetwork

func GetEthNetwork(c *gin.Context, ruleEngine typex.RuleX)

* * 展示网络配置信息 *

func GetFlvStreamDetail added in v0.6.7

func GetFlvStreamDetail(c *gin.Context, ruleEngine typex.RuleX)

* * FlvStream详情 *

func GetFlvStreamList added in v0.6.7

func GetFlvStreamList(c *gin.Context, ruleEngine typex.RuleX)

* * FlvStream列表 *

func GetGpuInfo added in v0.6.7

func GetGpuInfo(c *gin.Context, ruleEngine typex.RuleX)

* * 获取GPU信息 *

func GetHwPortDetail

func GetHwPortDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 获取详情 *

func GetInEndConfig

func GetInEndConfig(c *gin.Context, ruleEngine typex.RuleX)

* * UI配置表 *

func GetInEndModels

func GetInEndModels(c *gin.Context, ruleEngine typex.RuleX)

* * 属性表 *

func GetJpegStreamDetail added in v0.6.7

func GetJpegStreamDetail(c *gin.Context, ruleEngine typex.RuleX)

* * JpegStream详情 *

func GetJpegStreamList added in v0.6.7

func GetJpegStreamList(c *gin.Context, ruleEngine typex.RuleX)

* * JpegStream列表 *

func GetNetInterfaces

func GetNetInterfaces(c *gin.Context, ruleEngine typex.RuleX)

* * 本地网卡 *

func GetNmcliDeviceShow added in v0.6.6

func GetNmcliDeviceShow(c *gin.Context, ruleEngine typex.RuleX)

* 网卡详情: * nmcli device show eth0 *

func GetNmcliDeviceStatus added in v0.6.6

func GetNmcliDeviceStatus(c *gin.Context, ruleEngine typex.RuleX)

func GetOldDefaultIpRoute

func GetOldDefaultIpRoute(c *gin.Context, ruleEngine typex.RuleX)

* * 获取上一次的路由 *

func GetQueryData

func GetQueryData(c *gin.Context, ruleEngine typex.RuleX)

* * 执行查询 *

func GetRunningLog

func GetRunningLog(c *gin.Context, ruleEngine typex.RuleX)

* * 下载运行日志 *

func GetSchemaDefine

func GetSchemaDefine(c *gin.Context, ruleEngine typex.RuleX)

* * 获取单个仓库的表结构定义 *

func GetSchemaDefineList

func GetSchemaDefineList(c *gin.Context, ruleEngine typex.RuleX)

* * 获取仓库列表 *

func GetSchemaDetail

func GetSchemaDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 获取仓库细节 *

func GetSchemaList

func GetSchemaList(c *gin.Context, ruleEngine typex.RuleX)

* * 获取仓库结构列表 *

func GetSiteConfig

func GetSiteConfig(c *gin.Context, ruleEngine typex.RuleX)
func GetSysLogo(c *gin.Context, ruleEngine typex.RuleX)

* * 加载头像 *

func GetSystemTime

func GetSystemTime(c *gin.Context, ruleEngine typex.RuleX)

* * 获取系统时间 *

func GetThumbnail

func GetThumbnail(c *gin.Context, ruleEngine typex.RuleX)

* * 加载缩略图 *

func GetUartList

func GetUartList(c *gin.Context, ruleEngine typex.RuleX)

* * apiV2 *

func GetUarts

func GetUarts(c *gin.Context, ruleEngine typex.RuleX)

* * 获取本地的串口列表 *

func GetUpGradeLog

func GetUpGradeLog(c *gin.Context, ruleEngine typex.RuleX)

* * 获取本地升级日志 *

func GetVendorKey

func GetVendorKey(c *gin.Context, ruleEngine typex.RuleX)

func GetVideos added in v0.6.7

func GetVideos(c *gin.Context, ruleEngine typex.RuleX)

* * 获取视频接口 *

func GetVolume

func GetVolume(c *gin.Context, ruleEngine typex.RuleX)

* * 获取音量的值 *

func GetWifi

func GetWifi(c *gin.Context, ruleEngine typex.RuleX)

* * WIFI *

func GoodsDetail

func GoodsDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 详情 *

func GoodsList

func GoodsList(c *gin.Context, ruleEngine typex.RuleX)

func GroupDetail

func GroupDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏详情 *

func Hnc8PointsExport added in v0.6.7

func Hnc8PointsExport(c *gin.Context, ruleEngine typex.RuleX)

Hnc8Points 获取Hnc8_excel类型的点位数据

func Hnc8SheetDelete added in v0.6.7

func Hnc8SheetDelete(c *gin.Context, ruleEngine typex.RuleX)

* *删除 *

func Hnc8SheetDeleteAll added in v0.6.7

func Hnc8SheetDeleteAll(c *gin.Context, ruleEngine typex.RuleX)

* * 删除单行 *

func Hnc8SheetImport added in v0.6.7

func Hnc8SheetImport(c *gin.Context, ruleEngine typex.RuleX)

Hnc8SheetImport 上传Excel文件

func Hnc8SheetPageList added in v0.6.7

func Hnc8SheetPageList(c *gin.Context, ruleEngine typex.RuleX)

分页获取 SELECT * FROM `m_Hnc8_data_points` WHERE `m_Hnc8_data_points`.`device_uuid` = "DEVICEDQNLO8" ORDER BY created_at DESC LIMIT 2 OFFSET 10

func Hnc8SheetUpdate added in v0.6.7

func Hnc8SheetUpdate(c *gin.Context, ruleEngine typex.RuleX)

* * 更新点位表 *

func InEndDetail

func InEndDetail(c *gin.Context, ruleEngine typex.RuleX)

func InEnds

func InEnds(c *gin.Context, ruleEngine typex.RuleX)

Get all inends

func Info

func Info(c *gin.Context, ruleEngine typex.RuleX)

* * TODO:用户信息, 当前版本写死 下个版本实现数据库查找 *

func InternalNotifies

func InternalNotifies(c *gin.Context, ruleEngine typex.RuleX)

* * 站内消息 *

func InternalNotifiesHeader

func InternalNotifiesHeader(c *gin.Context, ruleEngine typex.RuleX)

* * 站内消息 *

func IotSchemaPropertyDetail added in v0.6.6

func IotSchemaPropertyDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 分页查找数据 *

func IotSchemaPropertyPageList added in v0.6.6

func IotSchemaPropertyPageList(c *gin.Context, ruleEngine typex.RuleX)

* * 列表 *

func IsExecutableFileUnix

func IsExecutableFileUnix(filePath string) bool

* * 判断是否可执行(Linux Only) *

func IsExecutableFileWin

func IsExecutableFileWin(filePath string) bool

* * 读取PE头判断是否可执行 *

func IsExecutableScript

func IsExecutableScript(fileExt string) bool

* * 是否是可执行脚本语言 *

func IsUnixElf

func IsUnixElf(filePath string) bool

* * 是否是可执行Linux文件 *

func IsWinPE

func IsWinPE(filePath string) bool

func ListByDevice

func ListByDevice(c *gin.Context, ruleEngine typex.RuleX)

* * 根据设备查询其Rules【0.6.4】 *

func ListByInend

func ListByInend(c *gin.Context, ruleEngine typex.RuleX)

* * 根据输入查询其Rules【0.6.4】 *

func ListCronTask

func ListCronTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

ListCronTask godoc @BasePath /api/v1 @Summary 获取所有定时任务 @Tags crontask @Produce json @Success 200 {object} httpserver.R @Router /crontask/list [get]

func ListDataSchema

func ListDataSchema(c *gin.Context, ruleEngine typex.RuleX)

* * 模型列表 *

func ListDeviceByGroup

func ListDeviceByGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 分组查看 *

func ListDeviceGroup

func ListDeviceGroup(c *gin.Context, ruleEngine typex.RuleX)

func ListGroup

func ListGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏列表 *

func ListProtocolApp

func ListProtocolApp(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏列表 *

func ListRunningTask

func ListRunningTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

func ListUserLuaTemplate

func ListUserLuaTemplate(c *gin.Context, ruleEngine typex.RuleX)

* * 用户模板列表 *

func ListUserLuaTemplateByGroup

func ListUserLuaTemplateByGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 用户模板分组查看 *

func ListUserLuaTemplateGroup

func ListUserLuaTemplateGroup(c *gin.Context, ruleEngine typex.RuleX)

func ListVisual

func ListVisual(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏列表 *

func ListVisualByGroup

func ListVisualByGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏分组查看 *

func ListVisualGroup

func ListVisualGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 查找分组 *

func LoadSystemSettingsAPI

func LoadSystemSettingsAPI()

func LogOut

func LogOut(c *gin.Context, ruleEngine typex.RuleX)

func Login

func Login(c *gin.Context, ruleEngine typex.RuleX)

Login TODO: 下个版本实现用户基础管理

func ModbusPointsExport

func ModbusPointsExport(c *gin.Context, ruleEngine typex.RuleX)

ModbusPoints 获取modbus_excel类型的点位数据

func ModbusSheetDelete

func ModbusSheetDelete(c *gin.Context, ruleEngine typex.RuleX)

* *删除 *

func ModbusSheetDeleteAll

func ModbusSheetDeleteAll(c *gin.Context, ruleEngine typex.RuleX)

* * 删除单行 *

func ModbusSheetImport

func ModbusSheetImport(c *gin.Context, ruleEngine typex.RuleX)

ModbusSheetImport 上传Excel文件

func ModbusSheetPageList

func ModbusSheetPageList(c *gin.Context, ruleEngine typex.RuleX)

分页获取 SELECT * FROM `m_modbus_data_points` WHERE `m_modbus_data_points`.`device_uuid` = "DEVICEDQNLO8" ORDER BY created_at DESC LIMIT 2 OFFSET 10

func ModbusSheetUpdate

func ModbusSheetUpdate(c *gin.Context, ruleEngine typex.RuleX)

* * 更新点位表 *

func MoveFile

func MoveFile(sourcePath, destPath string) error

* * 移动文件 *

func OutEndDetail

func OutEndDetail(c *gin.Context, ruleEngine typex.RuleX)

Get all outends

func OutEnds

func OutEnds(c *gin.Context, ruleEngine typex.RuleX)

func PageCronTaskResult

func PageCronTaskResult(c *gin.Context, ruleEngine typex.RuleX) (any, error)

PageCronTaskResult godoc @BasePath /api/v1 @Summary 分页获取定时任务执行结果 @Tags crontask @Param current query string false "current" @Param size query string false "size" @Param uuid query string false "uuid" @Accept json @Produce json @Success 200 {object} httpserver.R @Router /crontask/results/page [get]

func PathExists

func PathExists(path string) (bool, error)

func Ping

func Ping(c *gin.Context, ruleEngine typex.RuleX)

* * 健康检查接口, 一般用来监视是否工作 *

func PluginDetail

func PluginDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 插件详情 *

func PluginService

func PluginService(c *gin.Context, ruleEngine typex.RuleX)

func Plugins

func Plugins(c *gin.Context, ruleEngine typex.RuleX)

Get all plugins

func ProtocolAppDetail

func ProtocolAppDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏详情 *

func PublishVisual

func PublishVisual(c *gin.Context, ruleEngine typex.RuleX)

* * 发布 *

func ReStartRulex

func ReStartRulex(c *gin.Context, ruleEngine typex.RuleX)

* * 重启固件 *

func ReadInternalNotifies

func ReadInternalNotifies(c *gin.Context, ruleEngine typex.RuleX)

* * 阅读 *

func ReadSQLiteFileMagicNumber

func ReadSQLiteFileMagicNumber(filePath string) ([16]byte, error)

https://www.sqlite.org/fileformat.html

func Reboot

func Reboot(c *gin.Context, ruleEngine typex.RuleX)

* * 重启操作系统 *

func RecoverNew

func RecoverNew(c *gin.Context, ruleEngine typex.RuleX)

* * 回复出厂, 直接删除配置即可,但是现阶段暂时不实现 *

func RefreshPortList

func RefreshPortList(c *gin.Context, ruleEngine typex.RuleX)

* * 针对刚插入硬件的情况,需要及时刷新 *

func RemoveApp

func RemoveApp(c *gin.Context, ruleEngine typex.RuleX)

删除

func ResetInterMetric added in v0.6.7

func ResetInterMetric(c *gin.Context, ruleEngine typex.RuleX)

* * 重置度量值 *

func ResetSiteConfig

func ResetSiteConfig(c *gin.Context, ruleEngine typex.RuleX)

* * 重置站点 *

func RestartDevice

func RestartDevice(c *gin.Context, ruleEngine typex.RuleX)

重启

func RestartInEnd

func RestartInEnd(c *gin.Context, ruleEngine typex.RuleX)

func RestartOutEnd

func RestartOutEnd(c *gin.Context, ruleEngine typex.RuleX)

func RhinoPiRestart4G

func RhinoPiRestart4G(c *gin.Context, ruleEngine typex.RuleX)

* * 重启4G *

func RuleDetail

func RuleDetail(c *gin.Context, ruleEngine typex.RuleX)

func Rules

func Rules(c *gin.Context, ruleEngine typex.RuleX)

Get all rules

func RunningLogPathExists

func RunningLogPathExists(path string) bool

func ScanWIFIWithNmcli

func ScanWIFIWithNmcli(c *gin.Context, ruleEngine typex.RuleX)

* * 扫描WIFI *

func SearchUserLuaTemplateGroup

func SearchUserLuaTemplateGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 模糊查询 *

func SetAPN

func SetAPN(c *gin.Context, ruleEngine typex.RuleX)

func SetDHCP

func SetDHCP(c *gin.Context, ruleEngine typex.RuleX)

func SetEthNetwork

func SetEthNetwork(c *gin.Context, ruleEngine typex.RuleX)

* * 设置两个网口 *

func SetNewDefaultIpRoute

func SetNewDefaultIpRoute(c *gin.Context, ruleEngine typex.RuleX)

func SetSystemTime

func SetSystemTime(c *gin.Context, ruleEngine typex.RuleX)

*

  • 设置时间、时区
  • sudo date -s "2023-08-07 15:30:00" 获取时间: date "+%Y-%m-%d %H:%M:%S" -> 2023-08-07 15:30:00

func SetVolume

func SetVolume(c *gin.Context, ruleEngine typex.RuleX)

* * 设置音量 *

func SetWifi

func SetWifi(c *gin.Context, ruleEngine typex.RuleX)

* * *通过nmcli配置WIFI

func SiemensPointsExport

func SiemensPointsExport(c *gin.Context, ruleEngine typex.RuleX)

SiemensPoints 获取Siemens_excel类型的点位数据

func SiemensSheetDelete

func SiemensSheetDelete(c *gin.Context, ruleEngine typex.RuleX)

func SiemensSheetDeleteAll

func SiemensSheetDeleteAll(c *gin.Context, ruleEngine typex.RuleX)

* * 删除单行 *

func SiemensSheetImport

func SiemensSheetImport(c *gin.Context, ruleEngine typex.RuleX)

SiemensSheetImport 上传Excel文件

func SiemensSheetPageList

func SiemensSheetPageList(c *gin.Context, ruleEngine typex.RuleX)

分页获取 SELECT * FROM `m_Siemens_data_points` WHERE `m_Siemens_data_points`.`device_uuid` = "DEVICEDQNLO8" ORDER BY created_at DESC LIMIT 2 OFFSET 10

func SiemensSheetUpdate

func SiemensSheetUpdate(c *gin.Context, ruleEngine typex.RuleX)

* * 更新点位表 *

func SnapshotDump

func SnapshotDump(c *gin.Context, ruleEngine typex.RuleX)

* * SnapshotDump *

func SourceCount

func SourceCount(c *gin.Context, ruleEngine typex.RuleX)

Get statistics data

func StartApp

func StartApp(c *gin.Context, ruleEngine typex.RuleX)

* * 启动应用: 用来从数据库里面启动, 有2种情况: * 1 停止了的, 就需要重启一下 * 2 还未被加载进来的(刚新建),先load后start

func StartGoods

func StartGoods(c *gin.Context, ruleEngine typex.RuleX)

* * 尝试启动已经停止的进程 *

func StartTask

func StartTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

StartTask godoc @BasePath /api/v1 @Summary 启动定时任务 @Tags crontask @Param uuid query string true "uuid" @Produce json @Success 200 {object} httpserver.R @Router /crontask/start [get]

func StartedAt

func StartedAt(c *gin.Context, ruleEngine typex.RuleX)

* * 计算开机时间 *

func Statistics

func Statistics(c *gin.Context, ruleEngine typex.RuleX)

Get statistics data

func StopApp

func StopApp(c *gin.Context, ruleEngine typex.RuleX)

停止, 但是不删除,仅仅是把虚拟机进程给杀死

func StopGoods

func StopGoods(c *gin.Context, ruleEngine typex.RuleX)

* * 停止正在运行的进程 *

func StopTask

func StopTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

StopTask godoc @BasePath /api/v1 @Summary 停止定时任务 @Tags crontask @Param uuid query string true "uuid" @Produce json @Success 200 {object} httpserver.R @Router /crontask/stop [get]

func System

func System(c *gin.Context, ruleEngine typex.RuleX)

* * 获取系统指标, Go 自带这个不准, 后期版本需要更换跨平台实现 *

func TerminateRunningTask

func TerminateRunningTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

func TestCreateNotifies

func TestCreateNotifies(c *gin.Context, ruleEngine typex.RuleX)

func TestDeviceCallback

func TestDeviceCallback(c *gin.Context, ruleEngine typex.RuleX)

* * Device *

func TestOutEndCallback

func TestOutEndCallback(c *gin.Context, ruleEngine typex.RuleX)

* * 测试 OutEnd 的结果 *

func TestSourceCallback

func TestSourceCallback(c *gin.Context, ruleEngine typex.RuleX)

* * 测试脚本执行效果 *

func UnBindResource

func UnBindResource(c *gin.Context, ruleEngine typex.RuleX)

* * 取消绑定 *

func UpdateAiBase

func UpdateAiBase(c *gin.Context, ruleEngine typex.RuleX)

* * 更新 *

func UpdateApp

func UpdateApp(c *gin.Context, ruleEngine typex.RuleX)

* * Update app *

func UpdateCronTask

func UpdateCronTask(c *gin.Context, ruleEngine typex.RuleX) (any, error)

UpdateCronTask godoc @BasePath /api/v1 @Summary 更新定时任务 @Tags crontask @param object body dto.CronTaskUpdateDTO true "更新" @Accept json @Produce json @Success 200 {object} httpserver.R @Router /crontask/update [put]

func UpdateDataSchema

func UpdateDataSchema(c *gin.Context, ruleEngine typex.RuleX)

* * 更新模型 *

func UpdateDevice

func UpdateDevice(c *gin.Context, ruleEngine typex.RuleX)

更新设备

func UpdateGoods

func UpdateGoods(c *gin.Context, ruleEngine typex.RuleX)

* * 更新操作 *

func UpdateGroup

func UpdateGroup(c *gin.Context, ruleEngine typex.RuleX)

* * 更新大屏 *

func UpdateHwPortConfig

func UpdateHwPortConfig(c *gin.Context, ruleEngine typex.RuleX)

* * 更新接口参数 *

func UpdateInend

func UpdateInend(c *gin.Context, ruleEngine typex.RuleX)

* * 更新输入资源 *

func UpdateIotSchemaProperty added in v0.6.6

func UpdateIotSchemaProperty(c *gin.Context, ruleEngine typex.RuleX)

更新属性

func UpdateOutEnd

func UpdateOutEnd(c *gin.Context, ruleEngine typex.RuleX)

更新

func UpdateProtocolApp

func UpdateProtocolApp(c *gin.Context, ruleEngine typex.RuleX)

* * 更新大屏 *

func UpdateRule

func UpdateRule(c *gin.Context, ruleEngine typex.RuleX)

* * Update *

func UpdateSiteConfig

func UpdateSiteConfig(c *gin.Context, ruleEngine typex.RuleX)

func UpdateTimeByNtp

func UpdateTimeByNtp(c *gin.Context, ruleEngine typex.RuleX)

* * 更新时间 *

func UpdateUser

func UpdateUser(c *gin.Context, ruleEngine typex.RuleX)

UpdateUser

func UpdateUserLuaTemplate

func UpdateUserLuaTemplate(c *gin.Context, ruleEngine typex.RuleX)

* * 更新用户模板 *

func UpdateVisual

func UpdateVisual(c *gin.Context, ruleEngine typex.RuleX)

* * 更新大屏 *

func UpgradeFirmWare

func UpgradeFirmWare(c *gin.Context, ruleEngine typex.RuleX)

* * 解压、升级 *

func UploadFile

func UploadFile(c *gin.Context, ruleEngine typex.RuleX)

* * 上传缩略图 *

func UploadFirmWare

func UploadFirmWare(c *gin.Context, ruleEngine typex.RuleX)

*

  • 上传最新固件, 必须是ZIP包, 固件保存在:./upload/Firmware/Firmware.zip 压缩包内就是rulex发布的最新版本

*

func UploadSqlite

func UploadSqlite(c *gin.Context, ruleEngine typex.RuleX)

* * 上传恢复 *

func UploadSysLogo(c *gin.Context, ruleEngine typex.RuleX)

* * 上传头像 *

func UserDetail

func UserDetail(c *gin.Context, ruleEngine typex.RuleX)

func UserLuaTemplateDetail

func UserLuaTemplateDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 用户模板详情 *

func Users

func Users(c *gin.Context, ruleEngine typex.RuleX)

func ValidateLuaSyntax

func ValidateLuaSyntax(c *gin.Context, ruleEngine typex.RuleX)

* * 验证lua语法 *

func VisualDetail

func VisualDetail(c *gin.Context, ruleEngine typex.RuleX)

* * 大屏详情 *

Types

type APNFormVo

type APNFormVo struct {
	SenceId  int    `json:"senceId"`
	PTytpe   int    `json:"ptytpe"`
	Auth     int    `json:"auth"`
	CDMAPWD  int    `json:"cdmapwd"`
	APN      string `json:"apn"`
	Username string `json:"apn_username"`
	Password string `json:"apn_password"`
}

* * 设置APN *

ptype int, apn, username, password string, auth, cdmaPwd int

type DHCPVo

type DHCPVo struct {
	Iface       string `json:"iface" validate:"required"`         // 用来做子网的那个网卡的网卡名
	Ip          string `json:"ip" validate:"required"`            // 用来做子网的那个网卡的IP地址
	Gateway     string `json:"gateway" validate:"required"`       // 用来做子网的那个网卡的网关
	Network     string `json:"network" validate:"required"`       // 用来做子网的那个网卡的网段
	Netmask     string `json:"netmask" validate:"required"`       // 用来做子网的那个网卡子网掩码
	IpPoolBegin string `json:"ip_pool_begin" validate:"required"` // DHCP IP地址池起始
	IpPoolEnd   string `json:"ip_pool_end" validate:"required"`   // DHCP IP地址池结束
	//------------------------------------
	// IP 路由方向, 默认 ETH1 透传到 4G
	//------------------------------------
	IfaceFrom string `json:"iface_from" validate:"required"` // 流量入口,固定ETH1
	IfaceTo   string `json:"iface_to" validate:"required"`   // 流量出口,固定4G
}

* * DHCP 配置 *

type DevicePropertyVo added in v0.6.6

type DevicePropertyVo struct {
	Label       string `json:"label"`       // UI显示的那个文本
	Name        string `json:"name"`        // 变量关联名
	Description string `json:"description"` // 额外信息
	Type        string `json:"type"`        // 类型, 只能是上面几种
	Rw          string `json:"rw"`          // R读 W写 RW读写
	Unit        string `json:"unit"`        // 单位 例如:摄氏度、米、牛等等
	Value       string `json:"value"`       // 值
}

* * 属性 *

type DeviceVo

type DeviceVo struct {
	UUID        string                 `json:"uuid"`
	Gid         string                 `json:"gid"`
	Name        string                 `json:"name"`
	Type        string                 `json:"type"`
	SchemaId    string                 `json:"schemaId"`
	State       int                    `json:"state"`
	Config      map[string]interface{} `json:"config"`
	Description string                 `json:"description"`
}

type DhcpLeaseVo

type DhcpLeaseVo struct {
	MacAddress string `json:"mac_address"` // MAC地址
	IpAddress  string `json:"ip_address"`  // IP地址
	Hostname   string `json:"hostname"`    // 主机名
}

* * 获取当前在线的DHCP主机列表 *

type FlvStreamVo added in v0.6.7

type FlvStreamVo struct {
	Type       string           `json:"type"` // push | pull
	LiveId     string           `json:"liveId"`
	Pulled     bool             `json:"pulled"`
	Resolution utils.Resolution `json:"resolution"`
}

type Hnc8PointVo added in v0.6.7

type Hnc8PointVo struct {
	UUID          string `json:"uuid,omitempty"`
	DeviceUUID    string `json:"device_uuid"`
	Name          string `json:"name"`
	Alias         string `json:"alias"`
	ApiFunction   string `json:"apiFunction"`
	Group         *int   `json:"group"`
	Address       string `json:"address"`
	Status        int    `json:"status"`        // 运行时数据
	LastFetchTime uint64 `json:"lastFetchTime"` // 运行时数据
	Value         string `json:"value"`         // 运行时数据
}

type HwPortOccupyVo

type HwPortOccupyVo struct {
	UUID string `json:"uuid"` // UUID
	Type string `json:"type"` // DEVICE, Other......
	Name string `json:"name"` // DEVICE, Other......
}

type HwPortVo

type HwPortVo struct {
	UUID        string         `json:"uuid"`
	Name        string         `json:"name"`   // 接口名称
	Type        string         `json:"type"`   // 接口类型, UART(串口),USB(USB),FD(通用文件句柄)
	Alias       string         `json:"alias"`  // 别名
	Config      any            `json:"config"` // 配置
	Busy        bool           `json:"busy"`   // 运行时数据,是否被占
	OccupyBy    HwPortOccupyVo `json:"occupyBy"`
	Description string         `json:"description"` // 额外备注

}

type InternalNotifyVo

type InternalNotifyVo struct {
	UUID    string `json:"uuid"`           // UUID
	Type    string `json:"type"`           // INFO | ERROR | WARNING
	Status  int    `json:"status"`         // 1 未读 2 已读
	Event   string `json:"event"`          // 字符串
	Ts      uint64 `json:"ts"`             // 时间戳
	Summary string `json:"summary"`        // 概览,为了节省流量,在消息列表只显示这个字段,Info值为“”
	Info    string `json:"info,omitempty"` // 消息内容,是个文本,详情显示
}

* * 内部事件 *

type IoTPropertyRuleVo added in v0.6.6

type IoTPropertyRuleVo struct {
	DefaultValue any    `json:"defaultValue"` // 默认值
	Max          *int   `json:"max"`          // 最大值
	Min          *int   `json:"min"`          // 最小值
	TrueLabel    string `json:"trueLabel"`    // 真值label
	FalseLabel   string `json:"falseLabel"`   // 假值label
	Round        *int   `json:"round"`        // 小数点位
}

func (IoTPropertyRuleVo) IoTPropertyRuleFromString added in v0.6.6

func (O IoTPropertyRuleVo) IoTPropertyRuleFromString(s string) error

* * 从数据库反解析 *

func (*IoTPropertyRuleVo) ParseRuleFromModel added in v0.6.6

func (P *IoTPropertyRuleVo) ParseRuleFromModel(s string) error

* * 从数据库保存的String字符串反解析规则 *

func (IoTPropertyRuleVo) String added in v0.6.6

func (O IoTPropertyRuleVo) String() string

* * 属性 *

type IoTSchemaVo added in v0.6.6

type IoTSchemaVo struct {
	UUID        string `json:"uuid,omitempty"`
	Name        string `json:"name"`
	Description string `json:"description"`
}

* * 新建模型 *

type IotPropertyVo added in v0.6.6

type IotPropertyVo struct {
	UUID        string            `json:"uuid"`        // UUID
	SchemaId    string            `json:"schemaId"`    //模型ID
	Label       string            `json:"label"`       // UI显示的那个文本
	Name        string            `json:"name"`        // 变量关联名
	Description string            `json:"description"` // 额外信息
	Type        string            `json:"type"`        // 类型, 只能是上面几种
	Rw          string            `json:"rw"`          // R读 W写 RW读写
	Unit        string            `json:"unit"`        // 单位 例如:摄氏度、米、牛等等
	Rule        IoTPropertyRuleVo `json:"rule"`        // 规则,IoTPropertyRule
}

* * 属性 *

type IpRouteVo

type IpRouteVo struct {
	UUID  string `json:"uuid"`
	Ip    string `json:"ip" validate:"required"`
	Iface string `json:"iface" validate:"required"`
}

*

  • 更新默认路由 1 取上一次的路由 2 配置最新的 4 删除上一次的 5 更新最新的路由

*

type JpegStreamVo added in v0.6.7

type JpegStreamVo struct {
	Type       string           `json:"type"` // push | pull
	LiveId     string           `json:"liveId"`
	Pulled     bool             `json:"pulled"`
	Resolution utils.Resolution `json:"resolution"`
}

type JwtClaims

type JwtClaims struct {
	Username string
	jwt.StandardClaims
}

type MGenericGroupRelationVo

type MGenericGroupRelationVo struct {
	Gid string `json:"gid" validate:"required"` // 分组ID
	Rid string `json:"rid" validate:"required"` // 被绑定方
}

type MGenericGroupVo

type MGenericGroupVo struct {
	UUID   string `json:"uuid" validate:"required"` // 名称
	Name   string `json:"name" validate:"required"` // 名称
	Type   string `json:"type" validate:"required"` // 组的类型, DEVICE: 设备分组, VISUAL: 大屏分组
	Parent string `json:"parent"`                   // 上级, 如果是0表示根节点
}

type ModbusPointVo

type ModbusPointVo struct {
	UUID          string   `json:"uuid,omitempty"`
	DeviceUUID    string   `json:"device_uuid"`
	Tag           string   `json:"tag"`
	Alias         string   `json:"alias"`
	Function      *int     `json:"function"`
	SlaverId      *byte    `json:"slaverId"`
	Address       *uint16  `json:"address"`
	Frequency     *int64   `json:"frequency"`
	Quantity      *uint16  `json:"quantity"`
	Type          string   `json:"type"`          // 数据类型
	Order         string   `json:"order"`         // 字节序
	Weight        *float64 `json:"weight"`        // 权重
	Status        int      `json:"status"`        // 运行时数据
	LastFetchTime uint64   `json:"lastFetchTime"` // 运行时数据
	Value         string   `json:"value"`         // 运行时数据

}

type RulexResource added in v0.6.7

type RulexResource struct {
	UUID string `json:"uuid"` // UUID
	Name string `json:"name"` // 名称
}

* * 给前端快速查询当前系统内的资源 *

type SiemensPointVo

type SiemensPointVo struct {
	UUID           string   `json:"uuid"`
	DeviceUUID     string   `json:"device_uuid"`
	SiemensAddress string   `json:"siemensAddress"` // 西门子的地址字符串
	Tag            string   `json:"tag"`
	Alias          string   `json:"alias"`
	DataOrder      string   `json:"dataOrder"` // 字节序
	DataType       string   `json:"dataType"`
	Frequency      *int64   `json:"frequency"`
	Weight         *float64 `json:"weight"`        // 权重
	Status         int      `json:"status"`        // 运行时数据
	LastFetchTime  uint64   `json:"lastFetchTime"` // 运行时数据
	Value          string   `json:"value"`         // 运行时数据
}

type SiteConfigVo

type SiteConfigVo struct {
	SiteName string `json:"siteName"`
	AppName  string `json:"appName"`
}

type UartConfigVo

type UartConfigVo struct {
	Timeout  int    `json:"timeout"`
	Uart     string `json:"uart"`
	BaudRate int    `json:"baudRate"`
	DataBits int    `json:"dataBits"`
	Parity   string `json:"parity"`
	StopBits int    `json:"stopBits"`
}

func (UartConfigVo) JsonString

func (u UartConfigVo) JsonString() string

type UserLuaTemplateVo

type UserLuaTemplateVo struct {
	Gid       string                     `json:"gid,omitempty"`  // 分组ID
	UUID      string                     `json:"uuid,omitempty"` // 名称
	Label     string                     `json:"label"`          // 快捷代码名称
	Apply     string                     `json:"apply"`          // 快捷代码
	Type      string                     `json:"type"`           // 类型 固定为function类型detail
	Detail    string                     `json:"detail"`         // 细节
	Variables []dto.LuaTemplateVariables `json:"variables"`      // 变量
}

type VisualVo

type VisualVo struct {
	Gid       string `json:"gid"`                         // 分组ID
	UUID      string `json:"uuid"`                        // 名称
	Name      string `json:"name" validate:"required"`    // 名称
	Type      string `json:"type"`                        // 类型
	Content   string `json:"content" validate:"required"` // 大屏的内容
	Thumbnail string `json:"thumbnail"`
	Status    *bool  `json:"status"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL