Dynamic model-based ringer profiles

The invention relates to a method for dynamic model-based ringer profiles. The method includes receiving one or more incoming calls, and, based on the one or more incoming calls, generating one or more incoming call records. Each of the incoming call records includes an elapsed ringing time value associated with one of the incoming calls. Also, the method includes storing one or more ringer profiles. The ringer profiles are generated using the one or more incoming call records. The ringer profiles include a current ringer profile. Further, the method includes receiving a new incoming call, and, in response to receiving the new incoming call, sounding a ringtone according to the current ringer profile.

FIELD

The present disclosure relates generally to the field of enterprise telephony devices. More particularly, the present disclosure relates to ringer control of office telephones.

BACKGROUND

As companies embrace open office environments, employees find themselves working in closer proximity to each other. Moreover, due to intraoffice collaboration, individual employees may find themselves at their desks with surprising infrequency. Telephone ringtones are the most common method of alerting a user to an incoming call at his or her phone, especially for desk-based phones that are not worn on the person or otherwise kept in intermittent or constant physical contact with the user such as in the case of cellular phones. In environments where users work in close proximity to each other, a desk phone's ringer can annoy neighboring users, especially when the ringer of the phone has been set to an elevated volume, and/or the user whose phone is ringing is currently or frequently not at his or her desk.

SUMMARY

In general, in one aspect, the invention relates to a method for dynamic model-based ringer profiles. The method includes receiving one or more incoming calls, and, based on the one or more incoming calls, generating one or more incoming call records. Each of the incoming call records includes an elapsed ringing time value associated with one of the incoming calls. Also, the method includes storing one or more ringer profiles. The ringer profiles are generated using the one or more incoming call records. The ringer profiles include a current ringer profile. Further, the method includes receiving a new incoming call, and, in response to receiving the new incoming call, sounding a ringtone according to the current ringer profile.

In general, in one aspect, the invention relates to a desk phone utilizing dynamic model-based ringer profiles. The desk phone includes a communications interface, a ringer, a timer, at least one processor, and memory coupled to the at least one processor. The memory stores instructions which, when executed by the at least one processor, cause the at least one processor to perform a process. The process includes receiving one or more incoming calls. The process also includes, for each of the one or more incoming calls, calculating an elapsed ringing time value of the incoming call using the timer, and generating an incoming call record including the elapsed ringing time value of the incoming call. Further, the process includes sending the one or more incoming call records to a remote ringer profile server, and receiving, from the remote ringer profile server, a current ringer profile. Still yet, the process includes storing the current ringer profile, receiving a new incoming call, and, in response to receiving the new incoming call, sounding the ringer according to the current ringer profile.

In general, in one aspect, the invention relates to a system for generating dynamic model-based ringer profiles. The system includes at least one processor and memory coupled to the at least one processor. The memory stores instructions which, when executed by the at least one processor, cause the at least one processor to perform a process. The process includes receiving, from a desk phone, one or more incoming call records. Each of the incoming call records includes an elapsed ringing time value. Also, the process includes storing the one or more incoming call records as historical data, and building a ringer model by applying a model builder to the historical data. Further, the process includes generating a ringer profile by applying the ringer model to current data, and transmitting the ringer profile to the desk phone.

DETAILED DESCRIPTION

Telephone ringers are traditionally configured to play a ringtone for a fixed duration at a fixed volume (e.g., 15 seconds at 80% volume, etc.), typically according to a user-configured setting. A ringtone includes any sound output by a telephone to alert its user of an incoming call. A ringtone may include, for example, a pre-recorded audio file (e.g., way, mp3, aiff, etc.) that is played back by an electronic ringer in response to a signal or command received over a network (e.g., a detected voltage, a logical signal, an Application Program Interface (API) call, etc.). While frequency characteristics may vary between ringtones, different makes and models of phones may store different pre-recorded audio files for use as ringtones, and the ringtone volume may be user adjusted, the basic principle of telephone ringtones has remained the same—a ringing phone plays music or rings with a set of tones, usually with periodic intervals of silence, at a constant volume for a fixed amount of time until the incoming call times out or is answered. For users in the vicinity of a ringing phone, without the permission or authority to answer the phone or change its ringer settings, such a phone may be annoying, and may decrease productivity.

Prior solutions to this issue have enabled a user to configure his or her ringer settings, such as ringer volume, ringer tone, and ringer duration. However, effective management of these settings to avoid disrupting neighboring workers may require constant attention and adjustment by a phone's user, which can, in many circumstances, prove inadequate. While a ringer set to a medium or high volume will certainly disrupt neighbors in an office environment, even a phone set to the lowest ringer volume is still likely to annoy neighboring workers when the phone rings constantly without being answered. For example, some users are often away from their desks for meetings, or wear headphones to listen to music while working at their desks, either of which may result in frequently unanswered incoming calls that ring for a full 15-30 seconds before going to voicemail.

In general, embodiments of the invention provide a system, a method, and a computer readable medium for dynamic model-based ringer profiles. As described herein a desk phone records incoming call records that provide insight into the call answering patterns of the phone's user. The incoming call records may be used to build a ringer model. The ringer model may be informed by contemporaneous information received from other sources, where such information includes the user's calendar, the user's location, or a state of the environment of the phone at the time the incoming calls were received. The ringer profile may be built on the desk phone, or remotely by another device and sent to the desk phone over a network. Once the ringer model has been built, ringer profiles may be generated by applying the ringer model to current data, such as a current day and time, a current location of the phone's user, and a current state of the phone's environment. When a ringer profile is implemented by a desk phone, the ringer profile may control any characteristic of the desk phone's ringer, such as the duration and volume at which the phone's ringer sounds a ringtone. The ringer model may be used to generate a new ringer profile whenever an update is appropriate. For example, a new ringer profile may be implemented at a phone once a month, once a week, once a day, or once an hour. In this way, the desk phone is dynamically configured to ensure an incoming call can be answered by the intended recipient while minimizing the sound output by the phone to its environment.

FIG. 1shows an environment100for dynamic model-based ringer profiles according to one or more embodiments. Although the elements of the environment100are presented in one arrangement, other embodiments may feature other arrangements, and other configurations may be used without departing from the scope of the invention. For example, various elements may be combined to create a single element. As another example, the functionality performed by a single element may be performed by two or more elements. In one or more embodiments of the invention, one or more of the elements shown inFIG. 1may be omitted, repeated, and/or substituted. Accordingly, various embodiments may lack one or more of the features shown. For this reason, embodiments of the invention should not be considered limited to the specific arrangements of elements shown inFIG. 1.

