EP3949366A1 - Traitement de message dynamique et agrégation de données dans une messagerie - Google Patents

Traitement de message dynamique et agrégation de données dans une messagerie

Info

Publication number
EP3949366A1
EP3949366A1 EP20720977.6A EP20720977A EP3949366A1 EP 3949366 A1 EP3949366 A1 EP 3949366A1 EP 20720977 A EP20720977 A EP 20720977A EP 3949366 A1 EP3949366 A1 EP 3949366A1
Authority
EP
European Patent Office
Prior art keywords
data
message
network device
client
routing path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
EP20720977.6A
Other languages
German (de)
English (en)
Inventor
Jeffrey SALTER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
LivePerson Inc
Original Assignee
LivePerson Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by LivePerson Inc filed Critical LivePerson Inc
Publication of EP3949366A1 publication Critical patent/EP3949366A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/06Message adaptation to terminal or network requirements
    • H04L51/066Format adaptation, e.g. format conversion or compression
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42382Text-based messaging services in telephone networks such as PSTN/ISDN, e.g. User-to-User Signalling or Short Message Service for fixed networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/487Arrangements for providing information services, e.g. recorded voice services or time announcements
    • H04M3/493Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
    • H04M3/4936Speech interaction details
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/5141Details of processing calls and other types of contacts in an unified manner
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/523Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing with call distribution or queueing
    • H04M3/5232Call distribution algorithms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/0024Services and arrangements where telephone services are combined with data services
    • H04M7/0042Services and arrangements where telephone services are combined with data services where the data service is a text-based messaging service
    • H04M7/0048Services and arrangements where telephone services are combined with data services where the data service is a text-based messaging service where the text-based messaging service is a Short Message Service
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/12Messaging; Mailboxes; Announcements
    • H04W4/14Short messaging services, e.g. short message services [SMS] or unstructured supplementary service data [USSD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/65Aspects of automatic or semi-automatic exchanges related to applications where calls are combined with other types of communication
    • H04M2203/651Text message transmission triggered by call
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/523Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing with call distribution or queueing

Definitions

  • the present disclosure relates generally to facilitating routing of communications. More specifically, techniques are provided to dynamically route and process messages between disparate devices during communication sessions. For example, embodiments can redirect a caller from a telephony environment to a text messaging environment in order to perform services with one or more clients.
  • Clients often use telephony systems to field phone calls from users seeking their services. These telephony systems may allow users to speak with a live representative of the client, or may use an interactive voice response (IVR) system.
  • IVR is a technology that allows a human caller to call and communicate with a computer in a telephony environment. In an IVR telephony environment, the computer typically outputs prerecorded voice audio prompts that the human caller typically answers using dual-tone multi-frequency signaling (DTM F) tones as input via a keypad of the human caller's phone.
  • DTM F dual-tone multi-frequency signaling
  • IVR telephony systems are often used to determine why a human caller is calling so that the human caller can be directed to a human operator that might be able to assist the human caller.
  • callers often complain that traditional IVR systems can often waste time by forcing the caller to listen to a lengthy recording reading every option of an extensive menu before the caller can make a selection. Callers can also often be placed on hold for long periods of time waiting to speak to a human operator, or the human operator may not answer the phone at all, leading to frustration.
  • SMS short message service
  • MMS multimedia message service
  • Messaging services are convenient for users in that they enable asynchronous communication, alerting users when a message comes in without the users having to pay constant attention as they would during a traditional audio-based telephone call.
  • a network device e.g., a user's mobile phone
  • a client device e.g., a business's device
  • either the network device or the client device may generate a text message to the other and establish a communication session.
  • the client device may present a variety of options to the network device of service requests that may be completed by text message.
  • the network device may transmit the service request and the service request may be fulfilled by the client.
  • the client device may terminate the communication session and hand off the conversation to a server (e.g., an aggregator associated with a plurality of client devices, and/or a plurality of terminal devices and agents).
  • the server may accept queries and natural language communications from the network device and answer the queries as appropriate.
  • queries made to the server do not have to be client-specific, and may relate to a plurality of clients or any other subject unrelated to the client.
  • Certain embodiments of the present disclosure include a computer-implemented method.
  • the method may include receiving a message from a network device at a client device.
  • the message may include a plurality of routing paths.
  • the method may include generating a selection of a routing path of the plurality of routing paths.
  • the method may include establishing a two-way communication session between the client device and a node of the network device. The node may be determined based on the selected routing path.
  • the method may include facilitating termination of the two-way
  • Termination may cause the network device to transmit the selected routing path.
  • the method may include receiving data related to the selected routing path.
  • the method may include transmitting a new message.
  • the new message may include an intent indicator data.
  • the server may generate a response by using a machine-learning model to evaluating the selected routing path and the intent indicator data.
  • the method may include receiving the response to the new message.
  • the response may include one or more suggestions that correspond to the selected routing path and the intent indicator data.
  • the method may include facilitating display of the response.
  • Certain embodiments of the present disclosure include a system.
  • the system may include one or more data processors; and a non-transitory computer-readable storage medium containing instructions which, when executed on the one or more data processors, cause the one or more data processors to perform the methods described above and herein.
  • Certain embodiments of the present disclosure include a computer-program product tangibly embodied in a non-transitory machine-readable storage medium, including instructions configured to cause a data processing apparatus to perform the methods described above and herein.
  • FIG. 1 shows a block diagram of an embodiment of a network interaction system
  • FIG. 2 shows a block diagram of an embodiment of a network interaction system that includes a connection management system
  • FIG. 3 shows a representation of a protocol-stack mapping of connection components' operation
  • FIG. 4 represents a multi-device communication exchange system according to an embodiment
  • FIG. 5 shows a block diagram of an embodiment of a connection management system
  • FIG. 6 shows a block diagram of a network environment for dynamic and automatic message processing during communication sessions
  • FIG. 7 shows a block diagram of a message environment that dynamically switches between a network device, a client device, and a connection management system
  • FIG. 8 is a flowchart illustrating a method of dynamic messaging processing
  • FIG. 9 is a flowchart illustrating a method of dynamic messaging processing and data aggregation in accordance with embodiments described herein.
  • FIG. 1 shows a block diagram of an embodiment of a network interaction system which implements and supports certain embodiments and features described herein. Certain embodiments relate to establishing a connection channel between a network device 105 (which can be operated by a user 110) and a client device 130 associated with a client 125.
  • the network interaction system can include a terminal device 115 (which can be operated by an agent 120).
  • a user 110 can be an individual attempting to contact a client 125 via telephonic device 132.
  • a client 125 can be an entity that provides, operates, or runs a service, or individuals employed by or assigned by such an entity to perform the tasks available to a client 125 as described herein.
  • the agent 120 can be an individual, such as a support agent tasked with providing support or information to the user 110 regarding the service. Out of a large number of agents, a subset of agents may be appropriate for providing support or information for a particular client 125.
  • the agent 120 may be affiliated or not affiliated with the client 125. Each agent can be associated with one or more clients 125.
  • a user 110 can be an individual attempting to book an appointment via a cell phone, a client 125 can be a company that provides medical services, and an agent 120 can be a representative employed by the company. In various embodiments, the user 110, client 125, and agent 120 can be other individuals or entities.
  • FIG. 1 shows only a single network device 105, terminal device 115 and client device 130 coupled to a database 127
  • an interaction system can include multiple or many (e.g., tens, hundreds or thousands) of each of one or more of these types of devices.
  • different nodes of an interaction system can include repeated copies of client device 130, telephonic device 132, and other devices coupled to one or more shared database(s) 127 for client 125.
  • FIG. 1 shows only a single user 110, agent 120 and client 125
  • an interaction system of FIG. 1 can include multiple or many of each of one or more of such entities.
  • a remote server 140 may also be configured to receive and respond to select network-device communications.
  • a connection management system 150 can facilitate strategic routing of communications.
  • a communication can include a message with content (e.g., defined based on input from an entity, such as typed or spoken input).
  • the communication can also include additional data, such as data about a transmitting device (e.g., an IP address, account identifier, device type and/or operating system); a destination address; an identifier of a client; an identifier of a webpage or webpage element (e.g., a webpage or webpage element being visited when the communication was generated or otherwise associated with the communication) or online history data; a time (e.g., time of day and/or date); and/or destination address. Other information can be included in the communication.
  • connection management system 150 routes the entire communication to another device.
  • connection management system 150 modifies the communication or generates a new communication (e.g., based on the initial communication).
  • the new or modified communication can include the message (or processed version thereof), at least some (or all) of the additional data (e.g., about the transmitting device, webpage or online history and/or time) and/or other data identified by connection management system 150 (e.g., account data associated with a particular account identifier or device).
  • the new or modified communication can include other information as well.
  • Part of strategic-routing facilitation can include establishing, updating and using one or more connection channels between network device 105 and one or more terminal devices 115.
  • connection management system 150 can first estimate to which client (if any) the communication corresponds. Upon identifying a client, connection management system 150 can identify a terminal device 115 associated with the client for communication with network device 105. In some instances, the identification can include evaluating a profile of each of a plurality of agents (or experts or delegates), each agent (e.g., agent 120) in the plurality of agents being associated with a terminal device (e.g., terminal device 115). The evaluation can relate to a content in a network-device message.
  • connection management system 150 can determine whether any connection channels are established between network device 105 and a terminal device associated with the client (or remote server 140) and, if so, whether such channel is to be used to exchange a series of communications including the communication.
  • connection management system 150 can establish a connection channel between the network device 105 and terminal device 115. In some instances, connection management system 150 can transmit a message to the selected terminal device 115. The message may request an acceptance of a proposed assignment to communicate with a network device 105 or identify that such an assignment has been generated.
  • the message can include information about network device 105 (e.g., IP address, device type, and/or operating system), information about an associated user 110 (e.g., language spoken, duration of having interacted with client, skill level, sentiment, and/or topic preferences), a received communication, code (e.g., a clickable hyperlink) for generating and transmitting a communication to the network device 105, and/or an instruction to generate and transmit a communication to network device 105.
  • information about network device 105 e.g., IP address, device type, and/or operating system
  • information about an associated user 110 e.g., language spoken, duration of having interacted with client, skill level, sentiment, and/or topic preferences
  • code e.g., a clickable hyperlink
  • connection management system 150 can monitor the communication exchange and to detect issues (e.g., as defined based on rules) such as non-responsiveness of either device or extended latency. Further, such a configuration can facilitate selective or complete storage of communications, which may later be used, for example, to assess a quality of a communication exchange and/or to support learning to update or generate routing rules so as to promote particular post-communication targets.
  • connection management system 150 can monitor the communication exchange in real-time and perform automated actions (e.g., rule-based actions) based on the live communications.
  • connection management system 150 when connection management system 150 determines that a communication relates to a particular item (e.g., product), connection management system 150 can automatically transmit an additional message to terminal device 115 containing additional information about the item (e.g., quantity of item available, links to support documents related to the item, or other information about the item or similar items).
  • additional information about the item e.g., quantity of item available, links to support documents related to the item, or other information about the item or similar items.
  • a designated terminal device 115 can communicate with network device 105 without relaying communications through connection management system 150.
  • One or both devices 105, 115 may (or may not) report particular communication metrics or content to connection management system 150 to facilitate communication monitoring and/or data storage.
  • connection management system 150 may route select communications to a remote server 140.
  • Remote server 140 can be configured to provide information in a predetermined manner. For example, remote server 140 may access defined one or more text passages, voice recording and/or files to transmit in response to a communication. Remote server 140 may select a particular text passage, recording or file based on, for example, an analysis of a received communication (e.g., a semantic or mapping analysis).
  • Routing and/or other determinations or processing performed at connection management system 150 can be performed based on rules and/or data at least partly defined by or provided by one or more client devices 130.
  • client device 130 may transmit a communication that identifies a prioritization of agents, terminal-device types, and/or topic/skill matching.
  • client device 130 may identify one or more weights to apply to various variables potentially impacting routing determinations (e.g., language compatibility, predicted response time, device type and capabilities, and/or terminal-device load balancing). It will be appreciated that which terminal devices and/or agents are to be associated with a client may be dynamic.
  • Communications from client device 130 and/or terminal devices 115 may provide information indicating that a given terminal device and/or agent is to be added or removed as one associated with a client.
  • client device 130 can transmit a communication with IP address and an indication as to whether a terminal device with the address is to be added or removed from a list identifying client-associated terminal devices.
  • Each communication e.g., between devices, between a device and connection management system 150, between remote server 140 and connection management system 150 or between remote server 140 and a device
  • networks 170 Any combination of open or closed networks can be included in the one or more networks 170.
  • the one or more networks 170 can be incorporated entirely within or can include an intranet, an extranet, or a combination thereof.
  • a network in the one or more networks 170 includes a short-range communication channel, such as a Bluetooth or a Bluetooth Low Energy channel.
  • communications between two or more systems and/or devices can be achieved by a secure communications protocol, such as secure sockets layer (SSL) or transport layer security (TLS).
  • SSL secure sockets layer
  • TLS transport layer security
  • data and/or transactional details may be encrypted based on any convenient, known, or to be developed manner, such as, but not limited to, Data Encryption Standard (DES), Triple DES, Rivest-Shamir-Adleman encryption (RSA), Blowfish encryption, Advanced Encryption Standard (AES), CAST-128, CAST-256, Decorrelated Fast Cipher (DFC), Tiny Encryption Algorithm (TEA), extended TEA (XTEA), Corrected Block TEA (XXTEA), and/or RC5, etc.
  • DES Data Encryption Standard
  • Triple DES Rivest-Shamir-Adleman encryption
  • AES Advanced Encryption Standard
  • CAST-128, CAST-256 CAST-128, CAST-256, Decorrelated Fast Cipher (DFC), Tiny Encryption Algorithm (TEA), extended TEA (XTEA), Corrected Block TEA (XXTEA), and/or RC5, etc.
  • a network device 105, terminal device 115 and/or client device 130 can include, for example, a portable electronic device (e.g., a smart phone, tablet, laptop computer, or smart wearable device) or a non-portable electronic device (e.g., one or more desktop computers, smart appliances, servers, and/or processors).
  • Connection management system 150 can be separately housed from network, terminal and client devices or may be part of one or more such devices (e.g., via installation of an application on a device).
  • Remote server 140 may be separately housed from each device and connection management system 150 and/or may be part of another device or system. While each device, server and system in FIG. 1 is shown as a single device, it will be appreciated that multiple devices may instead be used.
  • a set of network devices can be used to transmit various communications from a single user, or remote server 140 may include a server stack.
  • a software agent or application may be installed on and/or executable on a depicted device, system or server.
  • the software agent or application is configured such that various depicted elements can act in complementary manners.
  • a software agent on a device can be configured to collect and transmit data about device usage to a separate connection management system, and a software application on the separate connection management system can be configured to receive and process the data.
  • FIG. 2 shows a block diagram of another embodiment of a network interaction system.
  • FIG. 2 illustrates a variety of components configured and arranged to enable a network device 205 to communicate with one or more terminal devices 215 via network connections such as router 207 and wide area network 270.
  • the depicted instance includes nine terminal devices 215 included in three local-area networks 235.
  • a communication from network device 205 includes destination data (e.g., a destination IP address) that at least partly or entirely indicates which terminal device is to receive the communication.
  • destination data e.g., a destination IP address
  • a network interaction system such as the system described in FIG. 2 can include one or more inter-network connection components 245 that can process the destination data and facilitate appropriate routing.
  • Each inter-network connection components 245 can be connected to a plurality of networks 235 and can have multiple network cards installed (e.g., each card connected to a different network).
  • an inter-network connection component 245 can be connected to a wide-area network 270 (e.g., the Internet) and one or more local-area networks 235.
  • a wide-area network 270 e.g., the Internet
  • local-area networks 235 e.g., the Internet
  • the communication is handled by multiple inter-network connection components 245.
  • communications with client device 230 via router 233 are also handled by inter-network connection components 245.
  • inter-network connection component 245 When an inter-network connection component 245 receives a communication (or a set of packets corresponding to the communication), inter-network connection component 245 can determine at least part of a route to pass the communication to a network associated with a destination.
  • the route can be determined using, for example, a routing table (e.g., stored at the router), which can include one or more routes that are pre-defined, generated based on an incoming message (e.g., from another router or from another device) or learned.
  • inter-network connection components 245 include a router 260 and a gateway 265.
  • An inter-network connection component 245 e.g., gateway 265 may be configured to convert between network systems or protocols.
  • gateway 265 may facilitate communication between Transmission Control Protocol/Internet Protocol (TCP/IP) and Internetwork Packet Exchange/Sequenced Packet Exchange (IPX/SPX) devices.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • IPX/SPX Internetwork Packet Exchange/Sequenced Packet Exchange
  • intra-network routing can be performed via an intra-network connection component 245, such as a switch 280 or hub 285.
  • Each intra-network connection component 245 can be connected to (e.g., wirelessly or wired, such as via an Ethernet cable) multiple terminal devices 215.
  • Hub 285 can be configured to repeat all received communications to each device to which it is connected.
  • Each terminal device can then evaluate each communication to determine whether the terminal device is the destination device or whether the communication is to be ignored.
  • Switch 280 can be configured to selectively direct communications to only the destination terminal device.
  • a local-area network 235 can be divided into multiple segments, each of which can be associated with independent firewalls, security rules and network protocols.
  • An intra network connection component 245 can be provided in each of one, more or all segments to facilitate intra-segment routing.
  • a bridge 290 can be configured to route communications across segments 275.
  • various components analyze destination data in the communications. For example, such data can indicate which network a communication is to be routed to, which device within a network a communication is to be routed to or which communications a terminal device is to process (versus ignore). However, in some instances, it is not immediately apparent which terminal device (or even which network) is to participate in a communication from a network device.
  • a set of terminal devices may be configured so as to provide similar types of responsive communications.
  • a query in a communication from a network device may be responded to in similar manners regardless to which network device the communication is routed. While this assumption may be true at a high level, various details pertaining to terminal devices can give rise to particular routings being advantageous as compared to others.
  • terminal devices in the set may differ from each other with respect to (for example) which
  • communication channels are supported, geographic and/or network proximity to a network device and/or characteristics of associated agents (e.g., knowledge bases, experience, languages spoken, availability, general personality or sentiment, etc.). Accordingly, select routings may facilitate faster responses that more accurately and/or completely respond to a network-device communication.
  • a complication is that static routings mapping network devices to terminal devices may fail to account for variations in communication topics, channel types, agent availability, and so on.
  • connection management system 250 can be configured to serve as a relay and/or destination address.
  • a set of network devices 205 may transmit communications, each identifying connection management system 250 as a destination.
  • Connection management system 250 can receive each communication and can concurrently monitor a set of terminal devices (e.g., so as to generate metrics for each terminal device). Based on the monitoring and a rule, connection management system 250 can identify a terminal device 215 to which it may relay each communication.
  • terminal device communications may similarly be directed to a consistent destination (e.g., of connection management system 250) for further relaying, or terminal devices may begin communicating directly with corresponding network devices.
  • connection management system 250 may be associated with a connection component (e.g., inter-network connection component 245 or intra-network connection component 245) such that an application corresponding to connection management system 250 (or part thereof) is installed on the component.
  • the application may, for example, perform independently or by communicating with one or more similar or complementary applications (e.g., executing on one or more other components, network devices or remotes servers).
  • FIG. 3 shows a representation of a protocol-stack mapping of connection components' operation. More specifically, FIG. 3 identifies a layer of operation in an Open Systems Interaction (OSI) model that corresponds to various connection components.
  • OSI Open Systems Interaction
  • the OSI model can include multiple logical layers 302-314.
  • the layers are arranged in an ordered stack, such that layers 302-312 each serve a higher level and layers 304-314 is each served by a lower layer.
  • the OSI model includes a physical layer 302.
  • Physical layer 302 can define parameters physical communication (e.g., electrical, optical, or electromagnetic).
  • Physical layer 302 also defines connection management protocols, such as protocols to establish and close connections.
  • Physical layer 302 can further define a flow-control protocol and a transmission mode.
  • a link layer 304 can manage node-to-node communications.
  • Link layer 304 can detect and correct errors (e.g., transmission errors in the physical layer 302) and manage access permissions.
  • Link layer 304 can include a media access control (MAC) layer and logical link control (LLC) layer.
  • MAC media access control
  • LLC logical link control
  • a network layer 306 can coordinate transferring data (e.g., of variable length) across nodes in a same network (e.g., as datagrams).
  • Network layer 306 can convert a logical network address to a physical machine address.
  • a transport layer 308 can manage transmission and receipt quality.
  • Transport layer 308 can provide a protocol for transferring data, such as a Transmission Control Protocol (TCP).
  • TCP Transmission Control Protocol
  • Transport layer 308 can perform segmentation/desegmentation of data packets for transmission and can detect and account for transmission errors occurring in layers 302-306.
  • a session layer 310 can initiate, maintain and terminate connections between local and remote applications. Sessions may be used as part of remote-procedure interactions.
  • a presentation layer 312 can encrypt, decrypt and format data based on data types known to be accepted by an application or network layer.
  • An application layer 314 can interact with software applications that control or manage communications. Via such applications, application layer 314 can (for example) identify destinations, local resource states or availability and/or communication content or formatting. Various layers 302-314 can perform other functions as available and applicable.
  • Intra-network connection components 322, 324 are shown to operate in physical layer 302 and link layer 304. More specifically, a hub can operate in the physical layer, such that operations can be controlled with respect to receipts and transmissions of communications. Because hubs lack the ability to address communications or filter data, they possess little to no capability to operate in higher levels. Switches, meanwhile, can operate in a link layer, as they are capable of filtering communication frames based on addresses (e.g., MAC addresses).
  • addresses e.g., MAC addresses
  • inter-network connection components 326, 328 are shown to operate on higher levels (e.g., layers 306-314).
  • routers can filter communication data packets based on addresses (e.g., IP addresses). Routers can forward packets to particular ports based on the address, so as to direct the packets to an appropriate network.
  • Gateways can operate at the network layer and above, perform similar filtering and directing and further translation of data (e.g., across protocols or architectures).
  • a connection management system 350 can interact with and/or operate on, in various embodiments, one, more, all or any of the various layers.
  • connection management system 350 can interact with a hub so as to dynamically adjust which terminal devices or client devices the hub communicates.
  • connection management system 350 can communicate with a bridge, switch, router or gateway so as to influence which terminal device the component selects as a destination (e.g., MAC, logical or physical) address.
  • a connection management system 350 can monitor, control, or direct segmentation of data packets on transport layer 308, session duration on session layer 310, and/or encryption and/or compression on presentation layer 312.
  • connection management system 350 can interact with various layers by exchanging communications with (e.g., sending commands to) equipment operating on a particular layer (e.g., a switch operating on link layer 304), by routing or modifying existing communications (e.g., between a network device and a client device) in a particular manner, and/or by generating new communications containing particular information (e.g., new destination addresses) based on the existing communication.
  • a particular layer e.g., a switch operating on link layer 304
  • connection management system 350 can influence communication routing and channel establishment (or maintenance or termination) via interaction with a variety of devices and/or via influencing operating at a variety of protocol-stack layers.
  • FIG. 4 represents a multi-device communication exchange system according to an embodiment.
  • the system includes a network device 405 configured to communicate with a variety of types of terminal devices and client devices over a variety of types of communication channels.
  • network device 405 can transmit a telephonic or text message communication over a cellular network (e.g., via a base station 410).
  • the communication can be routed to a client location 423 or a terminal location 443.
  • a connection management system 430 receives the communication and identifies which client device or terminal device is to respond to the
  • each cluster of terminal devices 440A, 440B, and 440C can correspond to a different client or to different nodes for a particular client (e.g. nodes focused on different topics, response types, or associated with a particular routing path or parts of a routing path).
  • the terminal devices may be geographically co-located or disperse.
  • the metrics may be determined based on stored or learned data and/or real-time monitoring (e.g., based on availability).
  • Connection management system 430 can communicate with various terminal devices and client devices and other components via one or more routers 435 or other inter-network or intra-network connection components.
  • Connection management system 430 may collect, analyze and/or store data from or pertaining to communications, terminal-device operations, client rules, and/or user-associated actions (e.g., online activity) at one or more data stores. Such data may influence communication routing.
  • machine learning models can use previous data and results of routing from prior operations to improve selection of future routing. This can be done with any combination of supervised learning with constructed data sets and historical data, unsupervised learning based on expectation or projection models for current routing paths in a system and system use targets, Any such data can be used in operations for natural language processing (e.g. natural language understanding, natural language inference, etc.) to generate natural language data or to update machine learning models. Such data can then be used by the client systems or shared with applications running on a network device or on a server to improve dynamic message processing (e.g. improved intent indicator data results or response message generation).
  • natural language processing e.g. natural language understanding, natural language inference, etc.
  • Such data can then be used by the client systems or shared with applications running on a network device or on a server to improve dynamic message processing (e.g. improved intent indicator data results or response message generation).
  • Client device 415 may also be connected to a telephonic device 425 associated with a client location.
  • the telephonic device 425 may be a landline phone associated with a telephone number in some embodiments.
  • Network device 405 may have the capability to generate and transmit a text (e.g., SMS) message to the telephone number associated with the telephonic device 425, which may be routed to the client device 415 in some embodiments.
  • the client device 415 may be capable of receiving and processing text messages.
  • client device 415 may be coupled to a server 420.
  • Server 420 may receive and respond to inquiries from client device 415 for information regarding the goods or services provided at the client location 423, such as product information, an appointment schedule, hours of operation, location information, contact information, and the like.
  • FIG. 5 shows a block diagram of an embodiment of a connection management system.
  • a message receiver interface 505 can receive a message.
  • the message can be received, for example, as part of a communication transmitted by a source device (e.g., housed separately from connection management system or within a same housing), such as a network device.
  • the communication can be part of a series of communications or a communicate exchange, which can include a series of messages or message exchange being routed between two devices (e.g., a network device and a client device). This message or communication exchange may be part of and/or may define an interaction between the devices.
  • a communication channel or operative channel can include one or more protocols (e.g., routing protocols, task-assigning protocols and/or addressing protocols) used to facilitate routing and a communication exchange between the devices.
  • the message can include a message generated based on inputs received at a local or remote user interface.
  • the message can include a message that was generated based on button or key presses or recorded speech signals.
  • the message includes an automatically generated message, such as one generated upon detecting that a network device has provided a particular input command (e.g., key sequence).
  • the message can include an instruction or request, such as one to initiate a communication exchange.
  • the message can include or be associated with an identifier of a client.
  • the message can explicitly identify the client (or a device associated with the client); the message can include or be associated with a webpage or app page associated with the client; the message can include or be associated with a destination address associated with a client; or the message can include or be associated with an identification of an item (e.g., product) or service associated with the client.
  • a network device may be presenting an app page of a particular client, which may offer an option to transmit a communication to an agent.
  • a communication may be generated to include the message and an identifier of the particular client (e.g., a text message to a phone number).
  • a processing engine 510 may process a received communication and/or message. Processing can include, for example, extracting one or more particular data elements (e.g., a message, a client identifier, a network-device identifier, an account identifier, and so on). Processing can include transforming a formatting or communication type (e.g., to be compatible with a particular device type, operating system, communication-channel type, protocol and/or network).
  • a formatting or communication type e.g., to be compatible with a particular device type, operating system, communication-channel type, protocol and/or network.
  • a message assessment engine 515 may assess the (e.g., extracted or received) message.
  • the assessment can include identifying, for example, one or more categories or tags for the message.
  • category or tag types can include (for example) topic, sentiment, complexity, and urgency.
  • a difference between categorizing and tagging a message can be that categories can be limited (e.g., according to a predefined set of category options), while tags can be open.
  • a topic can include, for example, a technical issue, a use question, or a request.
  • a category or tag can be determined, for example, based on a semantic analysis of a message (e.g., by identifying keywords, sentence structures, repeated words, punctuation characters and/or non-article words); user input (e.g., having selected one or more categories); and/or message-associated statistics (e.g., typing speed and/or response latency).
  • a semantic analysis of a message e.g., by identifying keywords, sentence structures, repeated words, punctuation characters and/or non-article words
  • user input e.g., having selected one or more categories
  • message-associated statistics e.g., typing speed and/or response latency
  • message assessment engine 515 can determine a metric for a message.
  • a metric can include, for example, a number of characters, words, capital letters, all-capital words or instances of particular characters or punctuation marks (e.g., exclamation points, question marks and/or periods).
  • a metric can include a ratio, such as a fraction of sentences that end with an exclamation point (or question mark), a fraction of words that are all capitalized, and so on.
  • Message assessment engine 515 can store a message, message metric and/or message statistic in a message data store 520. Each message can also be stored in association with other data (e.g., metadata), such as data identifying a corresponding source device, destination device, network device, terminal device, client, one or more categories, one or more stages and/or message-associated statistics).
  • Various components of the connection management system e.g., message assessment engine 515 and/or an interaction management engine 525) can query message data store 520 to retrieve query-responsive messages, message metrics and/or message statistics.
  • An interaction management engine 525 can determine to which device a communication is to be routed and how the receiving and transmitting devices are to communicate. Each of these determinations can depend, for example, on whether a particular network device (or any network device associated with a particular user) has previously communicated with a client device or terminal device in a set of terminal devices (e.g., any terminal device associated with the connection
  • communication routing can be generally biased towards the same terminal device.
  • Other factors that may influence routing can include, for example, whether the terminal device (or corresponding agent) is available and/or a predicted response latency of the terminal device. Such factors may be considered absolutely or relative to similar metrics corresponding to other terminal devices.
  • a re-routing rule e.g., a client-specific or general rule
  • a terminal-device selection can be performed based on factors such as, for example, an extent to which various agents' knowledge base corresponds to a communication topic, availability of various agents at a given time and/or over a channel type, types and/or capabilities of terminal devices (e.g., associated with the client).
  • a rule can identify how to determine a sub-parameter to one or more factors such as these and a weight to assign to each parameter. By combining (e.g., summing) weighted sub-parameters, a parameter for each agent can be determined.
  • a terminal device selection can then be made by comparing terminal devices' parameters.
  • interaction management engine 525 can (for example) determine whether a client device or terminal device is to respond to a communication via (for example) SMS message, voice call, video communication, etc.
  • a communication type can be selected based on, for example, a communication-type priority list (e.g., at least partly defined by a client or user); a type of a communication previously received from the network device (e.g., so as to promote consistency), a complexity of a received message, capabilities of the network device, and/or an availability of one or more terminal devices.
  • some communication types will result in real-time communication (e.g., where fast message response is expected), while others can result in asynchronous communication (e.g., where delays (e.g., of several minutes or hours) between messages are acceptable).
  • interaction management engine 525 can determine whether a continuous channel between two devices should be established, used or terminated.
  • a continuous channel can be structured so as to facilitate routing of future communications from a network device to a specified terminal device or client device. This bias can persist even across message series.
  • a representation of a continuous channel e.g., identifying an agent
  • a parameter can be generated using one or more factors described herein and a rule (e.g., that includes a weight for each of the one or more factors) to determine a connection parameter corresponding to a given network device and terminal device.
  • the parameter may pertain to an overall match or one specific to a given communication or communication series. Thus, for example, the parameter may reflect a degree to which a given terminal device is predicted to be suited to respond to a network-device communication.
  • a parameter analysis can be used to identify each of a terminal device to route a given communication to and whether to establish, use or terminate a connection channel. When a parameter analysis is used to both address a routing decision and a channel decision, a parameter relevant to each decision may be determined in a same, similar or different manner.
  • a parameter can be determined for a single network-device/terminal-device combination, or multiple parameters can be determined, each characterizing a match between a given network device and a different terminal device.
  • a set of three terminal devices associated with a client may be evaluated for potential communication routing.
  • a parameter may be generated for each that relates to a match for the particular communication.
  • Each of the first two terminal devices may have previously communicated with a network device having transmitted the communication.
  • An input from the network device may have indicated positive feedback associated with an interaction with the communication(s) with the first device.
  • a past-interact sub-parameter (as calculated according to a rule) for the first, second and third devices may be 10, 5, and 0, respectively. (Negative feedback inputs may result in negative sub parameters.) It may be determined that only the third terminal device is available.
  • a fast-response sub parameter for the first, second and third devices may be 1, 3 and 10.
  • the rule does not include weighting or normalization parameters (though, in other instances, a rule may), resulting in parameters of 14, 11 and 19.
  • the rule may indicate that the message is to be routed to a device with the highest parameter, that being the third terminal device. If routing to a particular terminal device is unsuccessful, the message can be routed to a device with the next-highest parameter, and so on.
  • a parameter may be compared to one or more absolute or relative thresholds. For example, parameters for a set of terminal devices can be compared to each other to identify a high parameter to select a terminal device to which a communication can be routed. As another example, a parameter (e.g., a high parameter) can be compared to one or more absolute thresholds to determine whether to establish a continuous channel with a terminal device.
  • an overall threshold for establishing a continuous channel are higher than a threshold for consistently routing communications in a given series of messages. In some embodiments, this difference between the overall threshold and threshold for determining whether to consistently route communication may be because a strong match is important in the continuous-channel context given the extended utility of the channel. In some other embodiments, an overall threshold for using a continuous channel is lower than a threshold for establishing a continuous channel and/or for consistently routing communications in a given series of messages.
  • Interaction management engine 525 can interact with an account engine 530 in various contexts.
  • account engine 530 may look up an identifier of a network device or terminal device in an account data store 535 to identify an account corresponding to the device.
  • account engine 530 can maintain data about previous communication exchanges (e.g., times, involved other device(s), channel type, resolution stage, topic(s) and/or associated client identifier), connection channels (e.g., indicating - for each of one or more clients - whether any channels exist, a terminal device associated with each channel, an establishment time, a usage frequency, a date of last use, any channel constraints and/or supported types of communication), user or agent preferences or constraints (e.g., related to terminal-device selection, response latency, terminal-device consistency, agent expertise, and/or communication-type preference or constraint), and/or user or agent characteristics (e.g., age, language(s) spoken or preferred, geographical location, interests, and so on).
  • previous communication exchanges e.g.,
  • interaction management engine 525 can alert account engine 530 of various connection-channel actions, such that account data store 535 can be updated to reflect the current channel data. For example, upon establishing a channel, interaction management engine 525 can notify account engine 530 of the establishment and identify one or more of: a network device, a terminal device, an account and a client. Account engine 530 can (in some instances) subsequently notify a user of the channel's existence such that the user can be aware of the agent consistency being availed.
  • Interaction management engine 525 can further interact with a client mapping engine 540, which can map a communication to one or more clients (and/or associated brands).
  • a communication received from a network device itself includes an identifier corresponding to a client (e.g., an identifier of a client, webpage, or app page).
  • the identifier can be included as part of a message (e.g., which client mapping engine 540 may detect) or included as other data in a message-inclusive communication.
  • Client mapping engine 540 may then look up the identifier in a client data store 545 to retrieve additional data about the client and/or an identifier of the client.
  • a message may not particularly correspond to any client.
  • a message may include a general query.
  • Client mapping engine 540 may, for example, perform a semantic analysis on the message, identify one or more keywords and identify one or more clients associated with the keyword(s).
  • a single client is identified.
  • multiple clients are identified.
  • An identification of each client may then be presented via a network device such that a user can select a client to communicate with (e.g., via an associated terminal device).
  • Client data store 545 can include identifications of one or more terminal devices (and/or agents) associated with the client.
  • a terminal routing engine 550 can retrieve or collect data pertaining to each of one, more or all such terminal devices (and/or agents) so as to influence routing determinations.
  • terminal routing engine 550 may maintain a terminal data store, which can store information such as terminal devices' device types, operating system, communication-type capabilities, installed applications accessories, geographic location and/or identifiers (e.g., I P addresses). Some information can be dynamically updated.
  • information indicating whether a terminal device is available may be dynamically updated based on (for example) a communication from a terminal device (e.g., identifying whether the device is asleep, being turned off/on, non-active/active, or identifying whether input has been received within a time period); a communication routing (e.g., indicative of whether a terminal device is involved in or being assigned to be part of a communication exchange); or a communication from a network device or terminal device indicating that a communication exchange has ended or begun.
  • a communication from a terminal device e.g., identifying whether the device is asleep, being turned off/on, non-active/active, or identifying whether input has been received within a time period
  • a communication routing e.g., indicative of whether a terminal device is involved in or being assigned to be part of a communication exchange
  • a communication from a network device or terminal device indicating that a communication exchange has ended or begun.
  • being engaged in one or more communication exchanges does not necessarily indicate that a terminal device is not available to engage in another communication exchange.
  • Various factors such as communication types (e.g., message), client- identified or user-identified target response times, and/or system loads (e.g., generally or with respect to a user) may influence how many exchanges a terminal device may be involved in.
  • interaction management engine 525 When interaction management engine 525 has identified a terminal device or client device to involve in a communication exchange or connection channel, it can notify terminal routing engine 550, which may retrieve any pertinent data about the terminal device from terminal data store 555, such as a destination (e.g., IP) address, device type, protocol, etc.
  • a destination e.g., IP
  • Processing engine 510 can then (in some instances) modify the message-inclusive communication or generate a new communication (including the message) so as to have a particular format, comply with a particular protocol, and so on.
  • a new or modified message may include additional data, such as account data corresponding to a network device, a message chronicle, and/or client data.
  • a message transmitter interface 560 can then transmit the communication to the terminal device or client device.
  • the transmission may include, for example, a wired or wireless transmission to a device housed in a separate housing.
  • the terminal device can include a terminal device in a same or different network (e.g., local-area network) as the connection management system. Accordingly, transmitting the communication to the terminal device can include transmitting the communication to an inter- or intra-network connection component.
  • FIG. 6 shows a block diagram of a network environment for dynamic and automatic message processing during communication sessions.
  • a user 601 may use a network device 605 to connect to a server 615 over cloud network 610.
  • Network device 605 may be any suitable device, such as a mobile device, that is capable of transmitting and receiving communications in the form of text messages.
  • network device 605 may further be capable of making telephone calls.
  • Cloud network 610 may be any suitable network configured to support text messaging, such as a cellular network.
  • Server 615 may be in the form of any suitable server that is also capable of sending and receiving text messages. Alternatively, server 615 may be in communication with another device capable of sending and receiving text messages. In some embodiments, server 615 may include or may be a connection management system. Server 615 may include a destination determination engine 620, a data aggregation engine 625, and a unified user profile database 630. In addition, server 615 may be in communication with a plurality of client devices 635A-C. Although shown and described as three client devices 635A-C, it is contemplated that server 615 may be in communication with any number of client devices.
  • the destination determination engine 620 may be configured to, in conjunction with a processor (not shown), receive text messages from network device 605 over cloud network 610. Destination determination engine 620 may determine the appropriate client device of the plurality of client devices 635A-C to which to route the text message. Destination determination engine 620 may, in some embodiments, determine that the server 615 is the appropriate destination for the text message, based on the content of the text message. In some embodiments, server 615 may be omitted, and text messages may be routed directly between the network device 605 and one or more of the client devices 635A-C. Destination determination engine 620 can further be configured to receive communications from the client devices 635A-C, reformat the communications as text messages, and route the text messages to the appropriate network device 605.
  • the data aggregation engine 625 may be configured to, in conjunction with a processor (not shown), request and/or retrieve data relative to user 601 or network device 605 from one or more of client devices 635A-C.
  • Data aggregation engine 625 may, in response to a text message from network device 605, request data from client devices 635A, 635B, and 635C based on the content of the text message.
  • server 615 may receive a text message from network device 605 stating, "Send me all restaurants in McPherson Square that have a 7:00 PM reservation for 2 tonight.”
  • Data aggregation engine 625 may formulate a query to client devices 635A and 635C, which are associated with restaurants in McPherson Square, regarding whether they have reservations for 2 at 7:00 PM.
  • responses When responses are received, they can be stored in association with the text message and an identifier of the user 601 and/or the network device 605 in the unified user profile database 630. In addition, the responses can be routed back to the network device 605.
  • FIG. 7 shows a block diagram of a message environment that dynamically switches between a network device, a client device, and a connection management system (e.g. a server or aggregation server).
  • a user 700 may use a network device 705 to send text messages to client 710.
  • the text messages may be sent to a landline telephone number associated with the client 710.
  • the text messages may be sent after user 700 uses the network device 705 to place a phone call to client 710 on the landline telephone number.
  • Client 710 may be any goods or services provider.
  • user 700 may use network device 705 to transmit a text message 751 to client 710 stating, "Can I make an appointment?" Although shown as network device 705 initiating the conversation, it is contemplated that client 710 may alternatively initiate the conversation.
  • user 700 can use network device 705 to call a landline telephone associated with client 710, and client 710 can respond with a text message to network device 705 instead of answering the call.
  • client 710 can search its scheduling system to determine when available appointments are, and send a text message 752 (e.g. a message including a plurality of routing paths) stating, "Appointments are available Monday at 10 AM or 1 PM".
  • Network device 705 can respond with a text message 753, e.g., "Monday at 10 AM”.
  • Client 710 can send a text message 754 stating that "Monday at 10 AM is confirmed.”
  • Client 710 can then update its scheduling system.
  • connection management system 715 may be in operative communication with a plurality of clients 720 and may be configured to retrieve, aggregate, and store data relating to user 700 or network device 705. For example, connection management system 715 may send a text message 755 to network device 705 asking, "See all appointments?" Network device 705 may respond with a text message 756, "Yes.” Connection management system 715 may communicate with clients 720 to retrieve all of the user 700's appointments with all of the available clients 720. Connection management system 715 may transmit a text message 757 stating, "Here are all your appointments.” The text message 757 may include all of the aggregated data from the clients 720.
  • connection management system 715 e.g. a server or an aggregation server
  • user 700 may alternatively initiate a conversation with the connection management system 715.
  • connection management system 715 may similarly interface between the network device 705 and the client 710.
  • the connection management system 715 can, in some embodiments, process a message from a client device for an intent indicator data or intent data. This can include natural language processing to select an intent value associated with a message from a client device to the content management system 715. For example, if client device were to text "appointments" to content management system 715 after message 753 and before receiving message 755, this word could be processed by content management system 715 as an intent indicator data using a machine learning model at connection management system 715. The content management system, using the intent indicator data with the messaging history from client 710 could process the text "appointments" to select an intent value from a plurality of possible intent values. Such intent values can includes an option to see all appointments, cancel appointments, reschedule appointments, or other such values. Using the machine learning model, the text "appointments" can be processed to select a response associated with an intent value.
  • connection management system 715 determines that receiving a response message associated with an intent value of seeing all appointments corresponds most closely with the intent indicator data "appointments", and response with message 755 "See all appointments?"
  • a new message from network device 705 to connection management system 715 "new appointment”, “cx apptmt”, “apt?”, “nxt apt”, “apt time?”, or “eng apt time?” could each result in connection management system 715 providing a different response based on a different intent value determined from the intent indicator data identified from the message.
  • a connection management system can access or store information from previous communications with a client device or account associated with a client device. This can include information on routing paths provided to a client device and routing path selections received at a client from a network device. This information can be received at connection management system 715 from client 710, clients 720, or directly from network device 705. The connection management system 715 then receives a new message from the network device 705, with the new message including intent indicator data.
  • the intent indicator data can be natural language text or voice information.
  • the intent indicator data can also be metadata received as part of the new message. In some embodiments, the intent indicator data or multiple elements of intent indicator data can include combinations of such data.
  • connection management system 715 then processes the intent indicator data(s) using one or more machine learning models, and generates a response using the machine learning models. As described above, this can be a response including one or more routing paths based on the intent indicator data and any other data available to connection management system to infer an intent of a user of network device 705.
  • a response is then generated by connection management system 715 or a client 720 managed by connection management system 715 based on the intent indicator data and previous data (e.g. a prior selection of a routing path from communications between network device 705 and client 710).
  • the response is communicated to network device 705 using connection management system 715, including information and data to facilitate display of response data on network device 705.
  • a connection management system can include an intent processing system that uses intent indicator data to update an intent associated with a user account.
  • the intent data can be collected via a communications session, history data, user profile data, or any such source.
  • One example can include natural language text from a customer indicating an attempt to move money between a main account and a new flex account that has opened and that is associated with the customer.
  • the intent processing system can evaluate this intent indicator data to determine the issue that the customer wishes to have addressed. In this particular instance, the customer may be having trouble transferring funds from one online account to another account.
  • the intent processing system may gather the intent indicator data with other context data to update intent values or other action values used to determine which client nodes and associated actions or information to take in response to the intent indicator data.
  • intent values or other action values used to determine which client nodes and associated actions or information to take in response to the intent indicator data.
  • This can include intent or action values associated with a context that the request or issue is shared in, a level of urgency, a stress or anxiety level of the customer, whether there is a time pressure, and the like.
  • the intent processing system may identify, based on the intent value selected, what the customer wishes to have resolved.
  • an intent processing system of a connection management system based on an identified intent value, identifies a selected process to in order to resolve the issue or request provided by the customer that is associated with the identified intent value. For example, based on the intent indicator data from a customer, the intent processing system may determine that accounts have to be authorized before customers can transfer funds into them. Further, the intent processing system may determine that authorizing an account can be performed online. Based on the identified process, the intent processing system may develop a strategy for responding to the customer intent in a manner that would not only resolve the intent but do so in a manner that leads to a positive customer experience. This can include directing the customer to a client customer service node, or assisting with establishing a connection channel with such a node.
  • the intent system can include machine learning processes that may include developing a foundation for the response, a desired result of the response, and/or any positive additions to give flavor to the response.
  • the contents of the proposed response may be generated based on customer preferences as identified in the customer profile via analysis of past customer interactions with agents as part of a machine learning system.
  • the intent processing system may use the proposed response strategy for routing paths to be provided to a customer for additional selections and approval of the proposed response strategy. This can be part of an existing
  • any such response can be customized or set based on machine learning algorithms that account for the particular intent indicator data and context data (e.g. user stress, user intent indicators, user history data, etc.) to provide routing data selected by the machine learning algorithm.
  • a system can generate customized natural language communications associated with the customized routing paths based on the data (e.g.
  • intent indicator data can include customized language and terminology for a user (e.g. "I see the issue") to provide information customized to the user.
  • Such systems improve the operation of the devices and communication systems by reducing the system resources used by individual users to reach an appropriate resolution, and to improve communication efficiency.
  • the machine learning model can use a feedback system that monitors communications between a network device (e.g. customer) and a service (e.g. client).
  • a performance monitoring system can monitor the interactions between the customer and client to determine whether the client is being effective in addressing the intent of a customer. For instance, the performance monitoring system may evaluate any customer utterances to determine whether the intent is being fulfilled as new intent indicator data is received from a customer (e.g. monitoring frustration levels or machine learning identified indicators that a customer is not achieving expected results from interactions with current nodes of a client system).
  • the performance monitoring system may determine that when the customer responds with "Done,” the customer has acknowledged positive results from a client provided routing path, and that the customer was able to select a routing path to achieve the customer's intent. Further, when the customer responds with "Thanks! That worked ! the performance monitoring system may determine that the customer's intent has been met. This information can then be used to update machine learning models for any aspect of the system, including analysis of other user's intent indicator data to identify intent values for future system users. For instance, the performance monitoring system may implement an investigative algorithm that monitors client metrics to determine why certain routing paths are selected with negative or positive customer results.
  • a server system e.g. server 615
  • server 615 may include or may be a connection management system, a destination determination engine 620, a data aggregation engine 625, a unified user profile database 630, or any combination of such elements.
  • server 615 may include or may be a connection management system, a destination determination engine 620, a data aggregation engine 625, a unified user profile database 630, or any combination of such elements.
  • server 615 may include or may be a connection management system, a destination determination engine 620, a data aggregation engine 625, a unified user profile database 630, or any combination of such elements.
  • other configurations or implementations can be used.
  • FIG. 8 is a flowchart illustrating a method of dynamic messaging processing.
  • a message is received from a client device at a network device.
  • the message may be a text message.
  • the message may include a plurality of routing paths.
  • the message may include a plurality of options of service requests that may be fulfilled by the client device if requested by the network device.
  • the message may have been generated by the client device in response to a landline telephone call made by the network device to the client device.
  • the network device may generate an initial message to the client device via the landline telephone number.
  • the routing path within the message include the various selection options that can be used or responded to by the network device to allow a user of the network device to indicate a selection of a particular routing path of the plurality of routing paths.
  • One routing path can involve a request for general assistance in navigating the plurality of routing paths.
  • Another routing path can involve selection of a specific category of service requests available from the plurality of routing paths.
  • the plurality of routing paths can include shared branches within a complex set of paths, such with nested sub-paths in a routing tree.
  • particular paths in the plurality of routing paths can be associated with servers. These servers can be separate from the client devices, and based on the particular information or results expected from a routing path that are associated with services or information available from a server. Additional aspects of such server are used in steps 830 and 835 below, which can involve messaging to and from such a server.
  • a selection of a routing path of the plurality of routing paths is generated.
  • a user may use the network device to select (e.g. using input interfaces of the network device) an option correlating to a service request that may be fulfilled by the client device.
  • a message can be received following termination of a previous communication channel (e.g. a telephone or voice channel).
  • a client machine learning model processes information from the previous channel and uses this information to select the plurality of routing paths that are provided to a network device. This can be based, as described above, on any information collected as part of the previous communication as well as any other information about a user or account associated with a network device.
  • the client device may present the plurality of routing paths as a variety of options to the network device of service requests that may be completed by text message. In other embodiments, any such channel or combination of channels including text messaging or other messaging can be used for presentation of the options.
  • a two-way communication session is established between the network device and a node of the client device.
  • This session can be established in response to selection of the routing path at the network device.
  • a client device can have multiple nodes, with certain nodes associated with certain routing paths, so that the node for the two-way communication can be determined based on the selected routing path. For example, if the selected routing path corresponds to a service request for appointments, the associated node of the client device can be a scheduling engine. If the selected routing path is for information, the node can be an assessment and response engine.
  • communications between the network device and the client device may include conversations or communications regarding fulfillment of the service request.
  • the network device participates in establishing the two-way communication as a participant in channel communications between the network device and the node.
  • the communications as part of the two-way communication session can be processed and analyzed by one or more engines in a system.
  • natural language processing can be performed on a channel of communications to generate natural language understanding or natural language interpretation data.
  • Such data can be generated by parsing and analyzing not only the data from the communication channel, but other context data as well. This can include metadata from the channel, location or context data derived from the selected routing path and the context of the plurality of routing paths. Other context data such as date, time, user or device identifications or associations, and any other such data can be used as part of natural language understanding or natural language interpretation data.
  • Such data can then be used to generate a value for an intent indicator data from a limited selection of intent indicator data within a system.
  • the plurality of routing paths can be structured in the context of a system to provide data or take actions on behalf of a user, with a limited number of intents associated with the data and actions available within the system.
  • a value associated with an expected user intent can be generated as an intent indicator data.
  • termination of the two-way communication session is facilitated.
  • the client device may fulfill the service request, and no further service requests are made by the network device.
  • the network device can the channel as part of facilitating termination of the two-way communication session. Termination of the communication session may cause the client device to transmit the selected routing path.
  • the selected routing path may be transmitted to a connection management system or server, for example.
  • step 825 data related to the selected routing path is received. For example, if the selected routing path relates to a reservation at one restaurant, information about the restaurant, about other reservations or appointments made, and the like may be received at the network device.
  • a new message may be transmitted.
  • the new message may be a text message.
  • the new message may be transmitted to the connection management system from the network device, for example.
  • the new message may include an intent indicator data.
  • the intent indicator data is indicative of a desired action in a variety of ways.
  • the new message may be in natural language, (e.g., conversational.) Natural language processing at the network device can be used to generate a value for the intent indicator data to be sent with the message.
  • the server may generate a response by using a machine learning model to evaluate the selected routing path and the intent indicator data. As described above, such machine-learning can use natural language analysis in conjunction with the intent indicator data, and other context data, to generate a response to the new message from the network device.
  • the intent indicator data could be to make another reservation, and additional information about the reservation can be inferred from the machine-learning model using the value of the intent indicator data along with other data in the new message (e.g. natural language or conversational data that accompanies the intent indicator data).
  • Information about the plurality of routing paths and the selection of a specific routing path in the two-way communication session or any previous communication session with the user device can be used to inform the machine-learning model at the client device.
  • the response to the new message is received.
  • the response is a text message.
  • other communication channels including any combination of communication channels described herein, can be used.
  • the response may include one or more suggestions that correspond to the selected routing path and the intent indicator data.
  • the one or more suggestions includes aggregated data related to the selected routing path for a plurality of client devices, and the aggregated data may be specific to the network device.
  • the response may include a variety of restaurants and a list of times available for an additional reservation.
  • display of the response is facilitated. For example, the text message response may be displayed on the network device.
  • One client device can provide customer assistance for a product.
  • the plurality of routing paths can include routing paths for device operation assistance for a functional device, device analysis and repair assistance for a non-functioning device, and ordering assistance for products related to the device.
  • Each sub-set of such routing paths can have a different node at a client device.
  • context metadata for the channel, etc.
  • metadata for the channel can be analyzed to assist with both intent indicator data value selection at a network device and machine-analysis at the client device or server.
  • the client device or a server can then provide additional information to the network device after a two-way communication session is terminated, and the network device can display the response. This can include details on ordering replacement parts, directions for selecting operating modes of a device, links or communication channel information for interacting with third parties about ordering related items or where to find additional information.
  • FIG. 9 is a flowchart illustrating a method of dynamic messaging processing and data aggregation.
  • process 900 of FIG. 9 corresponds to server operations interacting with a network device performing corresponding operations of process 800.
  • process 900 can interact with a network device and client devices performing other similar corresponding operations for message processing and data aggregation.
  • Process 900 can be performed by a server system, such as server 615, or any other such system.
  • process 900 can be embodied as instructions stored in a non-transitory medium that, when executed by one or more processors of a system, cause the system to perform process 900.
  • Step 905 of process 900 involves generation of a message comprising a plurality of routing paths.
  • routing paths involve runtime decisions of a system as to where to deliver a given message or event based on a certain context.
  • the plurality of routing decisions can involve options based on expected user preferences, overviews, or expected intent(s) associated with a user to allow a user selection of a routing path of the plurality of routing paths selected by a user.
  • the plurality of routing paths can be based on queries to various client systems or nodes of a client system that can be associated with the expected intents for a user, or with routing paths structured to efficiently allow a user to provide intent indicator data from a user's network device to the server that matches a user's intent.
  • Such queries to nodes or client systems can gather context or other supporting data that the server can use (e.g. with machine learning algorithms) to select intent values for a user based on the context data and expected intent indicator data to be received in subsequent steps.
  • a response is received that includes a routing path selection.
  • the server uses this routing path selection in step 915 to facilitate a two-way communication session between the network device (e.g. a user's device such as a smartphone) and a node of the client device (e.g. a system associated with the routing path selected from the plurality of routing paths).
  • the server can facilitate both the communications and the eventual termination of the two-way communication session in step 920 as part of connection management system (e.g. connection management system 715) operations of a server.
  • connection management system e.g. connection management system 715
  • operations can be integrated with client devices and client nodes (e.g. clients 710 and 720), or can be structured independently in other embodiments.
  • step 925 of process 900 intent indicator data related to the selected routing path is received at a server system. This can be part of a message being routed via a connection management system from a network device to a client node, or can be data about a user or user account from any source associated with a current user's attempt to achieve an intent within the system.
  • intent indicator data can be gathered as part of dynamic message processing and data aggregation not only in step 925, but throughout any communications or interactions using the server or associated devices that share aggregated data with the server. This can include the response from step 910, data exchanged as part of the two-way communication session as part of step 920, or any other previous steps that include data that can be aggregated for use in assisting a user's interactions with the server (e.g. to identify an intent value from intent indicator data and to provide responses to service the intent). In step 930, this data can be processed to select an updated intent value in the system.
  • the intent value is a derived value from a variety of context information including intent indicator data directly from a user's network device, as well as from any other source described herein.
  • a server performing process 900 can update an intent value for the network device using machine learning models.
  • the intent value is thus a mutable indicator that changes as new information is derived (e.g. from current communications with a user's network device) over time.
  • a system can have an initial intent value based on expectations of a likely reason for a user to interact with a system. As actual interactions occur, they can confirm the prior intent, or can cause the intent value to be modified.
  • the machine learning model can they update the intent value in the system over time without any interactions with a user, and that stored intent value based on aggregated data can be used to inform the initial interactions with a user's network device the next time a user is involved in a communication channel associated with the system (e.g. managed by a connection management system associated with the server).
  • the data aggregated by the system can not only be data routed by the system, but can also include data input to the system by agents of the client, such as live operators that can be tasked with interacting with a user at certain points.
  • Information about those interactions can all be fed into a machine learning model.
  • the data is stored in a fixed fashion, and is used to update the changing intent value associated with a user or user account.
  • that data can be processed in a variety of ways for use in determining an intent value.
  • natural language processing can be performed using tools such as Lex and Dialogflow for text or automatic speech recognition. Natural language understanding (NLU) or inference systems from such tools can then be used to structure the information in the intent indicator data.
  • NLU Natural language understanding
  • such data can then be processed by machine learning or artificial intelligence tools (e.g. neural networks) to select an intent value from a limited set of possible intent values associated with a system.
  • machine learning or artificial intelligence tools e.g. neural networks
  • Such intent values for a system can be associated with particular client nodes and routings.
  • the intent values for particular nodes can be subsets of the intent values for a system, with multiple tiers or levels of decisions made using machine learning analysis at each level to determine a current intent value and update the intent value as additional information is received from a user's network device. Additional details of intent value determination are described in U.S. Patent Applicationl6/601,863 titled
  • a communication is generated that includes suggestions corresponding to the intent value associated with the intent indicator data and the routing path from step 910.
  • the intent value e.g. an updated intent value based on current network device communications
  • suggestions e.g. new routing paths
  • This communication can then facilitate display of options and information on a network device that either meets a user's intent, or can be used to further communicate with the system to attempt to achieve the user's intent associated with current system interactions.
  • Implementation of the techniques, blocks, steps and means described above can be done in various ways. For example, these techniques, blocks, steps and means can be implemented in hardware, software, or a combination thereof.
  • the processing units can be implemented within one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described above, and/or a combination thereof.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • processors controllers, micro-controllers, microprocessors, other electronic units designed to perform the functions described above, and/or a combination thereof.
  • portions of the embodiments can be described as a process which is depicted as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram.
  • a flowchart can describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently.
  • the order of the operations can be re-arranged.
  • a process is terminated when its operations are completed, but could have additional steps not included in the figure.
  • a process can correspond to a method, a function, a procedure, a subroutine, a subprogram, etc.
  • a process corresponds to a function
  • its termination corresponds to a return of the function to the calling function or the main function.
  • embodiments can be implemented by hardware, software, scripting languages, firmware, middleware, microcode, hardware description languages, and/or any combination thereof.
  • the program code or code segments to perform the necessary tasks can be stored in a machine readable medium such as a storage medium.
  • a code segment or machine-executable instruction can represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a script, a class, or any combination of instructions, data structures, and/or program statements.
  • a code segment can be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, and/or memory contents.
  • Information, arguments, parameters, data, etc. can be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, ticket passing, network transmission, etc.
  • the methodologies can be implemented with modules (e.g., procedures, functions, and so on) that perform the functions described herein.
  • Any machine-readable medium tangibly embodying instructions can be used in implementing the methodologies described herein.
  • software codes can be stored in a memory.
  • Memory can be implemented within the processor or external to the processor.
  • the term "memory" refers to any type of long term, short term, volatile, nonvolatile, or other storage medium and is not to be limited to any particular type of memory or number of memories, or type of media upon which memory is stored.
  • the term “storage medium”, “storage” or “memory” can represent one or more memories for storing data, including read only memory (ROM), random access memory (RAM), magnetic RAM, core memory, magnetic disk storage mediums, optical storage mediums, flash memory devices and/or other machine readable mediums for storing information.
  • ROM read only memory
  • RAM random access memory
  • magnetic RAM magnetic RAM
  • core memory magnetic disk storage mediums
  • optical storage mediums flash memory devices and/or other machine readable mediums for storing information.
  • machine-readable medium includes, but is not limited to portable or fixed storage devices, optical storage devices, wireless channels, and/or various other storage mediums capable of storing that contain or carry instruction(s) and/or data.

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Marketing (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Medical Informatics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Image Processing (AREA)

Abstract

La présente invention concerne un dispositif réseau (par ex., un téléphone mobile d'un utilisateur) qui peut être utilisé pour effectuer un appel téléphonique vers un téléphone fixe associé à un dispositif client (par ex., un téléphone d'entreprise). Si l'appel téléphonique est terminé, soit le dispositif réseau soit le dispositif client peut générer un message texte destiné à l'autre dispositif et établir une session de communication. Le dispositif client peut présenter diverses options au dispositif réseau de demandes de service qui peuvent être complétées par un message texte. Le dispositif réseau peut transmettre la demande de service et la demande de service peut être satisfaite par le client.
EP20720977.6A 2019-03-28 2020-03-26 Traitement de message dynamique et agrégation de données dans une messagerie Pending EP3949366A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962825153P 2019-03-28 2019-03-28
PCT/US2020/024900 WO2020198438A1 (fr) 2019-03-28 2020-03-26 Traitement de message dynamique et agrégation de données dans une messagerie

Publications (1)

Publication Number Publication Date
EP3949366A1 true EP3949366A1 (fr) 2022-02-09

Family

ID=70416497

Family Applications (1)

Application Number Title Priority Date Filing Date
EP20720977.6A Pending EP3949366A1 (fr) 2019-03-28 2020-03-26 Traitement de message dynamique et agrégation de données dans une messagerie

Country Status (9)

Country Link
US (3) US10917518B2 (fr)
EP (1) EP3949366A1 (fr)
JP (2) JP7263544B2 (fr)
CN (1) CN113632442B (fr)
AU (2) AU2020245555B2 (fr)
CA (1) CA3134607A1 (fr)
IL (1) IL286339A (fr)
SG (1) SG11202109962PA (fr)
WO (1) WO2020198438A1 (fr)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9648164B1 (en) * 2014-11-14 2017-05-09 United Services Automobile Association (“USAA”) System and method for processing high frequency callers
SG11202109962PA (en) 2019-03-28 2021-10-28 Liveperson Inc Dynamic message processing and aggregation of data in messaging
US11323572B2 (en) * 2019-08-15 2022-05-03 3Good LLC Call routing to convert synchronous landline voice communications into asynchronous bidirectional text messaging
WO2021195222A1 (fr) * 2020-03-24 2021-09-30 Tap Text llc Système et procédé pour routeur basé sur du texte omnicanal et système de communication
US11929062B2 (en) * 2020-09-15 2024-03-12 International Business Machines Corporation End-to-end spoken language understanding without full transcripts
CN112423247B (zh) * 2020-10-28 2022-10-18 创业慧康科技股份有限公司 一种基于5g消息的数据交互方法以及一种实时通信系统
CN114666745B (zh) * 2022-03-29 2023-07-21 杭州中天微系统有限公司 数据传输方法、节点控制方法、网络设备、网络系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1820474A (zh) * 2002-03-20 2006-08-16 全球通讯公司 共享的专用接入线路(dal)的网关路由选择判别
EP1521405A1 (fr) * 2003-09-30 2005-04-06 Sony International (Europe) GmbH Réservation bidirectionnelle de QoS dans un mécanisme de signalisation in-band
US20070043878A1 (en) * 2005-08-18 2007-02-22 Microsoft Corporation Virtual robot communication format customized by endpoint
US8774389B2 (en) * 2005-09-13 2014-07-08 International Business Machines Corporation Call routing between shared service centers
US8345827B2 (en) * 2006-12-18 2013-01-01 Joshua Elan Liebermann Sign language public addressing and emergency system
US20090067408A1 (en) * 2007-09-12 2009-03-12 Nokia Corporation Centralized call log and method thereof
US10572476B2 (en) * 2013-03-14 2020-02-25 Apple Inc. Refining a search based on schedule items
US10107643B2 (en) * 2013-10-07 2018-10-23 The Mitre Corporation Message filtering based on destination, plan, intent, expectation, or route
US9516167B2 (en) * 2014-07-24 2016-12-06 Genesys Telecommunications Laboratories, Inc. Media channel management apparatus for network communications sessions
US9723151B2 (en) 2015-10-19 2017-08-01 Genesys Telecommunications Laboratories, Inc. Optimized routing of interactions to contact center agents based on forecast agent availability and customer patience
US20170118321A1 (en) * 2015-10-22 2017-04-27 Ford Global Technologies, Llc Augmented personal device user interface and notification
US9936074B1 (en) * 2016-08-04 2018-04-03 Jpmorgan Chase Bank, N.A. System and method for utilizing SMS functionality to schedule follow-up
US20180253985A1 (en) * 2017-03-02 2018-09-06 Aspiring Minds Assessment Private Limited Generating messaging streams
US11025566B2 (en) * 2017-04-12 2021-06-01 Facebook, Inc. Techniques for intent-based search for bots
IL270266B2 (en) * 2017-05-05 2024-04-01 Liveperson Inc Dynamic response prediction for improved robot task processing
US10963525B2 (en) * 2017-07-07 2021-03-30 Avnet, Inc. Artificial intelligence system for providing relevant content queries across unconnected websites via a conversational environment
US11166127B2 (en) * 2018-03-08 2021-11-02 Andre Arzumanyan Apparatus and method for voice call initiated texting session
US10911396B2 (en) * 2018-06-28 2021-02-02 Paypal, Inc. Mid-tier messaging system
SG11202109962PA (en) 2019-03-28 2021-10-28 Liveperson Inc Dynamic message processing and aggregation of data in messaging
US11887585B2 (en) * 2019-05-31 2024-01-30 Apple Inc. Global re-ranker

Also Published As

Publication number Publication date
US20210274038A1 (en) 2021-09-02
US20200314239A1 (en) 2020-10-01
US11558503B2 (en) 2023-01-17
JP2023098998A (ja) 2023-07-11
AU2020245555B2 (en) 2023-03-16
US10917518B2 (en) 2021-02-09
AU2023202014B2 (en) 2024-05-23
AU2020245555A1 (en) 2021-10-07
US20230328177A1 (en) 2023-10-12
SG11202109962PA (en) 2021-10-28
CN113632442A (zh) 2021-11-09
IL286339A (en) 2021-10-31
AU2023202014A1 (en) 2023-05-04
JP2022527078A (ja) 2022-05-30
WO2020198438A1 (fr) 2020-10-01
CA3134607A1 (fr) 2020-10-01
CN113632442B (zh) 2024-04-23
JP7263544B2 (ja) 2023-04-24

Similar Documents

Publication Publication Date Title
AU2023202014B2 (en) Dynamic message processing and aggregation of data in messaging
US11638195B2 (en) Dynamic communication routing based on consistency weighting and routing rules
AU2020241751B2 (en) Dynamic communications routing to disparate endpoints
US11855952B2 (en) Message rerouting from an e-mail environment to a messaging environment
AU2023203506A1 (en) Intent-driven contact center
EP3304462A1 (fr) Routage dynamique de communication basé sur des règles de routage et de pondération de cohérence
US20230403357A1 (en) Ai based hold messaging

Legal Events

Date Code Title Description
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: UNKNOWN

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE

PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE

17P Request for examination filed

Effective date: 20210924

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40059568

Country of ref document: HK

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: EXAMINATION IS IN PROGRESS

17Q First examination report despatched

Effective date: 20230131

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: GRANT OF PATENT IS INTENDED

RIC1 Information provided on ipc code assigned before grant

Ipc: H04M 7/00 20060101ALI20240131BHEP

Ipc: H04M 3/523 20060101ALI20240131BHEP

Ipc: H04M 3/51 20060101ALI20240131BHEP

Ipc: H04M 3/42 20060101AFI20240131BHEP

INTG Intention to grant announced

Effective date: 20240221

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20240404