%%%------------------------------------------------------------------- %%% @author licheng5 %%% @copyright (C) 2023, %%% @doc %%% %%% @end %%% Created : 17. 4月 2023 16:41 %%%------------------------------------------------------------------- -module(iot_config). -author("licheng5"). %% API -export([emqt_opts/1]). emqt_opts(ClientSuffix) when is_binary(ClientSuffix) -> %% 建立到emqx服务器的连接 {ok, Props} = application:get_env(iot, emqx_server), EMQXHost = proplists:get_value(host, Props), EMQXPort = proplists:get_value(port, Props, 18080), Username = proplists:get_value(username, Props), Password = proplists:get_value(password, Props), RetryInterval = proplists:get_value(retry_interval, Props, 5), Keepalive = proplists:get_value(keepalive, Props, 86400), Node = atom_to_binary(node()), ClientId = <<"mqtt-client-", Node/binary, "-", ClientSuffix/binary>>, [ {clientid, ClientId}, {host, EMQXHost}, {port, EMQXPort}, {owner, self()}, {tcp_opts, []}, {username, Username}, {password, Password}, {keepalive, Keepalive}, {auto_ack, true}, {proto_ver, v5}, {retry_interval, RetryInterval} ].