As depicted inFIG. 1, the environment100includes a workstation102. The environment100also includes one or more neighboring workstations103. For example, as shown inFIG. 1, neighboring workstations103a-103care shown in proximity to the workstation102. As used herein, the workstation102includes any workspace in which a person (i.e., a user, an individual, etc.) may engage in one or more tasks. A neighboring workstation103includes any workspace proximate to the workstation102such that audio originating from the workstation102can be heard at the neighboring workstations103. A workstation may include, for example, a desk, a cubicle, a conference room, and/or an office. Accordingly, as shown inFIG. 1, the neighboring workstations103are desks or cubicles adjacent to the workstation102. As shown inFIG. 1, the neighboring workstations103aand103beach include a neighboring user104—neighboring users104aand104b, respectively.

The workstation102includes a desk phone105. The desk phone105includes any desk resident hardware device that may be used to receive incoming telephone calls, and which includes a ringer (e.g., ringer circuit, software controlled loudspeaker, etc.) for alerting a user of the incoming calls. The desk phone105may be in communication with a central call control system. The desk phone105may include logic for registering to a private branch exchange (PBX) (e.g., a VoIP PBX, etc.). The desk phone105may include logic for directly communicating with a headset. In one or more embodiments, the desk phone105may include a VoIP desk phone, which sends and receives voice communications over an Internet Protocol (IP) network.

As depicted inFIG. 1, a user that works at the workstation102is currently absent from the workstation102. He or she may be working elsewhere in the environment100, or outside of the environment100. For example, he or she may be working from home, on vacation, at a meeting, or in his or her laboratory. Accordingly, any incoming calls to the desk phone105will cause the desk phone105to ring into the environment100, before terminating unanswered. The incoming calls may cause the desk phone105to ring for a predetermined amount of time before going to voicemail, or the desk phone105may ring until the calling party terminates the call (i.e., hangs up). In prior art desk phones, the predetermined amount of time is a static value (e.g., 15 seconds, 20 seconds, 30 seconds, etc.) used for all incoming calls. Moreover, in prior art desk phones, the ringer sounds at a static volume level configured by the phone's user. Accordingly, in prior art phone systems, even if the ringer of a desk phone is set to some fraction of maximum volume, the ringer may disrupt the concentration of neighboring users because it will sound at a fixed volume for some fixed duration of time.

According to the systems and methods disclosed herein, the desk phone105is dynamically configured to optimize its ringer output in a manner that balances the likelihood of alerting the user associated with the desk phone105of the incoming call with reducing the cumulative auditory emissions of the desk phone105into the environment100. In other words, according to the systems and methods disclosed herein, the desk phone105may be configured to ring just long enough and loud enough for its user to hear the desk phone105ringing, while at the same time minimizing disruption to the neighboring users104. When these systems and methods are implemented across all desk phones in the environment100, the aggregate effect may be a substantial decrease in auditory disturbances in the environment100, and an overall increase in user productivity.

FIG. 2shows system200for dynamic model-based ringer profiles according to one or more embodiments. Although the elements of the system200are presented in one arrangement, other embodiments may feature other arrangements, and other configurations may be used without departing from the scope of the invention. For example, various elements may be combined to create a single element. As another example, the functionality performed by a single element may be performed by two or more elements. In one or more embodiments of the invention, one or more of the elements shown inFIG. 2may be omitted, repeated, and/or substituted. Accordingly, various embodiments may lack one or more of the features shown. For this reason, embodiments of the invention should not be considered limited to the specific arrangements of elements shown inFIG. 2.

As depicted inFIG. 2, the system200includes a desk phone205, a computing device211, a mobile device208, a call control server202, a ringer profile server204, and an environmental status server206, each of which are communicatively coupled to a network210. As described herein, the network210includes any private and/or public communications network, wired and/or wireless, such as a local area network (LAN), wide area network (WAN), and/or the Internet. Via the network210, one or more of the call control server202, the ringer profile server204, the environmental status server206, the desk phone205, the computing device211, and the mobile device208may communicate with the other devices coupled to the network210.

The desk phone205may be substantially identical to the desk phone105, described above in the context ofFIG. 1. In one or more embodiments, the desk phone205may be coupled to a headset212. The coupling between the headset212and the desk phone205may include a physical coupling and/or a wireless coupling (e.g., a DECT link, a Bluetooth link, etc.).

As described herein, the call control server202includes one or more remote computing devices that are accessible to the desk phone205over the network210, and that monitors and manages voice communications destined for and received at the desk phone205. For example, the call control server202may monitor the status of the desk phone205, establish connections to/from the desk phone205, modify parameters of connections at the desk phone205, terminate connections at the desk phone205, and/or restart failed connections at the desk phone205. The call control server202may include, for example, a session initiation protocol (SIP) server, a Real-time Transport Protocol (RTP) server, and/or a Real-time Transport Control Protocol (RTCP) server. In one or more embodiments, the call control server202may include an IP PBX. Accordingly, the call control server202may notify the desk phone205of incoming calls, and/or send a ring signal or command to the desk phone205.

The computing device211includes any computing device also associated with the user that is associated with the desk phone205. For example, a line or extension of the user of the computing device211may be assigned to the desk phone205. The computing device211may include a desktop computer, a laptop computer, a terminal, etc. Similarly, the mobile device208includes any portable electronic device also associated with the user that is associated with the desk phone205. For example, a line or extension of the user of the mobile device208may be assigned to the desk phone205. The mobile device208may include a cellular phone, a portable music player, a smartphone, a tablet computer, etc.

In one or more embodiments, the location of the computing device211and/or the mobile device208may be reported to the ringer profile server204. For example, the computing device211may report its location to the ringer profile server204, and the mobile device208may report its location to the ringer profile server204. When in a known environment, such as the environment100described in reference toFIG. 1, above, the computing device211and/or mobile device208may determine its location based on RSSI sampling and/or trilateration of beacon signals, such as broadcasts from Wi-Fi access points and/or Bluetooth beacons. Still further, the computing device211and/or the mobile device208may determine its location using an integrated global positioning system (GPS) receiver.

In one or more embodiments, the computing device211and/or the mobile device208may report recorded calendar events to the ringer profile server204. For example, using data in a mail client or calendar client on the computing device211and/or the mobile device208, the device may report one or more of a user's meetings, appointments, and vacations to the ringer profile server204.

The environmental status server206includes any computing device operable to report information regarding the environment of the desk phone205to the ringer profile server204. In one or more embodiments, the environmental status server206may include a sound masking system that is outputting a sound masking signal into the environment of the desk phone205, such that the environmental status server206reports information regarding the operation of the sound masking system. For example, the environmental status server206may periodically report the volume of the sound masking signal being output to the environment, and/or the volume of ambient audio measured in the environment. In one or more embodiments, the environmental status server206may include an access control system that controls access to the environment of the desk phone205, such that the environmental status server206reports information regarding the user density of the environment. For example, based at least in part on badge scans performed at access controlled doors, the environmental status server206may periodically report the number of people that are currently in the environment.

In one or more embodiments, the desk phone205may record information regarding incoming calls to the desk phone205, herein referred to as “incoming call records.” For example, the desk phone205may record to an incoming call record whether an incoming call is answered or unanswered, the duration of time a ringer of the desk phone205was sounded before the incoming call was answered, the ringer volume(s) that were used to alert a user of the incoming call, and/or whether the user was wearing a headset when he or she was alerted of the incoming call.

In one or more embodiments, the desk phone205may dynamically apply ringer profiles that control how the desk phone205alerts of an incoming call. For example, a first ringer profile may be used by the desk phone205for sounding its ringer during a first time period (e.g., 30 minutes, 1 hour, 4 hours, etc.), and a second ringer profile may be used by the desk phone205for sounding its ringer during a second time period subsequent to the first time period. Accordingly, when an incoming call is received at the desk phone205during the first time period, the desk phone205may sound a ringtone according to the first ringer profile; and when an incoming call is received at the desk phone205during the second time period, the desk phone205may sound a ringtone according to the second ringer profile. Still yet, and as a further example, a third ringer profile may be used by the desk phone205for sounding its ringer during the second time period when the desk phone205has determined that the headset212is attached and/or is being worn by a user. Accordingly, a ringer profile may include instructions to use the ringer profile for a specified time period and/or only when one or more conditions are met.

In one or more embodiments, the desk phone205may receive the ringer profiles from the ringer profile server204. As described herein, the ringer profile server204includes any computing device remote from the desk phone205that is operable to receive over the network210one or more call records, and to return ringer profiles over the network210to the desk phone205. In such embodiments, the desk phone205may send its incoming call records to the ringer profile server204. Using the incoming call records, the ringer profile server204may build a ringer model for a user of the desk phone205. In one or more embodiments, the ringer model may be informed by information reported by one or more of the call control server202, the environmental status server206, the computing device211, and the mobile device208. For example, the ringer model may be informed by calendar information, device location information, etc. reported by the computing device211and/or the mobile device208. As another example, the ringer model may be informed by user density estimates, the level of ambient audio detected in the environment, and/or the volume of a sound masking signal output to the environment of the desk phone205.

Further, the ringer profile server204may apply a ringer model to data to generate a ringer profile for the desk phone205. The data may be associated with a current point in time. The current data may include any information tracked or reported by one or more of the ringer profile server204, the call control server202, the desk phone205, the environmental status server206, the computing device211, and the mobile device208. For example, the current data may include a current date and/or a current time. As another example, the current data may include calendar information of a user (e.g., appointments, vacations, etc.), and/or a location of one or more of a user's devices (e.g., the computing device211, the mobile device208, etc.). Also, for example, the current data may include current user density estimates, the current level of ambient audio detected in the environment of the desk phone205, and/or the current volume of a sound masking signal output to the environment of the desk phone205.

In one or more embodiments, the desk phone205may build a model locally using its incoming call records. The model may be informed by information reported by one or more of the call control server202, the environmental status server206, the computing device211, and the mobile device208, as described above. In such embodiments, the desk phone205may apply the model to data to generate a ringer profile for the desk phone205. The data may be associated with a current point in time. The current data may include any information reported by one or more of the call control server202, the environmental status server206, the computing device211, and the mobile device208, as described above.

When operating in accordance with the methods and systems described herein, the ringer profile server204is generally agnostic to any interaction between the call control server202and the desk phone205. In other words, the transmission of incoming call records from the desk phone205to the ringer profile server204, and the receipt of ringer profiles at the desk phone205from the ringer profile server204may proceed independent of any interaction between the desk phone205and the call control server202. Similarly, the call control server202is generally agnostic to any interaction between the ringer profile server204and the desk phone205. In other words, traditional call management functions, which may be mediated using known VoIP protocols, such as, for example, SIP messaging, may proceed independent of any interaction between the desk phone205and the ringer profile server204. Thus, the desk phone205may be operable to implement ringer profiles received from the ringer profile server204without a specialized call control system.

FIG. 3Ashows a block diagram of a desk phone305for dynamic model-based ringer profiles, according to one or more embodiments. Although the elements of the desk phone305are presented in one arrangement, other embodiments may feature other arrangements, and other configurations may be used without departing from the scope of the invention. For example, various elements may be combined to create a single element. As another example, the functionality performed by a single element may be performed by two or more elements. In one or more embodiments of the invention, one or more of the elements shown inFIG. 3Amay be omitted, repeated, and/or substituted. Accordingly, various embodiments may lack one or more of the features shown. For this reason, embodiments of the invention should not be considered limited to the specific arrangements of elements shown inFIG. 3A. The elements of the desk phone305may be implemented in hardware, software, or combinations thereof. The desk phone305may be substantially identical to the desk phone105or the desk phone205, described in the context ofFIGS. 1 and 2, respectively, above.

As shown inFIG. 3A, the desk phone305includes a hardware processor312operably coupled to a memory314, a communications interface322, and a ringer324. In one or more embodiments, the hardware processor312, the memory314, the communications interface322, and the ringer324may remain in communication over one or more communications busses.

As described herein, the communications interface322includes any interface for communicating, using digital and/or analog signals, with one or more other devices over a network. The network may include the network210, described above in reference toFIG. 2. Via the communications interface322, the desk phone305may send incoming call records to one or more remote devices over the network. For example, via the communications interface322, the desk phone305may send incoming call records to a ringer profile server. Also, via the communications interface322, the desk phone305may receive an incoming call signal or command from one or more remote devices. For example, via the communications interface322, the desk phone305may receive an SIP INVITE message from a call control server.

In one or more embodiments, the desk phone305may include one or more user controls. User controls may include any mechanism of the desk phone305, mechanical and/or electronic, that responds to user operation. The user controls may include one or more of a button, a switch, a capacitive sensor, a touch screen, etc. The user controls may be manipulated to initiate an outgoing call, to answer an incoming call, and/or to adjust a setting.

As described herein, the memory314includes any storage device capable of storing information temporarily or permanently. The memory314may include volatile and/or non-volatile memory, and may include more than one type of memory. For example, the memory314may include one or more of SDRAM, ROM, and flash memory. In one or more embodiments, the memory314may store pairing information for connecting with a headset, user preferences, and/or an operating system (OS) of the desk phone305.

As depicted inFIG. 3A, the memory314stores a ringtone316, a timer318, and a ringer profile320. The ringtone316includes a stored audio file that may be output by the ringer324. The ringer324includes any device that sounds an audible alert to notify a user of an incoming call at the desk phone305. The audible alert output by the ringer324may include the ringtone316. The ringtone316may include, for example, a pre-recorded audio file (e.g., way, mp3, aiff, etc.). The ringtone316may be selected by a user of the desk phone305. The ringer324may include, for example, a speaker or electronic ringer circuit. The ringer324may be activated in response to a signal or command received over a network (e.g., a SIP INVITE message, etc.).

As described herein, the ringer profile320provides a volume level instruction for each of one or more points in time within a duration for sounding an audible alert, such as the ringtone316, by the ringer324when an incoming call is received at the desk phone305. For example, the ringer profile320may include a first instruction for 100% ringer volume for the initial 3 seconds that the ringtone316is sounded by the ringer324, and a second instruction for 50% ringer volume for the subsequent 12 seconds that the ringtone316is sounded by the ringer324. As another example, the ringer profile320may include a first instruction for 80% ringer volume for the initial 5 seconds that the ringtone316is sounded by the ringer324, a second instruction for 40% ringer volume for the second 5 seconds that the ringtone316is sounded by the ringer324, and a third instruction for 10% ringer volume for the third 5 seconds that the ringtone316is sounded by the ringer324. As a further example, the ringer profile320may include a first instruction for 40% ringer volume for the initial 7 seconds that the ringtone316is sounded by the ringer324, a second instruction for 5% ringer volume for the next 3 seconds that the ringtone316is sounded by the ringer324, and a third instruction for 0% ringer volume for the remaining duration of time (e.g., 0 seconds, 3 seconds, 10 seconds, etc.) the ringtone316is sounded by the ringer324. Still yet, as another example, the ringer profile320may include a first instruction for 60% ringer volume tapering to 30% ringer volume for the initial 7 seconds that the ringtone316is sounded by the ringer324, and a second instruction for 30% ringer volume tapering to 0% ringer volume for the next 3 seconds that the ringtone316is sounded by the ringer324. As a further example, the ringer profile320may include a first instruction for 65% ringer volume for the initial 5 seconds that the ringtone316is sounded by the ringer324, and 0% ringer volume after the initial 5 seconds.

In one or more embodiments, the ringer profile320may be periodically replaced. For example, the desk phone305may receive, from a ringer profile server, the ringer profile320for use for a first period of time (e.g., 30 minutes, 1 hour, 2 hours, etc.), and subsequently receive, from the ringer profile server, another ringer profile for use for a second period of time (e.g., 30 minutes, 1 hour, 2 hours, etc.). As another example, in embodiments in which the desk phone305generates the ringer profile320, the desk phone305may generate the ringer profile320for use for a first period of time, and subsequently generate another ringer profile for use for a second period of time. Accordingly, the ringer profile320may include a time period instruction that limits the hours, days, duration of time, etc. during which the ringer profile320may be used by the desk phone305.

In one or more embodiments, the desk phone305may store a plurality of ringer profiles. Each of the ringer profiles may be associated with a different time period. For example, a first ringer profile may be associated with the hours of 12 AM-12 PM, such that it is active in the morning, and a second ringer profile may be associated with the hours of 12 PM-12 AM, such that it is active in the afternoon. As another example, a first ringer profile may be associated with the hours of 12 AM-8 AM and 3 PM-12 AM, such that it is active in the early morning and late afternoon, and a second ringer profile may be associated with the hours of 8 AM-3 PM, such that it is active in the late morning and early afternoon. As a further example, a first ringer profile may be associated with the days Monday, Tuesday, Wednesday, and Thursday, such that it is active on those days, and a second ringer profile may be associated with Friday, such that it is active only on Fridays. In embodiments where the desk phone305stores a plurality of ringer profiles, each of the ringer profiles may be associated with a different condition at the desk phone305. For example, a first ringer profile may be active only when a headset is coupled to the desk phone305, and a second ringer profile may be active when the headset is not coupled to the desk phone305. In any case, the ringer profile320may be activated because of one or more conditions related to day, time of day, user location, and headset attachment, and be referred to as the current ringer profile.

The timer318includes any routine resident in the memory314operable to record a time elapsed prior to a user answering an incoming call to the desk phone305. For example, the timer318may record the time elapsed between an incoming call signal or command being received at the desk phone305, and the incoming call being answered. As another example, the timer318may record the time elapsed between the ringer324sounding an audible alert for the call, and the call being answered. Accordingly, the timer318may record that it takes 4 seconds for a user to answer a first incoming call at the desk phone305, 13 seconds for the user to answer a second incoming call at the desk phone305, 5 seconds for the user to answer a third incoming call at the desk phone305, etc. Each of these elapsed times may be recorded to incoming call records, and reported to a ringer profile server, as described below.

FIG. 3Bshows a block diagram of a ringer profile server304for dynamic model-based ringer profiles according to one or more embodiments. Although the elements of the ringer profile server304are presented in one arrangement, other embodiments may feature other arrangements, and other configurations may be used without departing from the scope of the invention. For example, various elements may be combined to create a single element. As another example, the functionality performed by a single element may be performed by two or more elements. In one or more embodiments of the invention, one or more of the elements shown inFIG. 3Bmay be omitted, repeated, and/or substituted. Accordingly, various embodiments may lack one or more of the features shown. For this reason, embodiments of the invention should not be considered limited to the specific arrangements of elements shown inFIG. 3B. The elements of the ringer profile server304may be implemented in hardware, software, or combinations thereof. The ringer profile server304may be substantially identical to the ringer profile server204described in the context ofFIG. 2, above.

As shown inFIG. 3B, the ringer profile server304includes a hardware processor362operably coupled to a memory366, and a communications interface364. In one or more embodiments, the hardware processor362, the memory366, and the communications interface364, may remain in communication over one or more communications busses.

As described herein, the memory366includes any storage device capable of storing information temporarily or permanently. The memory366may include volatile and/or non-volatile memory, and may include more than one type of memory. For example, the memory366may include one or more of SDRAM, ROM, flash memory, and a hard disk drive. As depicted inFIG. 3B, the memory366stores current data368, a model builder371, a ringer model370, and historical data372.

The communications interface364includes any interface for communicating, using digital and/or analog signals, with one or more other devices over a network. The network may include the network210, described above in reference toFIG. 2. Via the communications interface364, the ringer profile server304may receive incoming call records from the desk phone305. Also, via the communications interface364, the ringer profile server304may receive calendared events and/or location information from a computing device and/or mobile device, such as the computing device211and the mobile device208, described above in reference toFIG. 2. Further, via the communications interface364the ringer profile server304may receive information regarding an environment of the desk phone305from an environmental status server, such as the environmental status server206, described in reference toFIG. 2, above.

Any of the aforementioned data (i.e., incoming call records, location information, calendared events, environmental information, etc.) received at the ringer profile server304for a current time period may be stored as the current data368, and any of the aforementioned data received at the ringer profile server304prior to the current time period (i.e., during a prior time period, etc.) may be stored as the historical data372. The current time period may include, for example, the last 12 hours, the last 2 hours, the last hour, the last 15 minutes, the last 5 minutes, etc. For example, when the current time period includes the last hour, an incoming call record generated by the desk phone305less than 30 minutes prior may be included in the current data368. Accordingly, in such an example, any incoming call records generated by the desk phone305that are greater than one hour old may be included in the historical data372. Similarly, one or more of an event calendared for the current time period, location information for the current time period, and environmental information regarding a current state of the environment of the desk phone305may be included in the current data368; and events occurring during the prior time period, location information received during the prior time period, and environmental information regarding a state of the environment of the desk phone305during the prior time period may be included in the historical data372. The prior time period may encompass a period of days, weeks, months, or years. In one or more embodiments, the current data368includes the current time at the desk phone305(e.g., 8:00 AM, 9:44 AM, 1:45 PM, etc.) and/or the current day (e.g., Monday, Wednesday, August 30, November 18, etc.).

In one or more embodiments, information may be moved from the current data368to the historical data372. For example, a rolling 30-minute window, 1-hour window, 2-hour window, etc. may be used to move information received outside of the window to the historical data372. As another example, the information may be moved once an hour, once every 2 hours, etc., as determined by the length of time that defines the current time period.

In one or more embodiments, the ringer model370is built by the model builder371. The model builder371may include any learning algorithm operable to train the ringer model370using the historical data372. The model builder371may include, for example, a classification algorithm, a regression algorithm, an association algorithm, a prediction algorithm, and/or a clustering algorithm. In this way, the ringer model370is a predictive model specifically tuned to the habits of a user of the desk phone305, as reflected in the historical data372. In one or more embodiments, the ringer profile server304generates a ringer profile by applying the ringer model370to the current data368. Once a ringer profile has been generated, the ringer profile may be transmitted, via the communications interface364, to the desk phone305. As an option, the ringer model370may be validated using a portion of the historical data372.

In one or more embodiments, the contents of the memory366may instead be implemented in the memory314of the desk phone305. In other words, the desk phone305may store the historical data372and current data368. Also, the desk phone305may include the model builder371for building the ringer model370, as described above. In other words, in such embodiments, the desk phone305is capable of locally building a ringer model using historical data, and locally applying the ringer model to current data for generating a ringer profile (i.e., the ringer profile320), without assistance of the remote ringer profile server304.

FIG. 4shows a system400for dynamic model-based ringer profiles according to one or more embodiments. Although the elements of the system400are presented in one arrangement, other embodiments may feature other arrangements, and other configurations may be used without departing from the scope of the invention. For example, various elements may be combined to create a single element. As another example, the functionality performed by a single element may be performed by two or more elements. In one or more embodiments of the invention, one or more of the elements shown inFIG. 4may be omitted, repeated, and/or substituted. Accordingly, various embodiments may lack one or more of the features shown. For this reason, embodiments of the invention should not be considered limited to the specific arrangements of elements shown inFIG. 4.

The system400includes a desk phone405communicatively coupled to a ringer profile server404and a call control server402. The desk phone405may communicate with the ringer profile server404and the call control server402over a network, such as the network210described in reference toFIG. 2, above. The desk phone405may be substantially identical to any of the desk phones105,205,305, described in reference toFIGS. 1, 2, and 3A-3B, above. Similarly, the ringer profile server404may be substantially identical to any of the ringer profile servers204,304, described in reference toFIGS. 2 and 3A-3B, above. The call control server402may be substantially identical to the call control server202described in reference toFIG. 2, above.

As depicted inFIG. 4, the desk phone405sends a number of incoming call records407(i.e., incoming call records407a. . .407n) to the ringer profile server404. Each of the incoming call records407may be associated with a different incoming call to the desk phone405. An incoming call record407may include a value indicating whether the call associated with the incoming call record407was or was not answered at the desk phone405. Whenever an incoming call is received at the desk phone405, the desk phone405may record the time it takes for the call to be answered at the desk phone405. Accordingly, an incoming call record407may include a value indicating the time elapsed prior to the incoming call being answered. Also, an incoming call record407may include a value indicating whether or not a headset was connected to the desk phone405when the associated call was received. In one or more embodiments, an incoming call record407may include a date and time of the received call for which the incoming call record407was generated. For example, and referring toFIG. 4, a first incoming call record407aindicates that a call received at 18:28:51 UTC on Sep. 5, 2017 was answered after the desk phone405rang for 4.7 seconds. In other embodiments, the incoming call records407may not include a date and/or timestamp. Accordingly, the ringer profile server404may determine the date and time of the call based on the date and time the incoming call record407is received. Using the date and time information associated with the incoming call records407, the ringer profile server404may correlate the incoming call records407with data received from other systems, such as proximity information from a user's mobile device.

In one or more embodiments, the incoming call records407may be transmitted to the ringer profile server404whenever the associated call is received. In other words, a new incoming call record407may be generated by the desk phone405and transmitted to the ringer profile server404in response to each incoming call at the desk phone405. In one or more embodiments, the incoming call records407may be aggregated by the desk phone405and periodically transmitted (e.g., every 15 minutes, every 30 minutes, every hour, once a day, etc.), or may be transmitted once a threshold number of incoming call records407are collected (e.g., 3 records, 5 records, 10 records, etc.). The incoming call records407may be formatted in any suitable manner. For example, the incoming call records407may sent in JavaScript Object Notation (JSON) or eXtensible Markup Language (XML) formatting to the ringer profile server404.

In one or more embodiments, an incoming call record407may include data indicating the volume with which the ringer sounded for the incoming call. For example, the first incoming call record407amay indicate that the ringer of the desk phone405was sounded at a particular volume (e.g., 10% volume, 70% volume, etc.). In one or more embodiments, an incoming call record407may include data indicating which of the ringer profiles409was applied for sounding the ringer for the incoming call. For example, the first incoming call record407amay indicate that the desk phone405rang according to a third ringer profile409cwhen the associated incoming call was received.

