Widespread availability of mobile devices has enabled service professionals to work fluidly inside and outside of the office environment. Oftentimes, service professionals are compensated based on the amount of time spent working on behalf of a client. Mobile devices have enabled service professionals to make more efficient use of their time.
Many aspects of the present disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.
Mobile devices, such as smartphones, have enabled service professionals to fluidly communicate inside and outside of the office with their clients. Oftentimes, service professionals are compensated based on the amount of time they spend on behalf of a client. With this in mind, service professionals can desire to track the amount of time spent working on projects for various clients. This desire can be challenging when service professionals are using their mobile devices to work for various clients while at different locations. For example, service professionals may desire to track the length of time spent on particular phone calls on behalf of a client.
The embodiments of the present disclosure relate to improved user interfaces that can be rendered to capture various communications metrics being conducted on a mobile device. In some cases, the improved user interfaces can be rendered before, during, or after phone calls to control which communications metrics and data are captured. For example, the embodiments can enable a user to track metrics for text messages and phone calls conducted for a particular client account, record phone calls, generate transcripts of the phone calls, add text or voice annotations with respect to particular phone calls, and facilitate an automation of billing invoices generated based on the text message and phone call metrics. These features can be controlled by way of various user interfaces that are displayed on a mobile device before, during, and after phone calls.
Additionally, the embodiments improve the efficiency of capturing communications metrics and communications data on mobile devices. Particularly, the embodiments do not require invoking a separate dedicated mobile application because the embodiments are related to improved user interfaces integrated with existing phone call functionality. Thus, these improved user interfaces save a user from having to go to separate dedicated applications before, during, or after phone calls. For example, these embodiments can enable a user to track phone call metrics without having to navigate through multiple user interfaces. Thus, these embodiments are directed to an improvement in the functioning of mobile devices, particularly those with small screens. Further, in some implementations, the embodiments modify existing phone user interfaces used in mobile devices in order to enable a user additional functionality for tracking phone call metrics data and capturing audio recordings and notes during the phone call. References will now be made in detail to the description of the embodiments as illustrated in the drawings.
With reference to
The computing device 103 may comprise, for example, a server computer or any other system providing computing capability. Alternatively, the computing device 103 may employ a plurality of computing devices that may be arranged, for example, in one or more server banks or computer banks or other arrangements. Such computing devices may be located in a single installation or may be distributed among many different geographical locations. For example, the computing device 103 may include a plurality of computing devices that together may comprise a hosted computing resource, a grid computing resource and/or any other distributed computing arrangement. In some cases, the computing device 103 may correspond to an elastic computing resource where the allotted capacity of processing, network, storage, or other computing-related resources may vary over time.
Various applications and/or other functionality may be executed in the computing device 103 according to various embodiments. Also, various data is stored in a data store 112 that is accessible to the computing device 103. The data store 112 may be representative of a plurality of data stores 112 as can be appreciated. The data stored in the data store 112, for example, is associated with the operation of the various applications and/or functional entities described below.
The components executed on the computing device 103, for example, include a metrics tracking application 115, a network interface application 118, a third party integration application 121, and other applications, services, processes, systems, engines, or functionality not discussed in detail herein. The metrics tracking application 115 is executed to store and share metrics related to phone calls, text messages, and other suitable forms of communications that are conducted the client device 106.
The network interface application 118 is executed to provide a network page interface over the network 109 to various devices. The network page interface can render a user interface that enables a user to operate various features similar to a client tracking application 124 executed on the client device 106. For example, the network page interface can enable a user to view and/or extract the phone call metrics 127, text messages metrics 130, audio recordings, and other suitable data stored in the computing device 103 for the client device 106.
The third party integration application 121 is executed to integrate the phone call metrics, text messaging metrics, or other suitable data generated by the client device 106 with third party programs. For example, the phone call metrics 127 and text messaging metrics 130 can be transmitted in a file format that is usable by a third-party billing application to automatically generate billing invoices based on the metrics data. As another example, the audio recordings of phone conversations, audio recordings of voice memos, notes associated with the various recordings and phone calls, or other suitable data can be transmitted to a third party document management program to be stored. Particularly, a service professional may use a document management program to store and access various files, such as documents, audio recordings, or videos, for a particular client. The third party integration application 121 can facilitate the transfer of the data generated on the client device 106 to an appropriate client account for the user of the client device 106.
The data stored in the data store 112 includes, for example, user accounts data 125, phone call metrics 127, text messaging metrics 130, audio recordings 133, and potentially other data. The user account 125 can represent user profile information, such as name, password, device information (e.g. client device 106), a billing rate of the user, and other suitable data related to a user.
The phone call metrics 127 can include data generated with respect to the phone calls conducted on the client device 106. Some non-limiting examples of the phone call metrics 127 can include characteristics related to individual phone calls, such as a call duration, a call date, a contact name, a phone number, a classification of the phone call, a billing fee, or other suitable phone call data. For example, the phone metrics data 127 may include a call log of phone calls conducted over a period of time. For example, an accountant can classify each phone call as billable or non-billable.
The text messaging metrics 130 can include data generated to track the text messages sent and received on the client device 106. As non-limiting examples, the characters for the text messages can be counted, and the character count can be used for generating billing invoices according to fee-per-character rate. The text messages can be associated with a particular client account of a user account. Additionally, the text messages metrics data 130 can be stored in a third party document management program. For instance, a user, such as a service professional, can have a text messages conversation with a client. The client device 106 can transmit the text message conversation to a third party document management program for storage, and the character count for the text message conversation can be used for generating a billing invoice that can be sent to the client.
The audio recordings 133 can include data related to voice memos captured by the client device, audio recordings of telephone conversations, corresponding transcripts of the audio recordings, and other suitable data related to the audio recordings captured by the client device 106. In some embodiments, upon receiving user input from one of the user interfaces, the client tracking application 124 can generate a transcript of the audio recordings of telephone conversations, the voice memos, and other audio recordings stored on the client device 106. The transcripts can be rendered for display on the client device 106. The transcripts can also be transmitted to the computing device 103 for storage in the data store 112.
The client device106 is representative of a plurality of client devices that may be coupled to the network 109. The client device 106 may comprise, for example, a processor-based system such as a computer system. Such a computer system may be embodied in the form of a desktop computer, a laptop computer, personal digital assistants, cellular telephones, smartphones, set-top boxes, music players, web pads, tablet computer systems, game consoles, electronic book readers, or other devices with like capability. The client device 106 may also include a display 136. The display 136 may comprise, for example, one or more devices such as liquid crystal display (LCD) displays, gas plasma-based flat panel displays, organic light emitting diode (OLED) displays, electrophoretic ink (E ink) displays, LCD projectors, or other types of display devices, etc. The client device 106 may also comprise a transceiver 139 that is used for voice and data communications with each other devices. The transceiver 139 can be used to manage voice communication sessions and data communication sessions contemptuously.
The client device 106 may be configured to execute various applications such as an operating system 142, a client tracking application 124, a client application 144, and/or other applications. The operating system 142 can be executed to manage the operations of other applications executed on the client device 106.
The client application 144 may be executed in the client device 106, for example, to access network content served up by the computing device 103 and/or other servers, thereby rendering a user interface on the display 136. To this end, the client application 144 may comprise, for example, a browser, a dedicated application, a network page, an application screen, etc. The client device 106 may be configured to execute other applications, for example, email applications, social networking applications, word processors, spreadsheets, and/or other applications.
The client tracking application 124 can be executed to render user interfaces for controlling the various aspects for capturing communication metrics, such as tracking call duration, recording telephone call audio, tracking text message character counts, recording audio for voice memos, or other suitable communications data conducted on the client device 106. The client tracking application 124 can also communicate data from the data store 145 to the metric tracking application 115 for storage in the computing device 103.
The data stored in the data store 145 of the client device 106 may include, for example, communications metrics data 148, client audio data 151, and potentially other data. The communications metrics data 148 can include data generated with respect to the phone calls and text messages conducted on the client device 106. Some non-limiting examples of the generated data can include characteristics related to individual phone calls, such as a call duration, a call date, a contact name, a phone number, a billing classification, a billing fee, or other suitable phone call data. The client audio data 151 can refer to audio recordings of phone calls conducted on the client device 106, audio for voice memos captured on the client device 106, and other suitable data.
Next, a general description of the operation of the various components of the networked environment 100 is provided. To begin, the client device 106, for example a smartphone, may be used by a service professional, such as an accountant, a consultant, a lawyer, a doctor, or other suitable service professionals that desire to track various forms of communication used working while working on behalf of their clients.
As non-limiting example, the embodiments can be used to track time spent on phone calls occurring on the client device 106 and on behalf of a client of the service professional. The tracked time can be used to facilitate the automatic generation of a billing invoice and transmission of the billing invoice to the client. In an incoming call scenario, a client may call a service professional, such as a lawyer, on their client device 106. With the client tracking application 144 executing in the background, the transceiver 139 detects an incoming call signal of the telephone call from the client's remote device. In response to detecting the incoming call, the client tracking application 124 can render an incoming call user interface, e.g.
The incoming call user interface can comprise a call tracking component that is configured to answer the telephone call and initiate the execution of a call tracking action during the telephone call. The incoming call user interface can also include an accept call component that answers that the telephone call and does not execute a tracking of metrics for the phone call.
Additionally, the incoming call user interface includes a decline call component that is configured to decline the incoming call. In this scenario, the user can manipulate the call tracking user interface component to answer the telephone call and initiate the call tracking action. Upon manipulating, e.g. “clicking”, the call tracking component, the client tracking application 124 can render a call tracking user interface, e.g.
Some non-limiting examples of the phone call metrics data 127 that can be displayed on the call tracking user interface include a real-time billing amount, a call duration, a contact identifier, a user-specified classification of the phone call (e.g. billable, non-billable, project name, etc.), and other suitable data. In some embodiments, the user-specified classification can also include a status of an account associated with the contact name or phone number. For example, the client device 106 can retrieve and display billing data related to an invoice balance owed, whether the contact is associated with a delinquent account, and other suitable billing related information.
In addition, on the client call tracking user interface, the user can manipulate user interface elements to initiate features such as recording the conversation, generating a notes user interface for inserting notes contemporaneously to the phone call taking place, or other suitable functionality. The phone call metrics data 127 and other data can be stored in association with a contact identifier, a phone number, or some other suitable identifier for other users participating on the phone call.
In another scenario, a user can desire to initiate a phone call that he/she desires to track. In some embodiments, the user can navigate to the contact name of the person they desire to call from a home user interface of the client tracking application 124, e.g.
Alternatively, the user can initiate a phone call while tracking the phone call metrics through the native phone application 143 of the client device 106. In this example, the native phone application 143 can render a contacts user interface that includes a phone number, a name, or other suitable contact information associated with a phone number. The contacts user interface can be modified to include a “client call” user interface component. Upon selecting the “client call” component, the client tracking application 124 can be invoked to initiate the phone call with the contact person and begin tracking the metrics for the phone call. In this scenario, after receiving the selection of the “client call” component, the call tracking user interface can be rendered on the client device 106.
Turning to
The Call Logs 206 can be selected by the user to render a call log user interface that display a list of client-tracked calls. The call log user interface can include a list of recent phone calls initiated and/or received on the client device 106. The call log user interface can include the user-specified classification (e.g. billable, non-billable), a call duration, a date of call, a billing fee, or other suitable call log data. The Calendar 209 can be selected by the user to render a calendar user interface. The calendar user interface can be used to track scheduled meetings such as in-person meetings, conference calls, and other suitable meetings. The Export 212 can be selected by the user to render a display for exporting, accessing, viewing, or playing the communications metrics data 148 and the client audio data 151 that has been stored on the client device 106. For example, the phone call metrics data can be exported in a comma-separated values (CSV) file format or an Excel™ file format to a third party application. In one example, the phone call metrics data can be exported to a third-party billing application in a CSV format. The third-party billing application may require data to be received in a CSV format. The third-party billing application can extract the phone call metrics 127 data and automatically generate a billing invoice for the user of the client device 106.
The Keypad 215 can be selected by the user to render a display of a phone dialer for entering a phone number for dialing. The Rate 218 can be selected for entering a billing rate of a user. The Stats icon 221 can be selected by the user to render a display of the communications metrics data 148. In some examples, the communications metrics data 148 can be displayed in a particular file format, such as Microsoft Excel™, Microsoft Word™, a comma-separated values (CSV) file format, Microsoft PowerPoint™, and other suitable file formats.
The Contacts 224 can be selected by the user to render a display of various contacts stored for the user of the client device 106. The Settings 227 can be selected by the user to render a display of various configuration settings, such as whether to show a custom screen on incoming calls, whether to show a custom screen on outgoing calls, whether to show a notes dialog screen when a call ends, and other configurations related to the client tracking application 124. The home user interface 203 for the client tracking application 124 may also include other components for generating invoices and managing text message communications.
Moving to
The client-tracking icon 239 can be a user interface component that when selected accepts the incoming phone call and initiates the tracking of the phone call metrics for the contact identifier 233. The decline call icon 242 can be a user interface component that when selected declines the incoming phone call. The accept call icon 245 can be a user interface component that when selected accepts the incoming call and does not track the phone call metrics. In other words, the accept-call icon 245 operates to accept the phone call in a normal mode.
Turning to
The contact identifier 233 can represent a contact name, phone number, or other suitable identifiers. The billing classification 251 can display an indicator for labeling the phone call. Some non-limiting examples of labels that may be displayed include billable call, non-billable call, a project name, or other suitable labels for the phone call. The billing amount 236 can indicate a real-time calculation of the billed amount owed for the present phone call. The call duration indicator 254 can display a real-time indicator of the present duration of the phone call.
The record call icon 257 can be selected during a phone call to initiate a recording of the phone call. The recorded audio file can be stored in association with the contact identifier 233 in memory. The client tracking application 124 can generate a transcript of the recorded audio file for storage in the client device 106 and/or the computing device 103. The add note icon 260 can be selected during a phone call to render another user interface for entering notes. After entering the notes, they can be stored in association with the contact or phone number of the phone call. The decline call icon 242 can be selected to terminate the phone call. In some scenarios, the call tracking user interface 248 can be rendered after the client-tracking icon 239 has been selected for an incoming call. In other scenarios, the call tracking user interface 248 can be rendered after initiating an outgoing call to a caller and the caller has accepted the call.
Moving to
In some embodiments, the non-tracking user interface 281 can include a client-tracking icon for converting the phone call to tracked phone call. In this example, the non-tracking user interface 281 can be converted to a call tracking user interface 248. In other words, a service professional may initially begin a phone call thinking that they do not want to track the metrics of the call. During the phone call, the service professional may desire to convert the present call into a call that this tracked.
Moving to
In addition, the outgoing tracking user interface 284 includes a mute icon 261, a hold call icon 262, and a speaker icon 264. The mute icon 261, when selected, can operate to disable capturing the audio input from the client device 106. The hold call icon 262 can operate to place a phone call on hold when selected. The speaker icon 264 can operate to output the phone call audio through a dedicated speaker configured for louder audio level.
Referring next to
Moving to
Moving to
In some embodiments, the export user interface 278 can be used to transmit the call logs, call recordings, or notes to a third party application in a certain file format. For example, the call logs can be exported in a CSV file format to a third-party billing application. The exported CSV file can include the contact name, the call duration, and a billing rate. The third-party billing application can then use the CSV file to automatically generate a billing invoice for the contact name. For example, after the CSV file is exported to the third-party billing application, it can generate a hyperlink for a billing invoice. In another example, the call recordings or notes can be exported to a remote networked storage system. For example, the client tracking application 124 can transmit the call recordings to a cloud document management system for storage.
Next,
Referring next to
In box 309, the client tracking application 124 can initiate the telephone call between the client device 106 and remote device. Then, in box 312, the client tracking application 124 can render the call tracking user interface 248 on the client device 106.
In box 315, the client tracking application 124 can initiate the execution of the call tracking action that generates phone call metrics data on the phone call. Some non-limiting examples of call tracking actions include tracking call log information, tracking the call duration, tracking a billed amount owed based on the call duration, recording the phone call conversation between the client device and the remote device, receiving an input for a text note, and other suitable actions.
In box 318, the client tracking application 124 can receive an indication of a termination of the phone call. Specifically, the client tracking application 124 can receive a selection of the decline call icon 242 during the phone call or the client device 106 can receive an indication that the remote device has terminated the phone call.
In box 321, the client tracking application 124 can store the phone call metrics as communications metrics data 148 in the data store 145 of the client device 106. The communications metrics data 148 can be transmitted to the computing device 103 for storage in the data store 112, where it is saved as phone call metrics 127. Audio recordings captured before, during, or after the phone call can be stored in the client audio data 151. The client tracking application 124 can then proceed to the end.
Next,
In box 353, the client tracking application 124 can initiate an outgoing phone call signal for the phone number of the remote device. Initiating the phone call can involve instructing the transceiver 139 to initiate an outgoing phone call signal with the remote device.
In box 356, the client tracking application 124 can establish the phone call between the client device and the remote device. Particularly, the phone call can be established between the client device 106 and the remote device upon an acceptance of the phone call by the remote device.
In box 359, the client tracking application 124 can initiate execution of the call tracking action for the phone call. As previously discussed, some non-limit examples of call tracking actions include tracking call log information, tracking the call duration, tracking a billed amount owed based on the call duration, recording the phone call conversation between the client device and the remote device, receiving an input for a text note, and other suitable actions. In box 362, the client tracking application 124 can render a call tracking user interface on the client device.
In box 365, the client tracking application 124 can receive an indication of a termination of the phone call. Specifically, the client tracking application 124 can receive a selection of the decline call icon 242 during the phone call or the client device 106 can receive an indication that the remote device has terminated the phone call. In box 368, the client tracking application 124 can store the phone call metrics as communications metrics data 148 in the data store 145 of the client device 106. The client tracking application 124 can proceed to the end.
With reference to
Stored in the memory 406 are both data and several components that are executable by the processor 403. In particular, stored in the memory 406 and executable by the processor 403 are list of main applications, and potentially other applications. Also stored in the memory 406 may be a data store 112 and other data. In addition, an operating system may be stored in the memory 406 and executable by the processor 403.
It is understood that there may be other applications that are stored in the memory 406 and are executable by the processor 403 as can be appreciated. Where any component discussed herein is implemented in the form of software, any one of a number of programming languages may be employed such as, for example, C, C++, C#, Objective C, Java®, JavaScript®, Perl, PHP, Visual Basic®, Python®, Ruby, Flash®, or other programming languages.
A number of software components are stored in the memory 406 and are executable by the processor 403. In this respect, the term “executable” means a program file that is in a form that can ultimately be run by the processor 403. Examples of executable programs may be, for example, a compiled program that can be translated into machine code in a format that can be loaded into a random access portion of the memory 406 and run by the processor 403, source code that may be expressed in proper format such as object code that is capable of being loaded into a random access portion of the memory 406 and executed by the processor 403, or source code that may be interpreted by another executable program to generate instructions in a random access portion of the memory 406 to be executed by the processor 403, etc. An executable program may be stored in any portion or component of the memory 406 including, for example, random access memory (RAM), read-only memory (ROM), hard drive, solid-state drive, USB flash drive, memory card, optical disc such as compact disc (CD) or digital versatile disc (DVD), floppy disk, magnetic tape, or other memory components.
The memory 406 is defined herein as including both volatile and nonvolatile memory and data storage components. Volatile components are those that do not retain data values upon loss of power. Nonvolatile components are those that retain data upon a loss of power. Thus, the memory 406 may comprise, for example, random access memory (RAM), read-only memory (ROM), hard disk drives, solid-state drives, USB flash drives, memory cards accessed via a memory card reader, floppy disks accessed via an associated floppy disk drive, optical discs accessed via an optical disc drive, magnetic tapes accessed via an appropriate tape drive, and/or other memory components, or a combination of any two or more of these memory components. In addition, the RAM may comprise, for example, static random access memory (SRAM), dynamic random access memory (DRAM), or magnetic random access memory (MRAM) and other such devices. The ROM may comprise, for example, a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other like memory device.
Also, the processor 403 may represent multiple processors 403 and/or multiple processor cores and the memory 406 may represent multiple memories 406 that operate in parallel processing circuits, respectively. In such a case, the local interface 409 may be an appropriate network that facilitates communication between any two of the multiple processors 403, between any processor 403 and any of the memories 406, or between any two of the memories 406, etc. The local interface 409 may comprise additional systems designed to coordinate this communication, including, for example, performing load balancing. The processor 403 may be of electrical or of some other available construction.
Although the third part integration application 121, the network interface application 118, the metric tracking application 115 and other various systems described herein may be embodied in software or code executed by general purpose hardware as discussed above, as an alternative, the same may also be embodied in dedicated hardware or a combination of software/general purpose hardware and dedicated hardware. If embodied in dedicated hardware, each can be implemented as a circuit or state machine that employs any one of or a combination of a number of technologies. These technologies may include, but are not limited to, discrete logic circuits having logic gates for implementing various logic functions upon an application of one or more data signals, application specific integrated circuits (ASICs) having appropriate logic gates, field-programmable gate arrays (FPGAs), or other components, etc. Such technologies are generally well known by those skilled in the art and, consequently, are not described in detail herein.
The flowcharts of
Although the flowcharts of
Also, any logic or application described herein, including list of main applications, that comprises software or code can be embodied in any non-transitory computer-readable medium for use by or in connection with an instruction execution system such as, for example, a processor 403 in a computer system or other system. In this sense, the logic may comprise, for example, statements including instructions and declarations that can be fetched from the computer-readable medium and executed by the instruction execution system. In the context of the present disclosure, a “computer-readable medium” can be any medium that can contain, store, or maintain the logic or application described herein for use by or in connection with the instruction execution system.
The computer-readable medium can comprise any one of many physical media such as, for example, magnetic, optical, or semiconductor media. More specific examples of a suitable computer-readable medium would include, but are not limited to, magnetic tapes, magnetic floppy diskettes, magnetic hard drives, memory cards, solid-state drives, USB flash drives, or optical discs. Also, the computer-readable medium may be a random access memory (RAM) including, for example, static random access memory (SRAM) and dynamic random access memory (DRAM) or magnetic random access memory (MRAM). In addition, the computer-readable medium may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or other type of memory device.
Further, any logic or application described herein, including list of main applications, may be implemented and structured in a variety of ways. For example, one or more applications described may be implemented as modules or components of a single application. Further, one or more applications described herein may be executed in shared or separate computing devices or a combination thereof. For example, a plurality of the applications described herein may execute in the same computing device 103, or in multiple computing devices in the same computing device 103. Additionally, it is understood that terms such as “application,” “service,” “system,” “engine,” “module,” and so on may be interchangeable and are not intended to be limiting.
Disjunctive language such as the phrase “at least one of X, Y, or Z,” unless specifically stated otherwise, is otherwise understood with the context as used in general to present that an item, term, etc., may be either X, Y, or Z, or any combination thereof (e.g., X, Y, and/or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to each be present.
It should be emphasized that the above-described embodiments of the present disclosure are merely possible examples of implementations set forth for a clear understanding of the principles of the disclosure. Many variations and modifications may be made to the above-described embodiment(s) without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.