|
@@ -97,7 +97,7 @@ handle_packet(_Packet, State = #proto_state{connected = false}) ->
|
|
|
|
|
|
|
|
handle_packet(?PACKET_TYPE(Packet, Type),
|
|
handle_packet(?PACKET_TYPE(Packet, Type),
|
|
|
State = #proto_state { peer_name = PeerName, client_id = ClientId }) ->
|
|
State = #proto_state { peer_name = PeerName, client_id = ClientId }) ->
|
|
|
- lager:info("RECV from ~s/~s: ~s", [PeerName, ClientId, emqtt_packet:dump(Packet)]),
|
|
|
|
|
|
|
+ lager:info("RECV from ~s@~s: ~s", [ClientId, PeerName, emqtt_packet:dump(Packet)]),
|
|
|
case validate_packet(Type, Packet) of
|
|
case validate_packet(Type, Packet) of
|
|
|
ok ->
|
|
ok ->
|
|
|
handle_packet(Type, Packet, State);
|
|
handle_packet(Type, Packet, State);
|
|
@@ -114,7 +114,7 @@ handle_packet(?CONNECT, Packet = #mqtt_packet {
|
|
|
keep_alive = KeepAlive,
|
|
keep_alive = KeepAlive,
|
|
|
client_id = ClientId } = Var },
|
|
client_id = ClientId } = Var },
|
|
|
State = #proto_state{ peer_name = PeerName} ) ->
|
|
State = #proto_state{ peer_name = PeerName} ) ->
|
|
|
- lager:info("RECV from ~s/~s: ~s", [PeerName, ClientId, emqtt_packet:dump(Packet)]),
|
|
|
|
|
|
|
+ lager:info("RECV from ~s@~s: ~s", [ClientId, PeerName, emqtt_packet:dump(Packet)]),
|
|
|
{ReturnCode, State1} =
|
|
{ReturnCode, State1} =
|
|
|
case {lists:member(ProtoVersion, proplists:get_keys(?PROTOCOL_NAMES)),
|
|
case {lists:member(ProtoVersion, proplists:get_keys(?PROTOCOL_NAMES)),
|
|
|
valid_client_id(ClientId)} of
|
|
valid_client_id(ClientId)} of
|
|
@@ -128,7 +128,6 @@ handle_packet(?CONNECT, Packet = #mqtt_packet {
|
|
|
lager:error("MQTT login failed - no credentials"),
|
|
lager:error("MQTT login failed - no credentials"),
|
|
|
{?CONNACK_CREDENTIALS, State#proto_state{client_id = ClientId}};
|
|
{?CONNACK_CREDENTIALS, State#proto_state{client_id = ClientId}};
|
|
|
true ->
|
|
true ->
|
|
|
- lager:info("connect from clientid: ~s, keepalive: ~p", [ClientId, KeepAlive]),
|
|
|
|
|
start_keepalive(KeepAlive),
|
|
start_keepalive(KeepAlive),
|
|
|
emqtt_cm:register(ClientId, self()),
|
|
emqtt_cm:register(ClientId, self()),
|
|
|
{?CONNACK_ACCEPT,
|
|
{?CONNACK_ACCEPT,
|
|
@@ -225,7 +224,6 @@ handle_packet(?PINGREQ, #mqtt_packet{}, State) ->
|
|
|
{ok, State};
|
|
{ok, State};
|
|
|
|
|
|
|
|
handle_packet(?DISCONNECT, #mqtt_packet{}, State=#proto_state{peer_name = PeerName, client_id = ClientId}) ->
|
|
handle_packet(?DISCONNECT, #mqtt_packet{}, State=#proto_state{peer_name = PeerName, client_id = ClientId}) ->
|
|
|
- lager:info("RECV from ~s/~s: DISCONNECT", [PeerName, ClientId]),
|
|
|
|
|
{stop, State}.
|
|
{stop, State}.
|
|
|
|
|
|
|
|
make_packet(Type) when Type >= ?CONNECT andalso Type =< ?DISCONNECT ->
|
|
make_packet(Type) when Type >= ?CONNECT andalso Type =< ?DISCONNECT ->
|
|
@@ -271,7 +269,7 @@ send_message(Message = #mqtt_message{
|
|
|
end.
|
|
end.
|
|
|
|
|
|
|
|
send_packet(Packet, #proto_state{socket = Sock, peer_name = PeerName, client_id = ClientId}) ->
|
|
send_packet(Packet, #proto_state{socket = Sock, peer_name = PeerName, client_id = ClientId}) ->
|
|
|
- lager:info("SENT to ~s/~s: ~p", [PeerName, ClientId, emqtt_packet:dump(Packet)]),
|
|
|
|
|
|
|
+ lager:info("SENT to ~s@~s: ~s", [ClientId, PeerName, emqtt_packet:dump(Packet)]),
|
|
|
%%FIXME Later...
|
|
%%FIXME Later...
|
|
|
erlang:port_command(Sock, emqtt_packet:serialise(Packet)).
|
|
erlang:port_command(Sock, emqtt_packet:serialise(Packet)).
|
|
|
|
|
|