Still referring toFIG. 4, the desk phone405is illustrated to receive a number of ringer profiles409(i.e., ringer profiles409a. . .409n) from the ringer profile server404. Each of the ringer profiles409includes a volume level instruction for each of two or more points in time. The ringer profiles409may be received by the desk phone405sequentially over a period of time, such that a newly received ringer profile409areplaces a previously received ringer profile409b, or two or more of the ringer profiles409may be received and stored together. In one or more embodiments, a ringer profile409is received from the ringer profile server404with an instruction that associates the ringer profile409with a particular time period. For example, the ringer profile server404may instruct that a ringer profile409should be used for the next hour, 2 hours, 4 hours, etc. The ringer profile server404may send a new ringer profile409at the expiration of a prior time period. In this way, the ringer profile404may periodically send new ringer profiles409that are tailored to a status of a user of the desk phone405, as well as a current state of the environment of the desk phone405. Thus, a first ringer profile409amay include volume level instructions for a first time period, and each of the ringer profiles409b-409nmay provide volume level instructions different than those in the first ringer profile409a, and which were applicable during prior time periods.

For example, assume a single user is associated with the desk phone405. The ringer profile server404receives and stores the incoming call records407collected by the desk phone405. Further, based on the received incoming call records407, the ringer profile server404builds a ringer model. The ringer model demonstrates that the user of the desk phone405answers 60% of his or her answered incoming calls within 2 seconds, 90% of his or her answered incoming calls within 5 seconds, and 99% of his or her answered incoming calls within 7 seconds. Accordingly, if an incoming call to the desk phone405is not answered within 7 seconds, it is unlikely that the user will answer the call. A ringer profile409, provided by the ringer profile server404to the desk phone405, is generated by a ringer model built on incoming call records407evidencing these patterns.

For example, as depicted inFIG. 4, the first ringer profile409aincludes a first instruction419ato sound a ringer at 75% volume for 2 seconds, a second instruction419bto taper the ringer volume from 75% to 50% over the next 1 second, a third instruction419cto sound the ringer at 50% volume for the next 2 seconds, a fourth instruction419dto taper the ringer volume from 50% to 0% over the next 2 seconds, and a fifth instruction419eto maintain the ringer at 0% volume for the subsequent 8 seconds. In other words, when the first ringer profile409ais implemented by the desk phone405, the volume of the ringer of the desk phone405dynamically decreases over time, reducing its audibility to persons in the vicinity of the desk phone405. Further, the desk phone405will only audibly ring for 7 seconds when an incoming call is received during a period in which the first ringer profile409ais active. Thus, the first ringer profile409aensures that the user of the desk phone405is no less likely to answer an incoming call within his or her established norms, while limiting the emission of sound into the environment of the desk phone405.

Of course, the first ringer profile409aas depicted inFIG. 4is simply one example, and is not intended to be limiting in anyway. For example, given the facts above, a suitable ringer profile409may instead instruct the desk phone405to ring at a volume of 80% for 2 seconds, drop to a volume of 60% for the next 3 seconds, then a volume of 10% for the next 2 seconds, and then linearly decay to 0% for a final 3 seconds. As another example, a suitable ringer profile409may instruct the desk phone405to ring at 100% volume for 2 seconds, 30% volume for 5 seconds, and then 0% volume. In any case, the ringer profile409is generated using a model that accounts for patterns in the incoming call answer history of the desk phone405.

Still yet, the call answering habits of the user associated with the desk phone405may change due to any number of circumstances. For example, the user may be under a project deadline, may have a rotating work from home schedule, may be spending more time in a lab, or may have been promoted into a new role. As a result, the user may be spending more or less time, in general, in the vicinity of his or her desk. Also, the user may be spending more or less time, during specific time periods on specific days, in the vicinity of his or her desk. These patterns may be reflected in the incoming call records407, which indicate that the user is answering incoming calls at the desk phone405more frequently or less frequently. Also, the user may answer the incoming calls to the desk phone405after a greater or shorter period of ringing, depending on patterns noted above. Accordingly, based on the incoming call records407from such incoming calls, the ringer profile server404may update a ringer model, and provide one or more new ringer profiles409that account for such behavioral patterns.

For example, the ringer profile server404may build a ringer model that results in a shorter ring duration for incoming calls received in the afternoon (e.g., when 90% are answered within 2 seconds, 95% within 4 seconds, etc.) relative to those received in the morning (e.g., when 50% are answered within 2 seconds, 80% within 9 seconds, etc.). Accordingly, the ringer profile server404may generate and transmit to the desk phone405a second ringer profile409bthat the desk phone405uses during the morning, and a third ringer profile409cthat the desk phone405uses during the afternoon. As a result, the desk phone405outputs rings of a different volume and duration during the morning than the desk phone405outputs during the afternoon.

Additional correlations that may influence the ringer profiles409include, for example, environmental factors (e.g., sound masking volume, user density, etc.), whether the user of the desk phone405is wearing a headset, and/or the proximity of the user to the desk phone405. For example, the ringer profile server404may generate ringer profiles409that cause the ringer of the desk phone405to sound at a greater volume when the user of the desk phone405is not wearing a headset relative to when the user is wearing a headset. As another example, the ringer profile server404may generate ringer profiles409that cause the ringer of the desk phone405to ring for a longer period of time when the user of the desk phone405is not wearing a headset relative to when the user is wearing a headset. As yet another example, the ringer profile server404may generate ringer profiles409that cause the desk phone405to ring silently when the user of the desk phone405is beyond a predetermined distance from the desk phone405.

In one or more embodiments, the desk phone405may include one or more user controls for providing user feedback regarding a ringer profile409to the ringer profile server404. For example, via user controls on the desk phone405, the user may communicate to the ringer profile server404a preference for a ringer with a longer duration or a shorter duration. Also, via the user controls on the desk phone405, the user may communicate to the ringer profile server404a preference for a ringer having a greater volume or a ringer having a lesser volume. In such embodiments, the user feedback may be accounted for in a model created by the ringer profile server404for generating the ringer profiles409. In other words, rather than simply increasing or decreasing the volume of the ringer of the desk phone405, the ringer profile server404can correlate a user's ringer preferences with other factors, such as a user density of an environment, user proximity, time, day, etc., when building or updating ringer models.

In one or more embodiments, the desk phone405may engage in a training phase when it is first installed or assigned to a user. During the training phase, the desk phone405may ring at a fixed volume for a fixed duration. As an option, the training phase may include different combinations of predetermined ringer volumes and ringer durations. Any incoming call records407generated during the training phase may be used to build an initial ringer model for the user of the desk phone405. Moreover, any incoming call records407generated during the training phase may be used to establish a baseline answer time for the user of the desk phone405. The baseline answer time may be used to determine whether subsequently generated ringer profiles409are effective, or are increasing the likelihood of the user of the desk phone405not answering an incoming call.

