Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[4.3] PISTON-1175: remove unused kapi_acdc_queue:sync_req/resp #6686

Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
53 changes: 1 addition & 52 deletions applications/acdc/src/acdc_queue_listener.erl
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,7 @@
,finish_member_call/1
,ignore_member_call/3
,cancel_member_call/2, cancel_member_call/3
,send_sync_req/2
,config/1
,send_sync_resp/4

,delivery/1
]).
Expand Down Expand Up @@ -88,9 +86,6 @@
,{{'acdc_queue_handler', 'handle_member_retry'}
,[{<<"member">>, <<"connect_retry">>}]
}
,{{'acdc_queue_handler', 'handle_sync_req'}
,[{<<"queue">>, <<"sync_req">>}]
}
]).

%%%=============================================================================
Expand All @@ -104,12 +99,7 @@
-spec start_link(pid(), pid(), kz_term:ne_binary(), kz_term:ne_binary()) -> kz_types:startlink_ret().
start_link(WorkerSup, MgrPid, AccountId, QueueId) ->
gen_listener:start_link(?SERVER
,[{'bindings', [{'acdc_queue', [{'restrict_to', ['sync_req']}
,{'account_id', AccountId}
,{'queue_id', QueueId}
]}
| ?BINDINGS
]}
,[{'bindings', ?BINDINGS}
,{'responders', ?RESPONDERS}
]
,[WorkerSup, MgrPid, AccountId, QueueId]
Expand Down Expand Up @@ -159,19 +149,11 @@ cancel_member_call(Srv, MemberCallJObj, Delivery) ->
ignore_member_call(Srv, Call, Delivery) ->
gen_listener:cast(Srv, {'ignore_member_call', Call, Delivery}).

-spec send_sync_req(pid(), kz_term:ne_binary()) -> 'ok'.
send_sync_req(Srv, Type) ->
gen_listener:cast(Srv, {'send_sync_req', Type}).

-spec config(pid()) ->
{kz_term:ne_binary(), kz_term:ne_binary()}.
config(Srv) ->
gen_listener:call(Srv, 'config').

-spec send_sync_resp(pid(), atom(), any(), kz_json:object()) -> 'ok'.
send_sync_resp(Srv, Strategy, StrategyState, ReqJObj) ->
gen_listener:cast(Srv, {'send_sync_resp', Strategy, StrategyState, ReqJObj}).

-spec delivery(pid()) -> gen_listener:basic_deliver().
delivery(Srv) ->
gen_listener:call(Srv, 'delivery').
Expand Down Expand Up @@ -329,16 +311,6 @@ handle_cast({'cancel_member_call', _MemberCallJObj, Delivery}, #state{shared_pid
lager:debug("can't handle the member_call, sending it back up"),
acdc_queue_shared:nack(Pid, Delivery),
{'noreply', State};
handle_cast({'send_sync_req', Type}, #state{my_q=MyQ
,my_id=MyId
,account_id=AccountId
,queue_id=QueueId
}=State) ->
send_sync_req(MyQ, MyId, AccountId, QueueId, Type),
{'noreply', State};
handle_cast({'send_sync_resp', Strategy, StrategyState, ReqJObj}, #state{my_id=Id}=State) ->
publish_sync_resp(Strategy, StrategyState, ReqJObj, Id),
{'noreply', State};
handle_cast({'gen_listener',{'is_consuming',_IsConsuming}}, State) ->
{'noreply', State};
handle_cast(_Msg, State) ->
Expand Down Expand Up @@ -506,29 +478,6 @@ publish_queue_member_remove(AccountId, QueueId, CallId) ->
],
kapi_acdc_queue:publish_queue_member_remove(Prop).

send_sync_req(MyQ, MyId, AccountId, QueueId, Type) ->
Resp = props:filter_undefined(
[{<<"Account-ID">>, AccountId}
,{<<"Queue-ID">>, QueueId}
,{<<"Process-ID">>, MyId}
,{<<"Current-Strategy">>, Type}
,{<<"Server-ID">>, MyQ}
| kz_api:default_headers(MyQ, ?APP_NAME, ?APP_VERSION)
]),
publish(Resp, fun kapi_acdc_queue:publish_sync_req/1).

publish_sync_resp(Strategy, StrategyState, ReqJObj, Id) ->
Resp = props:filter_undefined(
[{<<"Account-ID">>, kz_json:get_value(<<"Account-ID">>, ReqJObj)}
,{<<"Queue-ID">>, kz_json:get_value(<<"Queue-ID">>, ReqJObj)}
,{<<"Msg-ID">>, kz_json:get_value(<<"Msg-ID">>, ReqJObj)}
,{<<"Current-Strategy">>, kz_term:to_binary(Strategy)}
,{<<"Strategy-State">>, StrategyState}
,{<<"Process-ID">>, Id}
| kz_api:default_headers(?APP_NAME, ?APP_VERSION)
]),
publish(kz_json:get_value(<<"Server-ID">>, ReqJObj), Resp, fun kapi_acdc_queue:publish_sync_resp/2).

-spec maybe_nack(kapps_call:call(), gen_listener:basic_deliver(), pid()) -> boolean().
maybe_nack(Call, Delivery, SharedPid) ->
case is_call_alive(Call) of
Expand Down
99 changes: 0 additions & 99 deletions applications/acdc/src/kapi_acdc_queue.erl
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,6 @@
,member_connect_retry/1, member_connect_retry_v/1
,member_connect_accepted/1, member_connect_accepted_v/1
,member_hungup/1, member_hungup_v/1
,sync_req/1, sync_req_v/1
,sync_resp/1, sync_resp_v/1
,agent_change/1, agent_change_v/1
,queue_member_add/1, queue_member_add_v/1
,queue_member_remove/1, queue_member_remove_v/1
Expand Down Expand Up @@ -48,8 +46,6 @@
,publish_member_connect_retry/2, publish_member_connect_retry/3
,publish_member_connect_accepted/2, publish_member_connect_accepted/3
,publish_member_hungup/2, publish_member_hungup/3
,publish_sync_req/1, publish_sync_req/2
,publish_sync_resp/2, publish_sync_resp/3
,publish_agent_change/1, publish_agent_change/2
,publish_queue_member_add/1, publish_queue_member_add/2
,publish_queue_member_remove/1, publish_queue_member_remove/2
Expand Down Expand Up @@ -381,75 +377,6 @@ member_hungup_v(Prop) when is_list(Prop) ->
member_hungup_v(JObj) ->
member_hungup_v(kz_json:to_proplist(JObj)).

%%------------------------------------------------------------------------------
%% Sync Req/Resp
%% Depending on the queue strategy, get the other queue's strategy state
%%------------------------------------------------------------------------------

-spec sync_req_routing_key(kz_term:api_terms()) -> kz_term:ne_binary().
sync_req_routing_key(Props) when is_list(Props) ->
Id = props:get_value(<<"Queue-ID">>, Props, <<"*">>),
AcctId = props:get_value(<<"Account-ID">>, Props),
sync_req_routing_key(AcctId, Id);
sync_req_routing_key(JObj) ->
Id = kz_json:get_value(<<"Queue-ID">>, JObj, <<"*">>),
AcctId = kz_json:get_value(<<"Account-ID">>, JObj),
sync_req_routing_key(AcctId, Id).

-spec sync_req_routing_key(kz_term:ne_binary(), kz_term:ne_binary()) -> kz_term:ne_binary().
sync_req_routing_key(AcctId, QID) ->
<<"acdc.queue.sync_req.", AcctId/binary, ".", QID/binary>>.

-define(SYNC_REQ_HEADERS, [<<"Account-ID">>, <<"Queue-ID">>]).
-define(OPTIONAL_SYNC_REQ_HEADERS, [<<"Process-ID">>]).
-define(SYNC_REQ_VALUES, [{<<"Event-Category">>, <<"queue">>}
,{<<"Event-Name">>, <<"sync_req">>}
]).
-define(SYNC_REQ_TYPES, []).

-spec sync_req(kz_term:api_terms()) ->
{'ok', iolist()} |
{'error', string()}.
sync_req(Props) when is_list(Props) ->
case sync_req_v(Props) of
'true' -> kz_api:build_message(Props, ?SYNC_REQ_HEADERS, ?OPTIONAL_SYNC_REQ_HEADERS);
'false' -> {'error', "Proplist failed validation for sync_req"}
end;
sync_req(JObj) ->
sync_req(kz_json:to_proplist(JObj)).

-spec sync_req_v(kz_term:api_terms()) -> boolean().
sync_req_v(Prop) when is_list(Prop) ->
kz_api:validate(Prop, ?SYNC_REQ_HEADERS, ?SYNC_REQ_VALUES, ?SYNC_REQ_TYPES);
sync_req_v(JObj) ->
sync_req_v(kz_json:to_proplist(JObj)).

-define(SYNC_RESP_HEADERS, [<<"Account-ID">>, <<"Queue-ID">>
,<<"Current-Strategy">>
]).
-define(OPTIONAL_SYNC_RESP_HEADERS, [<<"Process-ID">>, <<"Strategy-State">>]).
-define(SYNC_RESP_VALUES, [{<<"Event-Category">>, <<"queue">>}
,{<<"Event-Name">>, <<"sync_resp">>}
]).
-define(SYNC_RESP_TYPES, []).

-spec sync_resp(kz_term:api_terms()) ->
{'ok', iolist()} |
{'error', string()}.
sync_resp(Props) when is_list(Props) ->
case sync_resp_v(Props) of
'true' -> kz_api:build_message(Props, ?SYNC_RESP_HEADERS, ?OPTIONAL_SYNC_RESP_HEADERS);
'false' -> {'error', "Proplist failed validation for sync_resp"}
end;
sync_resp(JObj) ->
sync_resp(kz_json:to_proplist(JObj)).

-spec sync_resp_v(kz_term:api_terms()) -> boolean().
sync_resp_v(Prop) when is_list(Prop) ->
kz_api:validate(Prop, ?SYNC_RESP_HEADERS, ?SYNC_RESP_VALUES, ?SYNC_RESP_TYPES);
sync_resp_v(JObj) ->
sync_resp_v(kz_json:to_proplist(JObj)).

%%------------------------------------------------------------------------------
%% Agent Change
%% available: when an agent logs in, tell its configured queues
Expand Down Expand Up @@ -614,7 +541,6 @@ bind_q(Q, Props) ->
bind_q(Q, AcctId, QID, CallId, props:get_value('restrict_to', Props)).

bind_q(Q, AcctId, QID, CallId, 'undefined') ->
kz_amqp_util:bind_q_to_kapps(Q, sync_req_routing_key(AcctId, QID)),
kz_amqp_util:bind_q_to_kapps(Q, agent_change_routing_key(AcctId, QID)),
kz_amqp_util:bind_q_to_callmgr(Q, member_call_routing_key(AcctId, QID)),
kz_amqp_util:bind_q_to_callmgr(Q, member_call_result_routing_key(AcctId, QID, CallId)),
Expand All @@ -629,9 +555,6 @@ bind_q(Q, AcctId, QID, CallId, ['member_call_result'|T]) ->
bind_q(Q, AcctId, QID, CallId, ['member_connect_req'|T]) ->
kz_amqp_util:bind_q_to_callmgr(Q, member_connect_req_routing_key(AcctId, QID)),
bind_q(Q, AcctId, QID, CallId, T);
bind_q(Q, AcctId, QID, CallId, ['sync_req'|T]) ->
kz_amqp_util:bind_q_to_kapps(Q, sync_req_routing_key(AcctId, QID)),
bind_q(Q, AcctId, QID, CallId, T);
bind_q(Q, AcctId, QID, CallId, ['agent_change'|T]) ->
kz_amqp_util:bind_q_to_kapps(Q, agent_change_routing_key(AcctId, QID)),
bind_q(Q, AcctId, QID, CallId, T);
Expand All @@ -650,7 +573,6 @@ unbind_q(Q, Props) ->
unbind_q(Q, AcctId, QID, CallId, props:get_value('restrict_to', Props)).

unbind_q(Q, AcctId, QID, CallId, 'undefined') ->
_ = kz_amqp_util:unbind_q_from_kapps(Q, sync_req_routing_key(AcctId, QID)),
_ = kz_amqp_util:unbind_q_from_kapps(Q, agent_change_routing_key(AcctId, QID)),
_ = kz_amqp_util:unbind_q_from_callmgr(Q, member_call_routing_key(AcctId, QID)),
_ = kz_amqp_util:unbind_q_from_callmgr(Q, member_call_result_routing_key(AcctId, QID, CallId)),
Expand All @@ -665,9 +587,6 @@ unbind_q(Q, AcctId, QID, CallId, ['member_call_result'|T]) ->
unbind_q(Q, AcctId, QID, CallId, ['member_connect_req'|T]) ->
_ = kz_amqp_util:unbind_q_from_callmgr(Q, member_connect_req_routing_key(AcctId, QID)),
unbind_q(Q, AcctId, QID, CallId, T);
unbind_q(Q, AcctId, QID, CallId, ['sync_req'|T]) ->
_ = kz_amqp_util:unbind_q_from_kapps(Q, sync_req_routing_key(AcctId, QID)),
unbind_q(Q, AcctId, QID, CallId, T);
unbind_q(Q, AcctId, QID, CallId, ['agent_change'|T]) ->
_ = kz_amqp_util:unbind_q_from_kapps(Q, agent_change_routing_key(AcctId, QID)),
unbind_q(Q, AcctId, QID, CallId, T);
Expand Down Expand Up @@ -809,24 +728,6 @@ publish_member_hungup(Q, API, ContentType) ->
{'ok', Payload} = kz_api:prepare_api_payload(API, ?MEMBER_HUNGUP_VALUES, fun member_hungup/1),
kz_amqp_util:targeted_publish(Q, Payload, ContentType).

-spec publish_sync_req(kz_term:api_terms()) -> 'ok'.
publish_sync_req(JObj) ->
publish_sync_req(JObj, ?DEFAULT_CONTENT_TYPE).

-spec publish_sync_req(kz_term:api_terms(), kz_term:ne_binary()) -> 'ok'.
publish_sync_req(API, ContentType) ->
{'ok', Payload} = kz_api:prepare_api_payload(API, ?SYNC_REQ_VALUES, fun sync_req/1),
kz_amqp_util:kapps_publish(sync_req_routing_key(API), Payload, ContentType).

-spec publish_sync_resp(kz_term:ne_binary(), kz_term:api_terms()) -> 'ok'.
publish_sync_resp(Q, JObj) ->
publish_sync_resp(Q, JObj, ?DEFAULT_CONTENT_TYPE).

-spec publish_sync_resp(kz_term:ne_binary(), kz_term:api_terms(), kz_term:ne_binary()) -> 'ok'.
publish_sync_resp(Q, API, ContentType) ->
{'ok', Payload} = kz_api:prepare_api_payload(API, ?SYNC_RESP_VALUES, fun sync_resp/1),
kz_amqp_util:targeted_publish(Q, Payload, ContentType).

-spec publish_agent_change(kz_term:api_terms()) -> 'ok'.
publish_agent_change(JObj) ->
publish_agent_change(JObj, ?DEFAULT_CONTENT_TYPE).
Expand Down
69 changes: 0 additions & 69 deletions applications/crossbar/priv/api/swagger.json
Original file line number Diff line number Diff line change
Expand Up @@ -7751,75 +7751,6 @@
],
"type": "object"
},
"kapi.acdc_queue.sync_req": {
"description": "AMQP API for acdc_queue.sync_req",
"properties": {
"Account-ID": {
"type": "string"
},
"Event-Category": {
"enum": [
"queue"
],
"type": "string"
},
"Event-Name": {
"enum": [
"sync_req"
],
"type": "string"
},
"Process-ID": {
"type": "string"
},
"Queue-ID": {
"type": "string"
}
},
"required": [
"Account-ID",
"Queue-ID"
],
"type": "object"
},
"kapi.acdc_queue.sync_resp": {
"description": "AMQP API for acdc_queue.sync_resp",
"properties": {
"Account-ID": {
"type": "string"
},
"Current-Strategy": {
"type": "string"
},
"Event-Category": {
"enum": [
"queue"
],
"type": "string"
},
"Event-Name": {
"enum": [
"sync_resp"
],
"type": "string"
},
"Process-ID": {
"type": "string"
},
"Queue-ID": {
"type": "string"
},
"Strategy-State": {
"type": "string"
}
},
"required": [
"Account-ID",
"Current-Strategy",
"Queue-ID"
],
"type": "object"
},
"kapi.acdc_stats.average_wait_time_err": {
"description": "AMQP API for acdc_stats.average_wait_time_err",
"properties": {
Expand Down

This file was deleted.

Loading