Method and system for implementing telephone solicitation prevention
First Claim
1. A method, comprising:
- receiving, with a first gateway device and from a calling party, a request to connect a call with a called party, the request including a called number associated with the called party;
sending, with the first gateway device, a call setup request to a first call server in a first network;
in response to receiving the call setup request, sending, with the first call server, a signing request to a secure telephone identity (“
STI”
) authentication server (“
AS”
);
in response to receiving the signing request, querying, with the STI-AS, a secure key server (“
SKS”
) for a private key;
setting, with the STI-AS, an attestation level for the calling party based on one or more attributes associated with the calling party;
creating, with the STI-AS, a signed call setup message using the private key;
returning, with the STI-AS, the signed call setup message to the first call server;
in response to receiving the signed call setup message, selecting, with the first call server, a route through a plurality of call servers to a second call server in a second network, using the called number;
sending, with the first call server, the signed call setup message to the second call server via the selected route;
in response to receiving the signed call setup message, sending, with the second call server, a verification request to a STI verification server (“
VS”
);
in response to receiving the verification request, querying, with the STI-VS, a certificate repository for a public key, based on information in the verification request;
decrypting and verifying, with the STI-VS, the signed call setup message using the public key;
sending, with the STI-VS, the decrypted call setup message to a no solicitation application server;
instructing, with the no solicitation application server, a media server to connect to the first gateway device and to play a no solicitation message requesting a response from the calling party;
returning, with the media server, a reply message to the no solicitation application server indicating a connection point for a voice media path to the calling party;
propagating, with the no solicitation application server, the response back through the first and second call servers to the calling party;
enabling a path, with the first gateway device, between the calling party and the media server;
playing, with the media server, a prompt to the calling party, the prompt instructing the calling party to perform at least one of entering a first series of numbers or speaking a first series of words;
receiving, with the media server, a response from the calling party, the received response comprising at least one of a second series of entered numbers or a second series of spoken words;
returning, with the media server, the response to the no solicitation application server;
comparing, with the no solicitation application server, the second series of entered numbers with the first series of numbers or the second series of spoken words with the first series of words;
based on a determination that either the second series of entered numbers matches the first series of numbers or the second series of spoken words matches the first series of words, performing the following;
directing, with the no solicitation application server, the STI-VS to connect the call;
sending, with the STI-VS, a validated response to the second call server, along with an attestation level associated with the called party;
sending, with the second call server, a call setup message to a second gateway device;
sending, with the second gateway device, a setup message to the called party;
propagating, with the second gateway device, a backward message via the first and second call servers and via the first gateway device, the backward message containing information regarding a media path to be set up; and
establishing a connected call between the calling party and the called party, while clearing a media path between the first gateway device and the media server;
based on a determination that either the second series of entered numbers fails to match the first series of numbers or the second series of spoken words fails to match the first series of words, performing one of;
disconnecting the call;
orforwarding the call to a voicemail server to play a voicemail message to the calling party in accordance with preferences of the called party, prior to disconnecting the call.
1 Assignment
0 Petitions
Accused Products
Abstract
Novel tools and techniques are provided for implementing telephone solicitation prevention using enhanced voice over Internet protocol (“VoIP”) functionalities in conjunction with STIR/SHAKEN protocols. In various embodiments, in response to receiving a call setup message or a call request from a calling party, a call server might send a verification request to a secure telephone identity (“STI”) verification server (“VS”). The STI-VS might verify and send the call setup message to a no solicitation application server, which might instruct a media server to connect to a first gateway device and to play a no solicitation message requesting a response from the calling party, and which might verify whether the response is an appropriate response. If so, a call is established. If not, the call might be disconnected and/or forwarded to a voicemail server to play a voicemail message to the calling party in accordance with preferences of the called party.
18 Citations
20 Claims
-
1. A method, comprising:
-
receiving, with a first gateway device and from a calling party, a request to connect a call with a called party, the request including a called number associated with the called party; sending, with the first gateway device, a call setup request to a first call server in a first network; in response to receiving the call setup request, sending, with the first call server, a signing request to a secure telephone identity (“
STI”
) authentication server (“
AS”
);in response to receiving the signing request, querying, with the STI-AS, a secure key server (“
SKS”
) for a private key;setting, with the STI-AS, an attestation level for the calling party based on one or more attributes associated with the calling party; creating, with the STI-AS, a signed call setup message using the private key; returning, with the STI-AS, the signed call setup message to the first call server; in response to receiving the signed call setup message, selecting, with the first call server, a route through a plurality of call servers to a second call server in a second network, using the called number; sending, with the first call server, the signed call setup message to the second call server via the selected route; in response to receiving the signed call setup message, sending, with the second call server, a verification request to a STI verification server (“
VS”
);in response to receiving the verification request, querying, with the STI-VS, a certificate repository for a public key, based on information in the verification request; decrypting and verifying, with the STI-VS, the signed call setup message using the public key; sending, with the STI-VS, the decrypted call setup message to a no solicitation application server; instructing, with the no solicitation application server, a media server to connect to the first gateway device and to play a no solicitation message requesting a response from the calling party; returning, with the media server, a reply message to the no solicitation application server indicating a connection point for a voice media path to the calling party; propagating, with the no solicitation application server, the response back through the first and second call servers to the calling party; enabling a path, with the first gateway device, between the calling party and the media server; playing, with the media server, a prompt to the calling party, the prompt instructing the calling party to perform at least one of entering a first series of numbers or speaking a first series of words; receiving, with the media server, a response from the calling party, the received response comprising at least one of a second series of entered numbers or a second series of spoken words; returning, with the media server, the response to the no solicitation application server; comparing, with the no solicitation application server, the second series of entered numbers with the first series of numbers or the second series of spoken words with the first series of words; based on a determination that either the second series of entered numbers matches the first series of numbers or the second series of spoken words matches the first series of words, performing the following; directing, with the no solicitation application server, the STI-VS to connect the call; sending, with the STI-VS, a validated response to the second call server, along with an attestation level associated with the called party; sending, with the second call server, a call setup message to a second gateway device; sending, with the second gateway device, a setup message to the called party; propagating, with the second gateway device, a backward message via the first and second call servers and via the first gateway device, the backward message containing information regarding a media path to be set up; and establishing a connected call between the calling party and the called party, while clearing a media path between the first gateway device and the media server; based on a determination that either the second series of entered numbers fails to match the first series of numbers or the second series of spoken words fails to match the first series of words, performing one of; disconnecting the call;
orforwarding the call to a voicemail server to play a voicemail message to the calling party in accordance with preferences of the called party, prior to disconnecting the call.
-
-
2. A method, comprising:
-
receiving, with a first gateway device and from a calling party, a request to connect a call with a called party, the request including a called number associated with the called party; sending, with the first gateway device, a call setup request to a first call server in a first network; in response to receiving the call setup request, sending, with the first call server, a call setup message to a second call server in a second network; in response to receiving the call setup message, sending, with the second call server, a verification request to a secure telephone identity (“
STI”
) verification server (“
VS”
);in response to receiving the verification request, verifying, with the STI-VS, the call setup message; sending, with the STI-VS, the verified call setup message to a no solicitation application server; in response to receiving the verified call setup, instructing, with the no solicitation application server, a media server to connect to the first gateway device and to play a no solicitation message requesting a response from the calling party; returning, with the media server, a reply message to the no solicitation application server indicating a connection point for a voice media path to the calling party; playing, with the media server, a prompt to the calling party, the prompt instructing the calling party to respond by performing one or more tasks; receiving, with the media server, a response from the calling party in accordance with at least one of the one or more tasks; returning, with the media server, the response to the no solicitation application server; verifying, with the no solicitation application server, whether the response is an appropriate response in accordance with at least one of the one or more tasks; based on a determination that the response has been verified to be an appropriate response, establishing a connected call between the calling party and the called party; and based on a determination that the response is not an appropriate response, performing one of; disconnecting the call;
orforwarding the call to a voicemail server to play a voicemail message to the calling party in accordance with preferences of the called party, prior to disconnecting the call. - View Dependent Claims (3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system, comprising:
-
a first gateway device, the first gateway device comprising; at least one first processor; and a first non-transitory computer readable medium communicatively coupled to the at least one first processor, the first non-transitory computer readable medium having stored thereon computer software comprising a first set of instructions that, when executed by the at least one first processor, causes the first gateway device to; receive, from a calling party, a request to connect a call with a called party, the request including a called number associated with the called party; and send a call setup request to a first call server in a first network; the first call server, the first call server comprising; at least one second processor; and a second non-transitory computer readable medium communicatively coupled to the at least one second processor, the second non-transitory computer readable medium having stored thereon computer software comprising a second set of instructions that, when executed by the at least one second processor, causes the first call server to; receive the call setup request; and in response to receiving the call setup request, send a call setup message to a second call server in a second network; the second call server, the second call server comprising; at least one third processor; and a third non-transitory computer readable medium communicatively coupled to the at least one third processor, the third non-transitory computer readable medium having stored thereon computer software comprising a third set of instructions that, when executed by the at least one third processor, causes the second call server to; receive the call setup message; and in response to receiving the call setup message, send a verification request to a secure telephone identity (“
STI”
) verification server (“
VS”
);the STI-VS, the STI-VS comprising; at least one fourth processor; and a fourth non-transitory computer readable medium communicatively coupled to the at least one fourth processor, the fourth non-transitory computer readable medium having stored thereon computer software comprising a fourth set of instructions that, when executed by the at least one fourth processor, causes the STI-VS to; receive the verification request; in response to receiving the verification request, verify the call setup message; and send the verified call setup message to a no solicitation application server; the no solicitation application server, the no solicitation application server comprising; at least one fifth processor; and a fifth non-transitory computer readable medium communicatively coupled to the at least one fifth processor, the fifth non-transitory computer readable medium having stored thereon computer software comprising a fifth set of instructions that, when executed by the at least one fifth processor, causes the no solicitation application server to; receive the verified call setup; and in response to receiving the verified call setup, instruct a media server to connect to the first gateway device and to play a no solicitation message requesting a response from the calling party; the media server, the media server comprising; at least one sixth processor; and a sixth non-transitory computer readable medium communicatively coupled to the at least one sixth processor, the sixth non-transitory computer readable medium having stored thereon computer software comprising a sixth set of instructions that, when executed by the at least one sixth processor, causes the media server to; return a reply message to the no solicitation application server indicating a connection point for a voice media path to the calling party; play a prompt to the calling party, the prompt instructing the calling party to respond by performing one or more tasks; receive a response from the calling party in accordance with at least one of the one or more tasks; and return the response to the no solicitation application server; wherein the fifth set of instructions, when executed by the at least one fifth processor, further causes the no solicitation application server to; verify whether the response is an appropriate response in accordance with at least one of the one or more tasks; based on a determination that the response has been verified to be an appropriate response, establish a connected call between the calling party and the called party; and based on a determination that the response is not an appropriate response, perform one of; disconnecting the call;
orforwarding the call to a voicemail server to play a voicemail message to the calling party in accordance with preferences of the called party, prior to disconnecting the call. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification