Patent Publication Number: US-9900433-B1

Title: System for and method of establishing an augmented communication channel with an interactive voice response system

Description:
FIELD 
     The present technology relates to systems and methods of establishing an augmented communication channel. In particular, the systems and methods allow establishing an augmented communication channel between an interactive voice response system and an electronic device associated with a user. 
     BACKGROUND 
     Interactive voice response systems (also referred to as “IVR systems”) are widely deployed into organizations of various sizes, ranging from small and medium enterprises (SMEs) to large organizations such as, for example, hospitals and public administrations. IVR systems enable routing incoming calls from one or more users to relevant services and/or responders based on a selection made by the users, typically further to the users having listened to a menu/list of options. In most instances, the menu of options is provided to a user as an audio message via an audio channel established between the IVR system and an electronic device from which the user initiates the call. Once the user is connected to the IVR system, she/he is prompted, by the IVR system, to select, from the menu of options, which option she/he desires. The user typically provides her/his selection by pressing on a keypad associated with the electronic device. In turn, the electronic device generates a dual-tone multi-frequency (DTMF) code (also referred to as DTMF tone) associated with the entry made by the user on the keypad. The DTMF code is sent to the IVR system which interprets the DTMF code and executes a corresponding action (e.g., routing the call to a given responder). 
     Even though IVR systems have improved productivity by automating, at least partially, the routing of incoming calls throughout organizations, it still presents certain deficiencies, in particular in terms of user experience. For example, but without being limitative, (1) it may take time for a user to reach an item she/he wishes to select from the menu/list (as the menu/list is typically recited, via an audio channel, one item at a time) thereby resulting in potential additional communication costs; (2) an item the user is looking for may no longer exist; and/or (3) for cases wherein the menu/list is structured as a tree having multiple nodes, navigation throughout the tree may not be intuitive and may result in the user giving up looking for the item she/he wishes to select before reaching it. 
     Various solutions have been investigated and/or implemented to mitigate some of the drawbacks listed in the above-paragraph. Those solutions include, for example, but without being limitative, (1) click-to-call from a web page either towards a third-party communication device or within a browser using WebRTC technology; (2) visual IVR systems such as IVR solutions from Dialogic Corporation; (3) publicly providing phone numbers that are internal to a given organization; and/or (4) vocal recognition, including vocal recognition based on machine-learning algorithms. 
     Improvements are however still desirable. 
     The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches. 
     SUMMARY 
     Embodiments of the present technology have been developed based on developers&#39; appreciation of shortcomings associated with the prior art. 
     In particular, such shortcomings may comprise (1) a limited compatibility of recent solutions with public switched telephone network (PSTN) and/or legacy IVR systems; and/or (2) not allowing the user to rely on either an audio channel or a data channel to make a selection in a menu. 
     In one aspect, various implementations of the present technology provide a method of establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user, the method comprising:
         receiving, from the electronic device, an audio call request;   establishing an audio channel between the IVR system and the electronic device;   establishing a data channel between the IVR system and the electronic device;   transmitting, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure;   receiving, via one of the audio channel and the data channel, a user selection relating to the IVR tree data;   generating an updated position of the user with respect to the menu navigation structure based on the user selection; and   transmitting, via the other one of the audio channel and the data channel, to the electronic device associated with the user, the updated position.       

     In another aspect, various implementations of the present technology provide a method of establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user, the method comprising:
         sending, by the electronic device, to the IVR system, an audio call request;   establishing an audio channel between the IVR system and the electronic device;   establishing a data channel between the IVR system and the electronic device;   receiving, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure;   sending, via one of the audio channel and the data channel, a user selection relating to the IVR tree data; and   receiving, via the other one of the audio channel and the data channel, an updated position of the user with respect to the menu navigation structure based on the user selection.       

     In another aspect, various implementations of the present technology provide a system for establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user, the system comprising:
         a processor;   a non-transitory computer-readable medium, the non-transitory computer-readable medium comprising control logic which, upon execution by the processor, causes:
           receiving, from the electronic device, an audio call request;   establishing an audio channel between the IVR system and the electronic device;   establishing a data channel between the IVR system and the electronic device;   transmitting, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure;   receiving, via one of the audio channel and the data channel, a user selection relating to the IVR tree data;   generating an updated position of the user with respect to the menu navigation structure based on the user selection; and   transmitting, via the other one of the audio channel and the data channel, to the electronic device associated with the user, the updated position.   
               

     In another aspect, various implementations of the present technology provide a system for establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user, the system comprising:
         a processor;   a non-transitory computer-readable medium, the non-transitory computer-readable medium comprising control logic which, upon execution by the processor, causes:
           sending, by the electronic device, to the IVR system, an audio call request;   establishing an audio channel between the IVR system and the electronic device;   establishing a data channel between the IVR system and the electronic device;   receiving, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure;   sending, via one of the audio channel and the data channel, a user selection relating to the IVR tree data; and   receiving, via the other one of the audio channel and the data channel, an updated position of the user with respect to the menu navigation structure based on the user selection.   
               

     In other aspects, various implementations of the present technology provide a non-transitory computer-readable medium storing program instructions for establishing an augmented communication channel between an interactive voice response (IVR) system and electronic device associated with a user, the program instructions being executable by a processor of a computer-based system to carry out one or more of the above-recited methods. 
     In other aspects, various implementations of the present technology provide a computer-based system, such as, for example, but without being limitative, an IVR system and/or an electronic device comprising at least one processor and a memory storing program instructions for establishing an augmented communication channel between an IVR system and an electronic device associated with a user, the program instructions being executable by the at least one processor of the electronic device to carry out one or more of the above-recited methods. 
     In the context of the present specification, unless expressly provided otherwise, a computer system may refer, but is not limited to, an “electronic device”, an “interactive voice response (IVR) system”, an “automatic attendant (AA) system”, a “short message service (SMS) gateway”, a “network device”, a “telecommunication product”, a “PBX”, a “network system”, an “operation system”, a “system”, a “computer-based system” and/or any combination thereof appropriate to the relevant task at hand. 
     In the context of the present specification, unless expressly provided otherwise, the expression “computer-readable medium” and “memory” are intended to include media of any nature and kind whatsoever, non-limiting examples of which include RAM, ROM, disks (CD-ROMs, DVDs, floppy disks, hard disk drives, etc.), USB keys, flash memory cards, solid state-drives, and tape drives. Still in the context of the present specification, “a” computer-readable medium and “the” computer-readable medium should not be construed as being the same computer-readable medium. To the contrary, and whenever appropriate, “a” computer-readable medium and “the” computer-readable medium may also be construed as a first computer-readable medium and a second computer-readable medium. 
     In the context of the present specification, unless expressly provided otherwise, the words “first”, “second”, “third”, etc. have been used as adjectives only for the purpose of allowing for distinction between the nouns that they modify from one another, and not for the purpose of describing any particular relationship between those nouns. 
     Implementations of the present technology each have at least one of the above-mentioned object and/or aspects, but do not necessarily have all of them. It should be understood that some aspects of the present technology that have resulted from attempting to attain the above-mentioned object may not satisfy this object and/or may satisfy other objects not specifically recited herein. 
     Additional and/or alternative features, aspects and advantages of implementations of the present technology will become apparent from the following description, the accompanying drawings and the appended claims. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       For a better understanding of the present technology, as well as other aspects and further features thereof, reference is made to the following description which is to be used in conjunction with the accompanying drawings, where: 
         FIG. 1  is a diagram of a computing environment in accordance with an embodiment of the present technology; 
         FIG. 2  is a diagram of a first networked computing environment suitable for use with some implementations of the present technology; 
         FIG. 3  is a diagram of a second networked computing environment suitable for use with some implementations of the present technology; 
         FIG. 4  is a first diagram of steps establishing an augmented communication channel in accordance with an embodiment of the present technology; 
         FIG. 5  is a diagram of an alternative networked computing environment suitable for use with some implementations of the present technology; 
         FIG. 6  is a second diagram of steps establishing an augmented communication channel in accordance with another embodiment of the present technology; 
         FIG. 7  is a diagram illustrating a flowchart illustrating a first computer-implemented method implementing embodiments of the present technology; and 
         FIG. 8  is a diagram illustrating a flowchart illustrating a second computer-implemented method implementing embodiments of the present technology. 
     
    
    
     It should also be noted that, unless otherwise explicitly specified herein, the drawings are not to scale. 
     DETAILED DESCRIPTION 
     The examples and conditional language recited herein are principally intended to aid the reader in understanding the principles of the present technology and not to limit its scope to such specifically recited examples and conditions. It will be appreciated that those skilled in the art may devise various arrangements which, although not explicitly described or shown herein, nonetheless embody the principles of the present technology and are included within its spirit and scope. 
     Furthermore, as an aid to understanding, the following description may describe relatively simplified implementations of the present technology. As persons skilled in the art would understand, various implementations of the present technology may be of a greater complexity. 
     In some cases, what are believed to be helpful examples of modifications to the present technology may also be set forth. This is done merely as an aid to understanding, and, again, not to define the scope or set forth the bounds of the present technology. These modifications are not an exhaustive list, and a person skilled in the art may make other modifications while nonetheless remaining within the scope of the present technology. Further, where no examples of modifications have been set forth, it should not be interpreted that no modifications are possible and/or that what is described is the sole manner of implementing that element of the present technology. 
     Moreover, all statements herein reciting principles, aspects, and implementations of the present technology, as well as specific examples thereof, are intended to encompass both structural and functional equivalents thereof, whether they are currently known or developed in the future. Thus, for example, it will be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative circuitry embodying the principles of the present technology. Similarly, it will be appreciated that any flowcharts, flow diagrams, state transition diagrams, pseudo-code, and the like represent various processes which may be substantially represented in computer-readable media and so executed by a computer or processor, whether or not such computer or processor is explicitly shown. 
     The functions of the various elements shown in the figures, including any functional block labeled as a “processor”, an “application”, an “IVR application”, an “interactive voice response (ISR)”, an “automatic attendant (AA)”, an “application programming interface (API)”, a “short message service (SMS) gateway”, a “native telephonic application”, a “telecommunication product (also referred to as PBX)” may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. In some embodiments of the present technology, the processor may be a general purpose processor, such as a central processing unit (CPU) or a processor dedicated to a specific purpose, such as a digital signal processor (DSP). Moreover, explicit use of the term a “processor”, an “application”, an “IVR application”, an “interactive voice response (ISR)”, an “automatic attendant (AA)”, an “application programming interface (API)”, a “short message service (SMS) gateway”, a “native telephonic application”, a “telecommunication product (also referred to as PBX)” should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, application specific integrated circuit (ASIC), field programmable gate array (FPGA), read-only memory (ROM) for storing software, random access memory (RAM), and non-volatile storage. Other hardware, conventional and/or custom, may also be included. 
     Software modules, or simply modules which are implied to be software, may be represented herein as any combination of flowchart elements or other elements indicating performance of process steps and/or textual description. Such modules may be executed by hardware that is expressly or implicitly shown. Moreover, it should be understood that module may include for example, but without being limitative, computer program logic, computer program instructions, software, stack, firmware, hardware circuitry or a combination thereof which provides the required capabilities. 
     With these fundamentals in place, we will now consider some non-limiting examples to illustrate various implementations of aspects of the present technology. 
       FIG. 1  illustrates a diagram of a computing environment  100  in accordance with an embodiment of the present technology is shown. In some embodiments, the computing environment  100  may be implemented by any of the “electronic device”, the “interactive voice response (IVR) system”, the “automatic attendant (AA) system”, the “short message service (SMS) gateway” and/or the “PBX” illustrated in  FIG. 2 to 5 . In some embodiments, the computing environment  100  comprises various hardware components including one or more single or multi-core processors collectively represented by a processor  110 , a solid-state drive  120 , a random access memory  130  and an input/output interface  150 . The computing environment  100  may be a computer specifically designed for communications solutions and services such as, but not limited to, telecommunications, networking and/or cloud solutions. In some alternative embodiments, the computing environment  100  may be a generic computer system. The computing environment  100  may be an “electronic device”, an “interactive voice response (IVR) system”, an “automatic attendant (AA) system”, a “short message service (SMS) gateway”, a “network device”, a “telecommunication product”, a “PBX”, a “network system”, an “operation system”, a “system”, a “computer-based system” and/or any combination thereof appropriate to the relevant task at hand. 
     In some embodiments, the computing environment  100  may also be a sub-system of one of the above-listed systems. In some other embodiments, the computing environment  100  may be an “off the shelf” generic computer system. In some embodiments, the computing environment  100  may also be distributed amongst multiple systems. The computing environment  100  may also be specifically dedicated to the implementation of the present technology. As a person in the art of the present technology may appreciate, multiple variations as to how the computing environment  100  is implemented may be envisioned without departing from the scope of the present technology. 
     Communication between the various components of the computing environment  100  may be enabled by one or more internal and/or external buses  160  (e.g. a PCI bus, universal serial bus, IEEE 1394 “Firewire” bus, SCSI bus, Serial-ATA bus, ARINC bus, etc.), to which the various hardware components are electronically coupled. 
     The input/output interface  150  may allow enabling networking capabilities such as wire or wireless access. As an example, the input/output interface  150  may comprise a networking interface such as, but not limited to, a network port, a network socket, a network interface controller and the like. Multiple examples of how the networking interface may be implemented will become apparent to the person skilled in the art of the present technology. For example, but without being limitative, the networking interface may implement specific physical layer and data link layer standard such as Ethernet, Fibre Channel, Wi-Fi or Token Ring. The specific physical layer and the data link layer may provide a base for a full network protocol stack, allowing communication among small groups of computers on the same local area network (LAN) and large-scale network communications through routable protocols, such as Internet Protocol (IP). 
     According to implementations of the present technology, the solid-state drive  120  stores program instructions suitable for being loaded into the random access memory  130  and executed by the processor  110  for establishing an augmented communication channel between an IVR system and an electronic device associated with a user. For example, the program instructions may be part of a library or an application. 
     In  FIG. 2 , there is shown a networked computing environment  200  suitable for use with some implementations of the present technology. The networked computing environment  200  comprises an electronic device  202  associated with a user  210 , an interactive voice response (IVR) system  204 , an automatic attendant (AA) system  206  and a telecommunication product (PBX)  260 . 
     The electronic device  202  may also be referred to as a “client device”, an “electronic device” and an “electronic device associated with a user”. The implementation of the electronic device  202  is not particularly limited. As an example, the electronic device  202  may be implemented as a personal computer (desktops, laptops, netbooks, etc.), a wireless communication device (a cell phone, a smartphone, a tablet and the like) or a connected object (a connected watch, a connected car, an augment reality device and the like). The electronic device  202  may comprise hardware and/or software and/or firmware (or a combination thereof), as it is known in the art, to execute a native telephonic application  220 , a short message service (SMS) application  230  and an application  240  (also referred to as an “IVR application”). In some embodiments, the electronic device  202  also comprises a data interface  250  which implementation may be similar to input/output interface  150  of  FIG. 1 . The native telephonic application  220  may be an application allowing the electronic device  202  to conduct phone calls over conventional audio channels such as, for example, but without being limitative, over public land mobile network (PLMN) and/or public switched telephone network (PSTN). In some alternative embodiment, the native telephonic application  220  may also be able to conduct voice over IP (VoIP) phone calls. 
     The SMS application  230  may be an application allowing the electronic device  202  to send and receive text messages as it may become apparent to the person skilled in the art of the present technology. 
     Even though reference is made to a native application for the native telephonic application  220 , it should be understood that both the native telephonic application  220  and the SMS application  230  does not necessary have to be built-in the electronic device  202 . To the contrary, the native telephonic application  220  and the SMS application  230  may be third-party applications which may been installed on the electronic device  202  at any given time. 
     In some embodiments, the application  240  may be a dedicated application associated with one or more service providers and therefore associated with one or more IVR systems. As an example, but without being limitative, the application  240  may be associated with a bank and/or an insurance company. The application  240  may be configured to connect to IVR systems of the one or more service providers. In other examples, but still without being limitative, the application  240  may be a public cloud app such as Rainbow™ from ALE International or Slack™ from Slack technologies. In the embodiment illustrated at  FIG. 2 , the application  240  may be connected to the IVR system  204  through a cloud communication platform (not shown). In such embodiments, the application  240  is in direct data communication with the IVR system  204 , for example, via a data channel  214 . In the illustrated embodiments, the IVR system  204  is associated with the AA system  206  which comprises an application programming interface (API)  208 . In this embodiment, the application  204  may directly interact with the IVR system  204  and/or the AA system  206  via the API  208 . In some embodiments, the application  240  is configured so as to allow the user  210  to initiate phone calls directly from the application  240  without having to go through the native telephonic application  220 . 
     The IVR system  204  may be a conventional IVR system which may be accessed via, for example, but without being limitative, a PLMN network and/or a PSTN network. Generally speaking, the purpose of the IVR system  204  is to allow one or more users to interact with a computer (i.e., the IVR system) through the use of voice and/or DTMF codes (also referred to as DTMF tones) input via a keypad. In some embodiments, an electronic device connects to the IVR system  204  by sending an audio call request (e.g., by initiating a phone call over a PLMN network and/or a PSTN network). Once an electronic device (e.g., the electronic device  202 ) has connected to the IVR system  204 , via an audio channel (e.g., the audio channel  212 ), the IVR system  204  may respond with pre-recorded and/or dynamically generated audio messages to further direct users on how to proceed. The IVR system  204  is configured so as to present a menu of options and prompt the user to enter a selection (e.g., via a keypad associated with the electronic device). The menu of options may comprise a tree structure meaning that once the user has input a first selection, the user may be directed toward a selected node of the menu. The IVR system  204  may then present a sub-menu of options available for the selected node of the menu. As the person skilled in the art of the present technology may appreciate, the structure of the tree, including the number of nodes, the number of leafs and/or the number of levels may vary and is therefore not limitative. In some embodiments, the structure of the menu may be referred to as a menu navigation structure. The menu navigation structure may be embodied by tree data that contains the relevant information to partially or completely define the structure of the tree and therefore the structure of the menu. In some embodiments, the tree data may be relied upon to generate a visual representation of the menu, for example via one or more graphical user interface (GUI) components. In some embodiments, a position of the user in the structure of the tree (i.e., the structure of the menu) may be associated with the tree data so that it becomes possible to identify at which node and/or leaf of the tree the user is at a given time. For example, the IVR system  204  may be able to determine a position of a user in the menu navigation structure at any given time. Also, once the position of the user has been modified, for example, after the user  210  has input a new selection to get to a sub-menu and/or to the information she/he is looking for, the IVR system  204  may generate an updated position of the user with respect to the IVR tree data (i.e., the data modeling the structure of the menu). 
     Even though reference is made to a menu of options, it should be understood that the term “options” encompass multiple choices that the user may undertake to make. For example, an option may be to access information, a sub-menu and/or reach a particular responder. The term “option” should therefore not be deemed as being limitative. Similarly, the term “selection” encompass a given choice made by the user from multiple choices available to her/him. The term “selection” should therefore not be deemed as being limitative. 
     As it may be appreciated by the person skilled in the art of the present technology, the IVR system  204  may be used for mobile purchases, banking services, retail orders, travel information, weather conditions and so on. Implementation details of the regular functions of the IVR system  204  will become apparent to the person skilled in the art of the present technology and will therefore not be further discussed. 
     In some embodiments, the IVR system  204  comprises and automatic attendant system such as the AA system  206 . In other embodiments, the IVR system  204  may not comprise an AA system per se but rather may be associated with an AA system, for example by being connected to an AA system. The AA system  206  may be exclusively associated with a given IVR system  204  but not necessarily. Multiple variations may therefore be envisioned. In some embodiments, the IVR system  204  and the AA system  206  each manages distinct functions. For example, but without being limitative, the IVR system  204  receives the incoming audio call requests, process the audio call requests and/or return a result based on a selection received from users whereas the AA system  206  routes audio calls (i.e., routes audio channel so as to connect electronic devices and terminals/attendants). 
     As illustrated in  FIG. 2 , the IVR system  204  and the AA system  206  are connected via channels A and B which may be dedicated channels. Other embodiments may also be envisioned and will become apparent to the person skilled in the art of the present technology. As for the IVR system  204 , implementation details of the regular functions will become apparent to the person skilled in the art of the present technology and will therefore not be further discussed. 
     The AA system  206  also comprises an application programming interface (API)  208 . In some embodiments, the API  208  specifies the interface between the electronic device  202  and the AA system  206  thereby allowing the application  240  and/or a web browser running on the electronic device  202  to access the AA system  206  and/or the IVR system  204  via the data channel  214 . In some other embodiments, the API  208  may also be hosted by the IVR system  204 . 
     In the embodiment illustrated at  FIG. 2 , the IVR system  204  is also connected to the telecommunication product (PBX)  260 . The PBX  260  may be implemented in various ways, such as, for example, but without being limitative, network equipment allowing routing of channels from the IVR system  204  and/or the AA system  206  to terminals  262 ,  264  and  266 . In some embodiments, each one of the terminals  262 ,  264  and  266  may be associated with a distinct responder. 
     Now that the various components of the networked computing environment  200  of  FIG. 2  have been described, we shall not proceed to the description of an exemplary use case of the networked computing environment  200 . 
     A user call may be initiated by the user  210  either from the native telephonic application  220  or the application  240 . The application  220  detects that an audio phone call request has been initiated and/or that the audio channel  212  has been established with the IVR system  204  and/or that the responder of the call is the IVR system  204 . In this scenario, the application  220  is connected to the API  208  via the data channel  214 . Upon detecting that the audio phone call request has been initiated and/or that the audio channel  212  has been established with the IVR system  204  and/or that the responder of the call is the IVR system  204 , the application  220  requests, from the API  208 , IVR tree data representative of a menu navigation structure associated with the IVR system  204  (i.e., data allowing the application  220  to partially or completely generate a representation of the menu of options that the IVR system  204  provides to the user  210  via the audio channel  212 ). In some embodiments, the IVR tree data also allows to determine a position of the user with respect to the menu navigation structure (e.g., to determine if the user  210  is at a root of the menu, in a sub-menu . . . ). In some embodiments, the IVR tree data transmitted via the data channel  214  may be formatted in accordance with a defined format and/or protocol (e.g., html, xml, json . . . ). In some embodiments, the IVR tree data is text data which may be augmented with GUI components accessible from a memory of the electronic device  202  and/or via the API  208 . The application  240  may, based on the IVR tree data, generate a GUI component representing the menu navigation structure or a portion of the menu navigation structure (e.g., a sub-menu wherein the user  210  is located at a given time). As a result, the user  210  may directly select, by interacting with the GUI component, an option (a sub-menu, an information the user is looking for, an attendant is trying to reach . . . ) without having to navigate through the whole tree representing the menu (i.e., without having to go through all the nodes that link the root of the menu to a given leaf). As a result, the user  210  may bypass the process of having to provide a selection for each one of the nodes that are located between the root of the menu and the leaf associated with the option the user  210  wishes to select. In some embodiments, the user  210  may also navigate back to another node and/or leaf without having to hang up and reconnect to the IVR system  204 . In some embodiments, the user  210  may also submit information to the IVR system  204  from an interface associated with the application  240 . For example, but without being limitative, the user  210  may have the IVR system  204  complete an action (e.g., setting up an appointment, buying a product . . . ). 
     The selection relating to the IVR tree data may be made, for example, but without being limitative, through a click, a touch event on a touch screen of the electronic device  202 . The selection may be made on a keypad in which case a DTMF code/tone is generated and transmitted via the audio channel  212  to the IVR system  204 . The selection may also be made by the user  210  pronouncing a word or a sound (e.g., “option 1”, “call Jean-Claude Dus” . . . ) which is then transmitted via the audio channel  212  to the IVR system  204  which, in turn, relies on a speech-to-text algorithm to process the selection. The IVR system  204  may communicate with the AA system  206  via the channel B so that the AA system  206  may initiate an update which is then transmitted via the API  208  and the data channel  214  to the electronic device  202 . 
     The selection may also be made by the user  210  interacting with the application  210  (e.g., a clickable visual representation of the menu navigation or a portion thereof) in which case the selection is transmitted via the data channel  214  to the IVR system  204 . The IVR system  204  then processes the selection and update a position of the user  210  with respect to the menu navigation structure. In some embodiments, the AA system  208  receives the selection via the API  208  and then update the IVR system  204  through the channel A. In some embodiments, the AA system  208  may also cause the call established between the electronic device  202  and the IVR system  204  to be routed to one of the terminals  262 ,  264  or  266  via the PBX  260 . In some embodiments, if the selection has been received via the audio channel  212  then the updated position is transmitted to the application  240  via the data channel  214 . Conversely, if the selection has been received via the data channel  214  then the updated position is transmitted via the audio channel  212 , for example, via an audio message. As a result, both the application  240  and the audio channel  212  are up-to-date and the user  210  can keep interacting with the IVR system  204  via either the audio channel  212  or the data channel  214 . The communication channel between the user  210  and the IVR system  204  may therefore be deemed as being an augmented communication channel as the user  210  may interact with the IVR system  204  via either an audio channel or a data channel while maintaining both the audio channel and the data channel up-to-date. The user  210  may therefore starts interacting with the IVR system  204  via the audio channel then switch to interacting with the IVR system  204  via the data channel and then back to the audio channel. Multiple use cases may therefore be envisioned and will become apparent to the person skilled in the art of the present technology. 
     Turning now to  FIG. 3 , an alternative embodiment to the networked computing environment  200  is shown. The alternative embodiment is referred to as a networked computing environment  300  which is also suitable for use with some implementations of the present technology. As for the networked computing environment  200 , the networked computing environment  300  comprises an electronic device  202  associated with a user  210 , an interactive voice response (IVR) system  204 , an automatic attendant (AA) system  206  and a telecommunication product (PBX)  260  connected to terminals  262 ,  264  and  266 . The networked computing environment  300  differs from the networked computing environment  200  in that it also comprises a short messaging service (SMS) gateway  302 . 
     As it may be appreciated the SMS gateway  302  is reachable (e.g., via a network) by the IVR system  204 . The SMS gateway  302  may also communicate with the electronic device  202  for example, but without being limitative, by sending SMS messages (e.g., a SMS message  304 ) to the electronic device  202 . The SMS messages received by the electronic device  202  may be presented to the user  210  via the SMS application  230 . Implementation details of the regular functions of the SMS gateway  302  will become apparent to the person skilled in the art of the present technology and will therefore not be further discussed. 
     As it may be appreciated, a browser  242  running on the electronic device  202  is also illustrated to exemplify embodiments of the present technology. It should be understood that the browser  242  can be operated in replacement of or in addition to the application  240  illustrated in  FIG. 2 . The browser  242  may be a conventional web browser or a dedicated web browser. Implementation details of the regular functions of the browser  242  will become apparent to the person skilled in the art of the present technology and will therefore not be further discussed. 
     A usage scenario of the networked computing environment  300  will now be presented in connection with  FIG. 4 . As it may be appreciated, no data channel may be pre-established between the electronic device  202  and the IVR system  204  as the application  240  (which is pre-configured to connect to the API  208 ) may not be running on the electronic device  202  (e.g., the application  240  has not been installed on the electronic device  202 , the IVR system  204  is not associated with a dedicated application, the application  240  is not accessible . . . ). As a result, such embodiments require a data channel to be established between the IVR system  204  and the electronic device  202 . It should be understood that establishing a connection between the IVR system  204  and the electronic device  202  should be understood as encompassing establishing a data connection between the IVR system  204  and the electronic device  202  via the AA system  206 . 
     In the illustrated embodiment, the user  210  initiates a call to the IVR system  204  (e.g., by sending an audio call request) and the audio channel  212  between the electronic device  230  and the IVR system  204  is established. When the call becomes active (i.e., the audio channel  212  is established), the IVR system  204  determines an originator identifier identifying the user  210 . As an example, but without being limitative, the originator identifier may be a phone number associated with the electronic device  202 . In some embodiments, the IVR system  204  determines the originator identifier by relying on Calling Line Identification (CLI) services. Other mechanisms may be relied upon to complete the determination may also be envisioned. In some embodiments, the IVR system  204  requests to the AA system  206 , via the channel A, to generate a uniform resource locator (URL) associated with the originator identifier. In some embodiments, the URL may be a one-time URL. As an example, but without being limitative, the URL may follow the following format (https://aa_tree.ale-international.com/phone_id&amp;date). The URL is then transmitted by the AA system  206  to the IVR system  204  which, in turn, sends it to the SMS gateway  302 . The SMS gateway then generates a SMS message comprising the URL. The SMS message is then sent by the SMS gateway  302  to the electronic device  202 . In some embodiments, the IVR system  204  may also generate an audio communication via the audio channel  212  to warm the user  210  that an SMS message has been sent. The user  210  may then open the SMS message, for example, via the SMS application  230  and click on the URL contained in the SMS message. Upon clicking on the URL, the browser  242  then relies on the data interface  250  to establish the data channel  214  between the electronic device  202  and the IVR system  204 . The IVR system  204  may then proceed to the sending of IVR tree data so that a menu structure (or a portion thereof) which may be presented to the user  210  via the browser  242 . The user  210  may then interact with the IVR system  204  and/or the AA system  206  in a similar fashion than previously described in connection with the embodiment shown in  FIG. 2 . As an example, but without being limitative, the browser  242  may interact with the IVR system  204  by sending an receiving HTTP requests comprising IVR tree data. 
     As described in the above-paragraph, the present technology may rely on the SMS technology (or an equivalent thereof) to escalade from an audio channel to a data channel thereby establishing an augmented communication channel between the IVR system  204  and the electronic device  202 . Even though the example of the networked computing environment  300  relies on SMS technology, it should be understood that this aspect is not limitative and that other technologies may equally be relied upon without departing from the scope of the present technology. As an example, but without being limitative, mobile push service technology (such as the push technology from Apple Inc.) may equally be used. 
     Turning now to  FIG. 5 , an example of an alternative embodiment  500  relied upon to escalade from an audio channel to a data channel is depicted. In the illustrated embodiment, the present technology relies on existing data connection maintained by a third party  506 . In some embodiments, such third party  506  may be a social network such as, but not limited to, Facebook from Facebook Inc. In some embodiments, the third party  506  may operate an IVR application  508  (e.g., a gateway) which may interact with the IVR system  204  via an IVR adapter  510  associated with the IVR system  204 . The IVR application  508  may allow data (such as an URL generated based on an originator identifier) to be transmitted from the IVR system  204  to a third party application  502  (e.g., a Facebook app) running on the electronic device  202 . In some embodiments, the third party application  502  may support text-based communications. 
     In some embodiments, the originator identifier may be relied upon by the IVR system  204  to send a request to the third party  506  and identify a user of the third party service based on the originator identifier (e.g., identify the user associated with the electronic device  202 ). The third party  506  may then relies on its own API to establish a data channel with the third party application  502  running on the electronic device  202 . The data channel may support text, widget and/or graphic elements to represent IVR tree data. In some alternative embodiments, the third party  506  may also offer access to its services via a regular browser (such as the browser  242 ). In such embodiments, the data channel may be established between the third party  506  and the browser running on the electronic device  202 . In such embodiment, an URL generated based on an originator identifier may be transmitted by the third party  506  to the electronic device  202 . A data channel may then be established in a similar way as previously described in connection with the description of  FIG. 3 . 
     Turning now to  FIG. 6 , an example of how an IVR tree may be synchronized is provided. The example starts with an assumption that the user  210  is positioned with respect to the menu navigation structure at a position “n” (which may also be referred to as a state “n”). The user  210  presses “1” on the keypad associated with the electronic device  202 . In response, the native telephonic application  220  generates a DMTF code/tone corresponding to “1” which is sent via the audio channel  212  to the IVR system  204 . The DMTF code/tone is decoded by the IVR system  204  which then indicates to the AA system  206  that the user  210  has selected “1”. The AA system  206  generates an updated position of the user  210  with respect to the menu navigation structure (e.g., evolves the menu navigation structure at a position “n+1”). A webpage representing the menu navigation structure and hosted at a website  502  is then updated accordingly. In some embodiments, this update (also referred to as an “updated position”) may result in a new arrangement of buttons and information displayed at the browser  242 . The updated position may be sent to the browser  242  by sending HTTP chunks embedded in the webpage and/or information pushed to the browser  242  using a web socket protocol. Other variations may also be envisioned and will become apparent to the person skilled in the art of the present technology. 
     The next step shown in  FIG. 6  illustrates an alternative interaction between the user  210  and the IVR system  204 . The user  210  generates a user selection relating to the menu navigation structure by interacting with the webpage presented in the application  240  which, in turn, triggers an audio message played to the user  210  via the audio channel  212 . In the illustrated example of  FIG. 6 , the selection ends by causing the PBX  260  to route the audio call from the IVR system  204  to an attendant (e.g., a chosen assistant) associated with one of the terminals  262 ,  264  and  266 . 
     Turning now to  FIG. 7 , a flowchart illustrating a computer-implemented method  700  of establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user is illustrated. In some embodiments, the computer-implemented method  700  may be (completely or partially) implemented on a computing environment similar to the computing environment  100 ,  200 ,  300 . In some embodiments, the method  700  may be (completely or partially) implemented on an IVR system comprising an AA system such as, but not limited to the IVR system  204  and the AA system  206 . 
     The method  700  starts at step  702  by receiving, from the electronic device, an audio call request. The method  700  then proceeds with step  704  by establishing an audio channel between the IVR system and the electronic device. At a step  706 , the method  700  establishes a data channel between the IVR system and the electronic device. At a step  708 , the method  700  transmits, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure. At a step  710 , the method  700  proceeds to receiving, via one of the audio channel and the data channel, a user selection relating to the IVR tree data. At a step  712 , the method  700  proceeds to generating an updated position of the user with respect to the menu navigation structure based on the user selection. At a step  714 , the method  700  proceeds to transmitting, via the other one of the audio channel and the data channel, to the electronic device associated with the user, the updated position. 
     In some embodiments, the IVR system is associated with an automatic attendant (AA) system. In some embodiments, the user selection relating to the IVR tree data comprises at least one of a dual-tone multi-frequency (DTMF) tone and a selection from a graphical user interface (GUI) displayed on the electronic device. 
     In some embodiments, the method  700  further comprises 
     routing the audio channel so as to connect the electronic device to a selected terminal. 
     In some embodiments, prior to establishing a data channel between the IVR system and the electronic device, the method  700  comprises receiving, by an application programming interface (API) associated with the AA system, a request to provide the IVR tree data representative of the navigation structure associated with the IVR system. 
     In some embodiments, the IVR system is associated with a short message service (SMS) gateway. 
     In some embodiments, the method  700 , after receiving the audio call request, further comprises: 
     determining an originator identifier identifying the user; 
     generating a uniform resource locator (URL) based on the originator identifier; and 
     sending, via the SMS gateway, to the electronic device, a SMS message comprising the URL. 
     In some embodiments, the method  700  further comprises transmitting, via the audio channel, to the electronic device, an indication that the SMS message has been sent. 
     In some embodiments, the method  700 , after receiving the audio call request, further comprises determining an originator identifier identifying the user; and wherein establishing the data channel between the IVR system and the electronic device is based on the originator identifier. 
     Turning now to  FIG. 8 , a flowchart illustrating a computer-implemented method  800  of establishing an augmented communication channel between an interactive voice response (IVR) system and an electronic device associated with a user is illustrated. In some embodiments, the computer-implemented method  800  may be (completely or partially) implemented on a computing environment similar to the computing environment  100 ,  200 ,  300 . In some embodiments, the method  800  may be (completely or partially) implemented on an electronic device associated with a user such as, but not limited to the electronic device  202 . 
     The method  800  starts at a step  802  by sending, by the electronic device, to the IVR system, an audio call request. Then, at a step  804 , the method  800  executes establishing an audio channel between the IVR system and the electronic device. At a step  806 , the method  800  proceeds to establishing a data channel between the IVR system and the electronic device. The method  800  proceeds to a step  808  by receiving, via the data channel, IVR tree data representative of a menu navigation structure associated with the IVR system, the IVR tree data allowing association of a position of the user with respect to the menu navigation structure. At a step  810 , the method  800  proceeds to sending, via one of the audio channel and the data channel, a user selection relating to the IVR tree data. At a step  812 , the method  800  proceeds to receiving, via the other one of the audio channel and the data channel, an updated position of the user with respect to the menu navigation structure based on the user selection. 
     In some embodiments, the IVR system is associated with an automatic attendant (AA) system. 
     In some embodiments, prior to establishing a data channel between the IVR system and the electronic device, the method  800  comprises sending, to an application programming interface (API) associated with the AA system, a request to provide IVR tree data representative of the navigation structure associated with the IVR system. 
     In some embodiments, the electronic device executes an IVR application configured to connect to the API and wherein the application comprises instructions to: 
     detect that the audio call request has been sent; and 
     upon detecting that the audio call request has been sent, trigger the sending, via the data channel, to the API associated with the AA system, of the request to provide the IVR tree data. 
     In some embodiments, detecting that the audio call request has been sent comprises detecting that the audio call request has been initiated from one of the application and a native telephonic application running on the electronic device. 
     In some embodiments, the user selection relating to the IVR tree data comprises at least one of a dual-tone multi-frequency (DTMF) tone and a selection from a graphical user interface (GUI) displayed on the electronic device. 
     In some embodiments, the method  800  further comprises receiving, by the electronic device, an SMS message comprising a uniform resource locator (URL) based on an originator identifier identifying the user. 
     In some embodiments, upon clicking on the URL, the electronic device connects to the API via the data channel. 
     While the above-described implementations have been described and shown with reference to particular steps performed in a particular order, it will be understood that these steps may be combined, sub-divided, or re-ordered without departing from the teachings of the present technology. At least some of the steps may be executed in parallel or in series. Accordingly, the order and grouping of the steps is not a limitation of the present technology. 
     It should be expressly understood that not all technical effects mentioned herein need to be enjoyed in each and every embodiment of the present technology. 
     Modifications and improvements to the above-described implementations of the present technology may become apparent to those skilled in the art. The foregoing description is intended to be exemplary rather than limiting. The scope of the present technology is therefore intended to be limited solely by the scope of the appended claims.