46 lines
1.3 KiB
Erlang
46 lines
1.3 KiB
Erlang
%%%-------------------------------------------------------------------
|
|
%%% @author anlicheng
|
|
%%% @copyright (C) 2024, <COMPANY>
|
|
%%% @doc
|
|
%%% 数据类型统一为 LineProtocol
|
|
%%% @end
|
|
%%% Created : 06. 5月 2024 18:17
|
|
%%%-------------------------------------------------------------------
|
|
-author("anlicheng").
|
|
|
|
-record(http_endpoint, {
|
|
url = <<>> :: binary(),
|
|
pool_size = 10 :: integer()
|
|
}).
|
|
|
|
-record(mqtt_endpoint, {
|
|
host = <<>> :: binary(),
|
|
port = 0 :: integer(),
|
|
client_id = <<>> :: binary(),
|
|
username = <<>> :: binary(),
|
|
password = <<>> :: binary(),
|
|
topic = <<>> :: binary(),
|
|
qos = 0 :: integer()
|
|
}).
|
|
|
|
-record(kafka_endpoint, {
|
|
% {mechanism :: atom(), username = <<>> :: binary(), password = <<>> :: binary()}
|
|
sasl_config :: undefined | tuple(),
|
|
bootstrap_servers = [] :: [{string(), integer()}],
|
|
topic = <<>> :: binary()
|
|
}).
|
|
|
|
-record(endpoint, {
|
|
id :: integer(),
|
|
%% 全局唯一,在路由规则中通过名称来指定
|
|
name :: binary(),
|
|
%% 标题描述
|
|
title = <<>> :: binary(),
|
|
%% 配置项, 格式: #{<<"protocol">> => <<"http|https|ws|kafka|mqtt">>, <<"args">> => #{}}
|
|
config = #http_endpoint{} :: #http_endpoint{} | #mqtt_endpoint{} | #kafka_endpoint{},
|
|
status = 0,
|
|
%% 更新时间
|
|
updated_at = 0 :: integer(),
|
|
%% 创建时间
|
|
created_at = 0 :: integer()
|
|
}). |