diff --git a/apps/dimension_apn/src/dimension_spn_pusher.erl b/apps/dimension_apn/src/dimension_apn_pusher.erl similarity index 75% rename from apps/dimension_apn/src/dimension_spn_pusher.erl rename to apps/dimension_apn/src/dimension_apn_pusher.erl index e05add2..84eb14a 100644 --- a/apps/dimension_apn/src/dimension_spn_pusher.erl +++ b/apps/dimension_apn/src/dimension_apn_pusher.erl @@ -6,7 +6,7 @@ %%% @end %%% Created : 03. 4月 2025 15:41 %%%------------------------------------------------------------------- --module(dimension_spn_pusher). +-module(dimension_apn_pusher). -author("anlicheng"). %% API @@ -18,8 +18,6 @@ test(DeviceToken) -> Body = jiffy:encode(#{<<"id">> => 1234, <<"name">> => <<"英雄第二季"/utf8>>}, [force_utf8]), push(DeviceToken, Title, Body). --spec push(DeviceToken :: binary(), Title :: binary(), Body :: binary()) -> no_return(). +-spec push(DeviceToken :: binary(), Title :: binary(), Body :: binary()) -> Response :: apns:response(). push(DeviceToken, Title, Body) when is_binary(DeviceToken), is_binary(Title), is_binary(Body) -> - poolboy:transaction(apns_pool, fun(WorkerPid) -> - dimension_apn_worker:push(WorkerPid, DeviceToken, Title, Body) - end). \ No newline at end of file + poolboy:transaction(apns_pool, fun(WorkerPid) -> dimension_apn_worker:push(WorkerPid, DeviceToken, Title, Body) end). \ No newline at end of file diff --git a/apps/dimension_apn/src/dimension_apn_worker.erl b/apps/dimension_apn/src/dimension_apn_worker.erl index 991429e..d32509b 100644 --- a/apps/dimension_apn/src/dimension_apn_worker.erl +++ b/apps/dimension_apn/src/dimension_apn_worker.erl @@ -29,7 +29,7 @@ %%% API %%%=================================================================== --spec push(Pid :: pid(), DeviceToken :: binary(), Title :: binary(), Body :: binary()) -> no_return(). +-spec push(Pid :: pid(), DeviceToken :: binary(), Title :: binary(), Body :: binary()) -> Response :: apns:response(). push(Pid, DeviceToken, Title, Body) when is_pid(Pid), is_binary(DeviceToken), is_binary(Title), is_binary(Body) -> gen_server:call(Pid, {push, DeviceToken, Title, Body}). @@ -88,7 +88,7 @@ handle_call({push, DeviceToken, Title, Body}, _From, State = #state{apns_pid = A }, PushResult = apns:push_notification(ApnsPid, DeviceToken, Notification, Headers), lager:debug("[dimension_apn_pusher] push result is: ~p", [PushResult]), - {reply, ok, State}. + {reply, PushResult, State}. %% @private %% @doc Handling cast messages