Method of assigning a communication
11259341 · 2022-02-22
Assignee
Inventors
Cpc classification
G06F16/27
PHYSICS
H04L63/0421
ELECTRICITY
H04W12/02
ELECTRICITY
International classification
H04W12/02
ELECTRICITY
Abstract
A method of processing data of communications through a communication network. The method includes: receiving first data relating to a first communication between a first and a second electronic device respectively associated with a first and a second connection identifier, the first data including a generic connection identifier associated with the first connection identifier and used for the first communication; storing at least the first connection identifier associated with the generic connection identifier and the second connection identifier used for the first communication; receiving second data relating to a second communication; searching through the second data for the first or the second stored connection identifier; and according to the result of the search, associating the second communication with the first and second connection identifiers.
Claims
1. A method of processing data of communications through a communication network, comprising the following acts performed by a server device: receiving from the communication network first data relating to a first communication between a first and a second electronic device respectively associated with a first and a second connection identifier, the first data comprising said second connection identifier and a generic connection identifier associated with several connection identifiers including the first connection identifier, said generic connection identifier replacing the first connection identifier for the first communication, storing in a non-transitory computer-readable medium at least the first connection identifier associated with the generic connection identifier, and the second connection identifier used for the first communication, receiving from the communication network second data relating to a second communication, searching through the second data for the first or the second stored connection identifier, and according to a result of the search, associating the second communication with the first and second connection identifiers, wherein the method furthermore comprises, for the first communication and the second communication: if the communication is an established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, data relating to establishment, and if the communication is a non-established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, storing data relating to non-establishment, wherein the data relating to establishment of a call and the data relating to non-establishment of a call are used for limiting the number of non-established calls.
2. The method of processing data of communications according to claim 1, furthermore comprising dispatching the first connection identifier according to the result of the search.
3. The method of processing data of communications according to claim 1, for which the first communication is performed to the generic connection identifier.
4. The method of processing data of communications according to claim 1, furthermore comprising storing the generic connection identifier, searching for the generic connection identifier, and associating the generic connection identifier with the second communication according to the result of the search.
5. The method of processing data of communications according to claim 1, furthermore comprising storing a communication type, searching for the communication type, and associating the communication type with the second communication according to the result of the search.
6. The method of processing data of communications according to claim 1, furthermore comprising storing the second data relating to the second communication.
7. The method of processing data of communications according to claim 1, for which the first communication is performed by an anonymized sender.
8. The method of processing data of communications according to claim 1, for which the second communication is a message.
9. The method of processing data of communications according to claim 1, wherein: the first communication is made by the second electronic device to the generic connection identifier; and the second communication is made by the second electronic device to an alias connection identifier associated with the first connection identifier and distinct from the generic connection identifier.
10. The method of processing data of communications according to claim 1, wherein data relating to establishment of a call are used for limiting the number of established calls between the first and the second electronic device.
11. A non-transitory computer-readable data medium on which at least one series of program code instructions is stored for execution of a method of processing data of communications through a communication network when the instructions are executed by a processor of a server device, wherein the instructions configure the server device to perform acts comprising: receiving from the communication network first data relating to a first communication between a first and a second electronic device respectively associated with a first and a second connection identifier, the first data comprising said second connection identifier and a generic connection identifier associated with several connection identifiers including the first connection identifier, said generic connection identifier replacing the first connection identifier for the first communication, storing in a non-transitory computer-readable medium at least the first connection identifier associated with the generic connection identifier, and the second connection identifier used for the first communication, receiving from the communication network second data relating to a second communication, searching through the second data for the first or the second stored connection identifier, according to a result of the search, associating the second communication with the first and second connection identifiers, and for the first communication and the second communication: if the communication is an established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, data relating to establishment, and if the communication is a non-established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, storing data relating to non-establishment, wherein the data relating to establishment of a call and the data relating to non-establishment of a call are used for limiting the number of non-established calls.
12. A server for processing data of communications, able to process data of communications through a communication network, the server comprising: a processor; and a non-transitory computer-readable medium comprising instructions stored thereon, which when executed by the processor configure the server to perform acts comprising: receiving from the communication network first data relating to a first communication between a first and a second electronic device respectively associated with a first and a second connection identifier, the first data comprising said second connection identifier and a generic connection identifier associated with several connection identifiers including the first connection identifier, said generic connection identifier replacing the first connection identifier for the first communication; storing in a database, called a communications log, at least the first connection identifier associated with the generic connection identifier, and the second connection identifier used for the first communication; receiving from the communication network second data relating to a second communication; searching through the second data for the first or second connection identifier stored in the database; according to a result of the search, associating the second communication with the first and second connection identifiers; and for the first communication and the second communication: if the communication is an established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, data relating to establishment, and if the communication is a non-established telephone call, storing in the non-transitory computer-readable medium, in association with the stored first connection identifier associated with the generic connection identifier, and the second connection identifier used for the communication, storing data relating to non-establishment, wherein the data relating to establishment of a call and the data relating to non-establishment of a call are used for limiting the number of non-established calls.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1) One or more embodiments of the invention will be better understood on reading the description which follows, given by way of example and with reference to the appended drawings in which:
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
(10) In the description detailed hereinafter in exemplary embodiments of the invention, numerous specific details are presented so as to afford a more complete understanding. Nonetheless, the person skilled in the art may appreciate that embodiments may be put into practice without these specific details. In other cases, well-known characteristics are not described in detail to avoid needlessly complicating the description.
(11)
(12) A company PART uses the services of an anonymization platform (also called an alias services platform) and referenced PA, allowing for example an employee of this company to send a call from a telephone device referenced DC_U_PART, to a telephone device of a client U, referenced DC_U. This anonymization platform may be located within a communication architecture of the company, or else be used in SaaS (“Software as a Service” in English) mode by the company.
(13) In one embodiment, the call made by the employee from a fixed telephone of the company, is forwarded to a communication platform, referenced PC, associated with an internal communication network RES_PART of the company. This communication platform interacts with the anonymization platform which anonymizes the connection identifier of the device DC_U_PART by replacing it with a generic connection identifier ID_PART.
(14) Alternatively, if the call is made by the employee from a mobile telephone, the call is forwarded directly from a network, for example an MSISDN network, to the anonymization platform, without passing through a communication network internal to the company.
(15) The establishment of the call continues thereafter to the recipient of the call, the client U identifies the call through the generic connection identifier ID_PART: if the client takes the call, a connection between the employee and the client is performed.
(16) Hereinafter, the connection identifiers associated with the communication devices DC_U_PART and DC_U are referenced respectively ID_DC_U_PART and ID_DC_U.
(17) The method presented here is for example implemented in a server S_AN comprising an application module referenced AN and a database referenced DB, called a communication's (incoming and/or outgoing) log. This server S_AN interacts with the anonymization platform PA. Alternatively, the application module AN is implemented directly within the anonymization platform PA. This server S_AN may be located within a communication architecture of the company, or else be used in SaaS (“Software as a Service” in English) mode by the client company of the invention. Alternatively, an incoming or outgoing call may be forwarded directly from a network, for example an MSISDN network, to the server S_AN.
(18) In one embodiment illustrated by
(19) The parameters of the call are saved in a communications log referenced DB, integrated for example into the server S_AN; in particular, the connection identifier ID_DC_U of the sender, the connection identifier ID_DC_U_PART of the recipient, and the time of the call. Alternatively, the alias number used is also stored (c). In a particular embodiment, a step of storing information is performed later once the communication has or has not been established, so as to save this information regarding establishment or non-establishment (b).
(20) In a first step denoted A1, the client U is therefore directed to an employee, the method implemented in the server S_AN stores characteristics of this first call. In a second step B1, the client U calls back a few minutes later, for example to request an additional particular: the communication platform PC recovers the information regarding assignment of the communication from the server S_AN, and the client is directed again to the same employee.
(21) Alternatively, the alias number is also stored during step A1, and then recovered during a step B1. More precisely, during the second step B1, the method receives characteristics of the second call, searches the database DB for the connection identifier of the client U, associates this connection identifier with the first communication, and dispatches the connection identifier of the employee ID_DC_U_PART to the communication platform PC so as to allow the establishment of a call between the devices DC_U and DC_U_PART.
(22) In a particular embodiment, the value of the time period between the first step A1 and the second step B1 makes it possible to track the assignment of the communication towards the device DC_U_PART. For example, if more than an hour has elapsed between the two steps A1 and B1, the method might not dispatch the identifier ID_DC_U_PART to the communication platform PC and/or the alias platform PA, or else dispatch the identifier ID_DC_U_PART with the value of this time period.
(23) In a particular embodiment, the method also searches for the alias number used so as to filter its search; indeed, in the case where the company uses several alias numbers, it may be preferable to integrate this information item with the communications assignment rules.
(24)
(25) The device DC_U connects to the device DC_U_PART via the communication platform of the company PART which uses services of the server S_AN. The following steps are performed in parallel or successively: the sequence of exchanges performed will be detailed in
(26) At 201 and 202, S_AN receives a notification of initialization of the call of the client U to the company PART and stores data in the log of the calls. At 203, the call is forwarded to the communication platform of the company PART via the company's network RES_PART. The server S_AN is notified of the incoming call in step 204. At 205, the method stores in the log of the calls the connection identifier ID_DC_U and receives the connection identifier IDU_PART of the communication platform of the company PART. At 206, the client U is placed on hold, for example, through a welcome message. At 207, the call is directed to the employee of the company PART, and the communication is established between the two devices DC_U_PART and DC_U. Alternatively, the incoming calls are received directly by the server S_AN, and the application module AN determines the assignment of the call; in particular in the case where an MSISDN network is used.
(27)
(28) In this embodiment illustrated by the scheme PROT_1, the server S_AN implementing the method integrates a communication interface of SOAP (Simple Object Access Protocol) type referenced SOAP_L, an HTTP client application, a client application SOAP_C, a client application O specific to the application module AN, and a database DB. Alternatively, the exchanges may for example be executed according to an architecture of REST (“Representational State Transfer” in English) type.
(29) When an incoming call arrives at the company PART during a step ET01, the communication interface SOAP_L and the client application O receive the notification of this incoming call in a step ET02. In a step ET03_1_4, the client application O guides the storage of the connection identifier of the incoming call in the database DB. Alternatively, the time of the call and the alias number used are also stored.
(30) In a step ET04_1, the client U is directed to an employee of the company PART.
(31) In a step ET05_1, the server S_AN receives the information about the establishment of the call. The devices DC_U and DC_U_PART are connected.
(32) A set of steps (referenced SESS_ET01 to SESS_ET05) of a session referenced SESS are carried out between ET03_1_4 and ET04_1 and describe a series of dispatches of information and of enquiries between the internal communication platform PC and the alias services platform PA, with the server S_AN, thus allowing updating of the information between the communication platform of the company PART and the service S_AN. Hereinafter, the platform PC, the platform PA, or the set grouping together the two platforms PC and PA, are interchangeably called the platform of the company PART.
(33) More precisely, a “push” notification is performed through SESS_ET01 from the client application O to the platform of the company PART and the client application SOAP_C, an enquiry SESS_ET02 is launched by the platform of the company towards the HTTP client to obtain the language used for the enquiries in respect of the voice (VXML) and thereafter to transfer a voice message to the device DC_U by SESS_ET04. An enquiry SESS_ET03 is launched by the HTTP client towards the database DB to store or recover information, a push notification is performed through SESS_ET05 so that the server S_AN is notified of the information updated by the platform of the company PART. Hereinafter, the above steps are referenced by SESS, and will not be recalled.
(34) The enquiries to the database DB are performed as a function of the service and/or of the context. These enquiries may be the number of calls received over a time period, the number of calls performed over a time period, the mean time of the calls received over a time period, the mean time of the calls performed over a time period, the number of distinct contacts for the incoming calls over a time period, the number of valid contexts over a time period, the time of valid contexts over a time period, etc.
(35) In an industrial application of a service implementing the method here described, the association between an alias number ID_PART and an actual number of an employee ID_DC_U_PART relating to the electronic device DC_U_PART is called a “context”: in an exemplary implementation, the method obtains the log of the calls for a given alias number through the enquiry GET/contexts/{contextId}/calls.
(36) In a particular embodiment, a connection identifier may be associated with a whitelist, for example only if it is a valid telephone number, if the prefix of the country is accepted by the service (“aliasing countries whitelist” in English), and if it is not an alias number. Likewise, a connection identifier may be associated with a list of preferred contacts, for example associated also with a given alias number.
(37)
(38) In one embodiment illustrated by the scheme PROT_2, the employee will consent to take the call of the client U during step B1.
(39) Recall that steps SESS_ET01 to SESS_ET05 of the set SESS are identical to the scheme PROT_1 of
(40) In a step ET03_2_3, the client application O recovers from the communications log, the connection identifier of the recipient of the call. The client application O calls the communication platform of the company PART so as to perform a confirmation protocol through the HTTP client of the server S_AN: a push notification ET04_2_3, an enquiry ET05_2_3 to the HTTP client, and then an enquiry ET06_2_3 by the HTTP client.
(41) In a step ET07_2, the employee called receives a notification of the call, and the information item relating to this notification in a step ET08_2_3, among other things by the client application O of the server S_AN.
(42) In a step ET09_2, the employee accepts the call for example by pressing the “*” key of the telephone, and the communication platform of the company dispatches the information item relating to this acceptance in a step ET10_2 to the client application O of the server S_AN. In a step ET11_2, the establishment of a communication with the employee is requested of the platform of the company by the client application O; which the former performs by dispatching a push notification ET12_2 to the device DC_U_PART. In a step ET13_2, the client is notified of the connection, and in a step ET14_2_3 the server S_AN receives the information of this notification. The two communication devices are connected.
(43) The above steps describe a series of dispatches of information and of enquiries between the communication platform of the company and the server implementing the method here described, allowing an update of the information between the communication platform of the company PART and the server S_AN.
(44)
(45) In one embodiment illustrated by the scheme PROT_3, the employee does not take the call.
(46) Recall that steps SESS_ET01 to SESS_ET05 of the session SESS are identical to the scheme PROT_1 of
(47) The steps ET04_2_3 to ET08_2_3 are identical to the scheme PROT_2 of
(48) In a step ET09_3 the called party does not press the “*” key of the telephone, and the communication platform of the company dispatches this information item in a step ET10_3, in particular to the client application O of the server S_AN. In a step ET11_3, the establishment of a communication with a device relating to voice messaging (not illustrated) is requested of the platform of the company PART by the client application O; the former by dispatching a push notification ET12_3 notifies the server S_AN, and performs by a step ET13_3 a notification to the device DC_U of connection with the device relating to voice messaging. In a step ET14_2_3, the server S_AN receives information of this notification.
(49) The two communication devices are connected.
(50) In this embodiment, an employee of the company PART calls a client U from a fixed telephone of the company, the call being performed via the anonymization platform PA (a). The parameters of the call are saved in the database DB integrated into the communications data processing server S_AN; in particular the identifier ID_DC_U_PART of the sender, the identifier ID_DC_U of the recipient, the company's generic connection identifier used, and the time of the call.
(51) In a particular embodiment, a step of information storage is performed later once the communication has or has not been established, so as to save the information about the establishment or the non-establishment of the call (b).
(52) In a first step denoted A2, the employee calls the client, the method implemented in the server S_AN stores the characteristics of this first call. In a second step B2, the client calls back a few minutes later, for example to request an additional particular, the method receives characteristics of this second call, searches the communications log DB, and retrieves the connection identifier of the employee ID_DC_U_PART. Step B2 is identical to step B1 of
(53)
(54) During an outgoing call in a step ET01_4, the communication interface SOAP_L and the client application O receive the notification of this outgoing call in a step ET02_4. In a step ET03_1_4, the client application O directs the storage in the communications log of the connection identifiers of the outgoing call and of the client. Alternatively the time of the call and the alias number used are also stored.
(55) In a step ET04_4, the platform of the company PART connects to the device DC_U, and in a step ET_05_4 notifies the device of the employee.
(56) In a step ET06_4, the communication platform of the company dispatches to the server S_AN information about this notification. The devices DC_U_PART and DC_U are connected.
(57)
(58) In the general implementation scheme of
(59) The server S_AN dispatches push notifications to the mobile applications installed in the device DC_U_PART in the following cases: reception of a new SMS (stored in the database while waiting to be searched for), a missed call or a new message in the inbox.
(60) In one embodiment described in
(61) In the present text, the devices or modules may be implemented in software form, in which case it takes the form of a program executable by a processor, or in hardware form, such as an application specific integrated circuit (ASIC), a system on chip (SOC), or in the form of a combination of hardware elements and applications, such as for example an application program intended to be loaded and executed on a component of FPGA (Field Programmable Gate Array) type.
(62) Although the embodiments described above are so within the non-limiting framework of communications between a company and its clients, that is to say in the B2C (from the English “Business-to-Consumer”) context, the person skilled in the art will understand that the present invention is not limited to this context, which serves only as support to illustrate its implementation according to one or more embodiments, and that the present invention is also applicable and may be implemented according to various embodiments in other contexts, such as for example that of B2B (from the English “Business-to-Business”), or in a private or family context. The proposed method thus presents the advantage, in the context of family usage, in which a family composed of several members uses a unique number, for example a unique fixed number, of preventing the members of the family, in particular the children, from having to disclose their personal telephone number (typically their mobile telephone number) to people outside the family, such as, for example, craftspersons (plumbers, repairers, etc.) or other professionals (delivery persons, etc.) obliged to be in telephone contact with the family, someone from the family using the family's unique number to call them, while being able to be reached directly in case the other party should call back. Indeed, despite the person outside the family not having had knowledge of the family's unique number and not of the personal number of the person of the family who called them, the proposed method allows, when there is a callback from the outside party to the family's unique number, the call to be directed to the person of the family who made the first call to the outside party. For example, when a member of a group corresponding to a family calls a telephone number or a telephone identifier other than those of the elements of the group (in this example of the family), the outgoing call will be able to be presented to the called party with a unique number used as alias by the members of the group. The proposed method allows, when there is a callback from the other party to the unique number, the call to be directed to the member of the group who made the first outgoing call, and not to another member of the group. The person skilled in the art will furthermore understand that the present invention is not limited to this family context, which will be able to be generalized for the implementation of the present invention according to one or more embodiments to any group of users or of machines using a unique number as alias to be presented when there is a call from a person or a machine having a number other than the call numbers of the elements of the group, so as for example to allow a callback to the alias number to be directed to the number or the identifier of the person or of the machine that made the first call.
(63) One or more exemplary embodiments of the invention affords a solution not exhibiting the drawbacks of the prior art.
(64) Although described through a certain number of detailed exemplary embodiments, the proposed method and the object for the implementation of the method comprise diverse variants, modifications and enhancements which will be apparent in an obvious manner to the person skilled in the art, it being understood that these diverse variants, modifications and enhancements form part of the scope of the invention, such as defined by the claims which follow. Moreover, various aspects and characteristics described hereinabove may be implemented together, or separately, or else substituted for one another, and together the various combinations and sub-combinations of the aspects and characteristics form part of the scope of the invention such as defined by the claims hereinafter. Furthermore, it may be that certain devices and objects described hereinabove do not incorporate the totality of the modules and functions described for the preferred embodiments.