Thus, in the manner described above, the system400dynamically ensures that the desk phone405is configured with a ringer profile409that minimizes the sound output by the desk phone405into its environment, while ensuring that incoming calls to the desk phone405are answered with no less frequency than they would be answered without the ringer profile409. In an open office environment, where each desk includes a desk phone under the control of the ringer profile server404, the aggregate effect may include a substantial decrease in workday interruptions, and an increase in employee productivity.

FIG. 5shows a flowchart of a method500for dynamic model-based ringer profiles, in accordance with one or more embodiments of the invention. While the steps of the method500are presented and described sequentially, one of ordinary skill in the art will appreciate that some or all of the steps may be executed in a different order, may be combined or omitted, and may be executed in parallel. Furthermore, the steps may be performed actively or passively. For example, some steps may be performed using polling or be interrupt driven in accordance with one or more embodiments of the invention. In one or more embodiments, the method500may be carried out by a desk phone, such as any of the desk phones105,205,305, and405, described above in reference toFIGS. 1, 2, 3A-3B, and 4, respectively.

At step502, one or more incoming calls are received. The incoming calls may be received over any suitable network. Whenever an incoming call is received, a ringer may sound an audible alert to notify a user of the incoming call. For example, the ringer may play a ringtone. The ringer may sound the audible alert until the call is answered, the call goes to voicemail, or the ringer times out after a predetermined period of time (e.g., 10 seconds, 15 seconds, 20 seconds, etc.). Based on the one or more incoming calls, one or more incoming call records are generated at step504. Each of the incoming call records may be associated with a different incoming call. For example, a first incoming call record is generated for a first incoming call, a second incoming call record is generated for a second incoming call, and a third incoming call record is generated for a third incoming call. Accordingly, each of the incoming call records may include one or more of the following values: a date the incoming call was received, a time the incoming call was received, an elapsed ringing time of the incoming call, whether the incoming call was answered, a volume of the ringer for the incoming call, a ringer profile that controlled the ringer for the incoming call, and whether a headset was connected to the desk phone or being worn when the incoming call was received.

In one or more embodiments, the desk phone performing the method500may store the incoming call records. The stored incoming call records may be partitioned between current data and historical data, depending on how a current time period is defined, as described above. Further, the desk phone performing the method500may build a ringer model using the incoming call records in the historical data, and generate one or more ringer profiles by applying the ringer model to current data. In such embodiments, the desk phone performing the method500may receive one or more of calendared event information, device location information, and information regarding an environment of the desk phone, any of which may be used as features when building the ringer model, or as input to the ringer model when generating a ringer profile.

In one or more embodiments, the desk phone performing the method500may send the incoming call records to a remote host, such as a ringer profile server. In such embodiments, the ringer profile server may store the incoming call records, build a ringer model, generate ringer profiles, and transmit those ringer profiles to the desk phone according to a method600, described below in the context ofFIG. 6.

Accordingly, ringer profiles, whether generated locally at a desk phone or received from a ringer profile server, are stored at step506. The ringer profiles include a current ringer profile. The ringer profiles may be stored sequentially, such that a desk phone performing the method500only ever stores a single ringer profile. In other words, a first ringer profile is active and stored for a period of time (e.g., 1 hour, 2 hours, etc.), and then replaced by a second ringer profile that is active and stored for a subsequent period of time (e.g., 1 hour, 2 hours, etc.), which may be subsequently replaced by a third ringer profile that is active during a third period of time. Thus, each of the sequentially stored ringer profiles may be active for a limited period of time, before being replaced by a new ringer profile. As an option, several ringer profiles may be concurrently stored, such that a desk phone performing the method500may concurrently store two or more ringer profiles. In such embodiments, a first ringer profile may be active under a first condition for a period of time, and a second ringer profile may be active under a second condition for the period of time, either of which may be subsequently replaced, as described above. For example, the first ringer profile may be active when a headset is connected to the desk phone, and the second ringer profile may be active when the headset is disconnected from the desk phone. One or both of these ringer profiles may be replaced, for example, at the end of the hour, the day, or the week. The ringer profile that is active when a new incoming call is received at a desk phone is the current ringer profile. The current ringer profile includes a volume level instruction for each of one or more points in time within a duration for sounding an audible alert when an incoming call is received at the desk phone. For example, the current ringer profile may include a first instruction to sound a ringer for a first ringing period at a first ringer volume level, and a second instruction to sound the ringer for a second ringing period at a second ringer volume level.

Also, at step508, a new incoming call is received. The incoming call may include any incoming phone call initiated by a calling party. In one or more embodiments, the new incoming call may be received when a desk phone receives an incoming call signal or command. For example, the desk phone may receive an SIP INVITE message from a call control server. As another example, the new incoming call may be received when the desk phone detects a predetermined voltage on a line.

At step510, an audible alert is sounded in response to receiving the new incoming call. The audible alert is sounded according to the current ringer profile. The audible alert may be output by a ringer of the desk phone. Sounding the audible alert according to the current ringer profile includes any operation that outputs the audible alert in conformance with the volume level instructions of the current ringer profile. As an option, sounding the audible alert may include playing a stored ringtone. Thus, sounding the audible alert according to the current ringer profile may include playing a ringtone for a first ringing period at a first ringer volume level, and then playing the ringtone for a second ringing period at a second ringer volume level.

FIG. 6shows a flowchart of a method600for dynamic model-based ringer profiles, in accordance with one or more embodiments of the invention. While the steps of the method600are presented and described sequentially, one of ordinary skill in the art will appreciate that some or all of the steps may be executed in a different order, may be combined or omitted, and may be executed in parallel. Furthermore, the steps may be performed actively or passively. For example, some steps may be performed using polling or be interrupt driven in accordance with one or more embodiments of the invention. In one or more embodiments, the method600may be carried out by a ringer profile server, such as any of the ringer profile servers204,304, and404, described above in reference toFIGS. 2, 3A-3B, and 4, respectively.

At step602, incoming call records are received from a desk phone. Each of the incoming call records may be associated with a different phone call received at the desk phone. Each of the incoming call records may include one or more of the following values: a date the incoming call was received, a time the incoming call was received, an elapsed ringing time of the incoming call, whether the incoming call was answered, a volume of the ringer for the incoming call, a ringer profile that controlled the ringer for the incoming call, and whether a headset was connected to the desk phone or being worn when the incoming call was received.

Also, at step604, the received incoming call records are stored as historical data. The historical data may also include calendared event information, device location information, and information regarding an environment of the desk phone from which the incoming call records were received at step602. At step606, a ringer model is built. The ringer model may be built by a learning algorithm that trains the ringer model using the historical data.

