diff --git a/apps/iot/src/iot_host.erl b/apps/iot/src/iot_host.erl index 2e85e77..4cc274d 100644 --- a/apps/iot/src/iot_host.erl +++ b/apps/iot/src/iot_host.erl @@ -121,8 +121,9 @@ publish_directive(Pid, DeviceUUID, DirectiveType, Version, DirectiveParams, Time <<"directive_type">> => DirectiveType, <<"directive">> => DirectiveParams }, + JsonDirective = iolist_to_binary(jiffy:encode(Directive, [force_utf8])), - case gen_statem:call(Pid, {publish_directive, self(), Directive}) of + case gen_statem:call(Pid, {publish_directive, self(), JsonDirective}) of {ok, Ref} -> receive {ws_response, Ref} -> @@ -147,7 +148,9 @@ send_directive(Pid, DeviceUUID, DirectiveType, Version, DirectiveParams) <<"directive_type">> => DirectiveType, <<"directive">> => DirectiveParams }, - gen_statem:call(Pid, {send_directive, Directive}). + JsonDirective = iolist_to_binary(jiffy:encode(Directive, [force_utf8])), + + gen_statem:call(Pid, {send_directive, JsonDirective}). %% 设备管理相关