Further, a ringer profile is generated, at step608, by applying the ringer model to current data. The current data may include one or more of incoming call records, location information, calendared event information, and environmental information for a current time period. For example, if the current time period encompasses the prior one-hour period, and the ringer profile is generated at LOAM, then the current data may include any of incoming call records of the desk phone, location information of a user of the desk phone, events on the user's calendar, and environmental information relevant to the time period between 9 AM and LOAM. Moreover, in such an example, the ringer model may be periodically re-applied to current data, such that a new ringer model is generated once an hour.

At step610, the ringer profile is transmitted to the desk phone from which the incoming call records were received at step602. As described above, in reference to the method500, the ringer profile may then be used by the desk phone to control how the desk phone's ringer alerts its user to incoming calls.

Referring toFIG. 7, a communication flow700for dynamic model-based ringer profiles is shown in accordance with one or more embodiments of the invention. As depicted inFIG. 7, the communication flow700proceeds between a mobile device208, a ringer profile server204, a desk phone205, a call control server202, and an environmental status server206, each of which have been described above in reference toFIG. 2.

At operation702, the call control server202notifies the desk phone205of an incoming call. For example, the call control server202may send the desk phone205a ring signal or command. Accordingly, at operation703, the desk phone205rings to alert its user to the incoming call (e.g., a ringer plays a ringtone, etc.), and records the time it takes for the incoming call to be answered. At operation704, the desk phone205accepts the incoming call via the call control server202(e.g., a SIP OK answer message, etc.), and a phone call proceeds between a user at the desk phone205and a far-end caller according to known systems and methods. Also, at operation706, the desk phone205sends an incoming call record to the ringer profile server204. The incoming call record may include a date and time of the incoming call, and a value indicating how long it took for the incoming call to be answered. The ringer profile server204may also receive, at operation708, environmental information from the environmental status server206, and device location information, at operation710, from the mobile device208for a time substantially contemporaneous with the receipt of the incoming call at operation702. For example, the device location information may include a location of the mobile device208at a time between 0 and 5 minutes of when the incoming call was received. Similarly, the environmental information may include an ambient volume of the environment of the desk phone205at the time between 0 and 5 minutes of when the incoming call was received.

The operations702-710described above may repeat for a period of days, weeks, or months, to accumulate enough incoming call records for building a ringer model for the desk phone205. Accordingly, at operation712, the call control server202notifies the desk phone205of another incoming call, and, at operation714, the desk phone205rings to alert its user to the other incoming call, and records the time it takes for the other incoming call to be answered. Also, at operation716, the desk phone205accepts the other incoming call via the call control server202and another phone call proceeds between a user at the desk phone205and a far-end caller. Also, at operation718, the desk phone205sends another incoming call record to the ringer profile server204. The ringer profile server204may also receive, at operation720, environmental information from the environmental status server206for a time substantially contemporaneous with the receipt of the other incoming call at operation712. The ringer profile server204may also receive, at operation722, device location information from the mobile device208for a time substantially contemporaneous with the receipt of the other incoming call at operation712. In this way, the ringer profile server204may accumulate a substantial number of incoming call records from the desk phone205. Moreover, the incoming call records may be correlated with other information that pertains to the environment of the desk phone205and/or the user of the desk phone205. These incoming call records and other information may be stored as historical data.

Thus, at operation724, the ringer profile server204builds a ringer model using the historical data. Also, at operation726, the ringer profile server204applies the ringer model to data for a current time period (i.e., current data). The current data may include, for example, the current day and time. Also, the current data may include location information that was received from the mobile device208in the past 15 minutes, 30 minutes, or hour. Similarly, the current data may include any environmental ambient volume information for the environment of the desk phone205that was received in the past 15 minutes, 30 minutes, or hour. As a result of applying the ringer model to the current data at operation726, a ringer profile is generated. The ringer profile is sent to the desk phone205at operation728. The desk phone205may store the ringer profile such that it controls the ringer of the desk phone205for any incoming calls received, for example, in the next hour. However, no calls may be received, and the ringer profile received at operation728may go unused.

Upon or before the expiration of the ringer profile sent at operation728, the ringer profile server204again applies the ringer model to data for a current time period and generates, at operation729, a new ringer profile. The ringer model may have been updated since operation726. Also, the current data may have changed since operation726. For example, in addition to being an hour later in the work day, the ambient volume of the environment of the desk phone205may have changed. Also, the mobile device208may now be reporting a different location. The new ringer profile is sent to the desk phone205at operation730. The desk phone205may store the new ringer profile such that it controls the ringer of the desk phone205for any incoming calls that are subsequently received. The new ringer profile may include an instruction that defines the new ringer profile as applicable for the next hour, next 2 hours, or the next day.

At operation732, the call control server202notifies the desk phone205of yet another incoming call. At operation734, the desk phone205alerts its user to the incoming call by sounding an audible alert in accordance with the ringer profile received at operation730. In other words, the duration and volume of the ringer of the desk phone205may be controlled according to instructions in the ringer profile in a manner that limits the volume and duration with which the desk phone205rings. Also, at operation734, the desk phone205records the time it takes for the incoming call to be answered. At operation736, the desk phone205accepts the incoming call via the call control server202, and a phone call proceeds between a user at the desk phone205and a far-end caller. Also, at operation738, the desk phone205sends an incoming call record to the ringer profile server204. The incoming call record may include a date and time of the incoming call, a value indicating how long it took for the incoming call to be answered, and a value indicating which ringer profile was active at the desk phone205when the incoming call was received. In this way, the ringer profile server204may continually update its ringer model for the desk phone205. As a result, the ringer profile server204may over time reduce the volume and duration with which the desk phone205rings into its environment while monitoring call answer times to ensure that the user of the desk phone205is not negatively impacted by a reduction in volume and/or duration in ringer output.

In one or more embodiments, the desk phone205may store a ringer profile that is conditionally used for incoming calls from a specific caller. In other words, the desk phone205may store a ringer profile that is used only when an incoming call is received from one or more specific phone numbers or extensions. Such a phone number or extension may be associated with, for example, a manager, receptionist, or family member of the user of the desk phone205. Accordingly, the desk phone205may ring in a unique manner according to the particular ringer profile when the user's manager calls the desk phone205. As another example, the desk phone205may ring in a unique manner according the particular ringer profile when the incoming call is forwarded from the receptionist, whether forwarded manually by the receptionist or automatically because the receptionist was not at his or her phone when the incoming call was first received. The particular ringer profile may be downloaded to the desk phone205by the ringer profile server204for a single incoming call, or may be generally stored to the desk phone205for a period of hours, days, weeks, etc.

A number of implementations have been described. Nevertheless, various modifications may be made without departing from the scope of the disclosure. Accordingly, other implementations are within the scope of the following claims.