[0047] The present invention will be further described in detail below in conjunction with the drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, but do not limit the present invention.
[0048] In work and life, user calendars such as email calendars and mobile phone calendars, schedule reminders and other data play a great role. For example, mailbox calendar, in mainstream mailboxes such as OutLook, Google, Notes and other mailboxes, create user-specific schedule information based on the calendar, such as reminders, meetings, training, business trips, vacations, busy, free and other event types, as well as daily and every The flexible setting of various time types such as week and specific day brings great convenience to people's work and life. Therefore, the call scene mode adjustment method provided by the present invention can adaptively adjust the required call scene mode according to the user's calendar information, which provides convenience for people's lives.
[0049] Method embodiment
[0050] The method for adjusting the call scenario mode provided by the embodiment of the present invention is as follows figure 1 As shown, it specifically includes the following steps:
[0051] Step 101: Synchronize calendar information configured by the user; the calendar information includes event type and time information when the event occurs.
[0052] The calendar information here includes event type and time information when the event occurs; among them, the event type includes but is not limited to reminder, meeting, training, business trip, vacation, busy, and idle. The time information of the event occurrence includes the time type and the time period during which the event occurred. The time type here mainly refers to the frequency of the event occurrence, for example, every week, every day, and a specific day.
[0053] Among them, when the user configures the calendar information, the configuration can be done in the mailbox, or can be configured in the mobile terminal or other devices, and there is no specific limitation here. When the user makes settings, events with the same time type and time period are not allowed.
[0054] When synchronizing the calendar information configured by the user, you can use automatic synchronization or manual synchronization. Among them, during automatic synchronization, synchronization can be performed according to a preset time interval, or synchronization can be performed when it is detected that the calendar information is updated or changed. During manual synchronization, the user's touch operation is mainly detected, and when the synchronized touch button is detected to be touched, the synchronization process is performed.
[0055] Step 102: When the call related to the user occurs within the time set by the time information, obtain the event type corresponding to the time information.
[0056] In this step, when there is a call related to the user, it is determined whether the current time of the call is within the time period set by the event time information in the calendar information, and when it is determined, the event type corresponding to the event is obtained.
[0057] The time information mentioned above includes the time type and the time period during which the event occurs. Optionally, when obtaining the event type corresponding to the time information, it includes:
[0058] When there are multiple events in a time period, sort the priority of multiple events according to the time type;
[0059] The event type of the event with the highest priority is selected as the event type corresponding to the time information.
[0060] Since there may be multiple pieces of calendar information at the same time, it is necessary to select an event with a higher priority level. Here, the priority of events is preferably sorted by time type, for example, the priority of a specific day event is higher than that of a weekly event, and the priority of a weekly event is higher than that of a daily event. The event type of an event with a high priority level is selected as the final event type, and subsequent processing is performed according to the event type.
[0061] Step 103: Match the corresponding call profile according to the event type, and process the call based on the preset strategy of the call profile.
[0062] In this step, when the corresponding call scene mode is matched according to the event type, since the mapping relationship between the event type and the call scene mode is pre-stored in the application server, the corresponding call scene mode can be directly matched according to the mapping relationship.
[0063] The call scene mode in the present invention is aimed at the application server and is different from the scene mode of the mobile terminal. The scene mode of the mobile terminal mainly refers to the local incoming call mode, such as ringtone or mute. The call scenario mode adopted by the present invention refers to the processing strategy of the application server for outgoing and incoming calls. In different call scenarios, the application service has different processing strategies for outgoing and incoming calls.
[0064] Optionally, when the call is processed based on the preset strategy of the call scenario mode, it includes:
[0065] When the call is outgoing, the call is made based on the number display strategy of the calling scene mode;
[0066] When the call is an incoming call, the call is made based on the ringing routing strategy of the call profile.
[0067] The number display strategy here refers to the way the calling number is displayed. The ringing routing strategy refers to the routing method for pair calls. For example, for example, there are three call scenarios stored in the application server. Among them, in call scenario mode 1, when the user makes a call, it can be displayed as his real number; in call scenario mode 2, when the user calls out, it can be displayed as anonymous; in call scenario mode 3, when the user calls out, it can be displayed as Short number or switchboard number in the group, etc. In call scenario mode 1, when the user calls in, the user can route the call to his own number; in call scenario mode 2, when the user calls in, it is routed to other numbers unconditionally or before conditions; in call scenario mode 3, the user calls When entering, multiple numbers in the same or in sequence, etc.
[0068] The technical content of the present invention will be described in detail below with reference to the drawings and specific embodiments.
[0069] In this embodiment, a mailbox calendar is taken as an example for description. AS uses the API (Application Programming Interface) opened by the mailbox server (hereinafter referred to as the mailbox server), and uses SOAP (Simple Object Access Protocol) to request calendar information from the user's mailbox server and synchronize it. In the AS database, the user uses these calendar information to adapt when calling, and the time period of the calendar corresponding to the call time is used to obtain the event type of the calendar, and according to the mapping relationship between the event type and the scene mode type, different scene modes can be achieved The effect of different number display and ringing routing strategy.
[0070] figure 2 It is a topology diagram of a network element in an embodiment of the present invention. The figure includes a user terminal, an application server, and a mailbox server (Mailbox Server, referred to as MBS). Among them, the user terminal UE is a device for the user to initiate calls, receive calls, and perform other call operations, such as C network or G network mobile phones, PSTN terminals, IMS terminals, etc.; the mailbox server provides the user's calendar, contacts and other functions of the server or equipment . The AS and the UE use SIP (Session Initiation Protocol) to communicate with each other through the core network. Protocols such as SOAP are used between AS and MBS. AS uses the API provided by MBS to send SOAP messages to request user calendar information.
[0071] Take Microsoft's OutLook mailbox corresponding to the mailbox server Exchange as an example for specific introduction. Such as image 3 As shown, it specifically includes the following steps:
[0072] Step 301: User A configures calendar information in the OutLook mailbox.
[0073] Among them, the calendar information is stored on the OutLook mailbox server Exchange, and the AS contains the user's mailbox username and other information.
[0074] Step 302: During synchronization, the AS sends a calendar information acquisition request to a preset mailbox server address according to the user's legal account, and after receiving the calendar information fed back by the mailbox server, it updates the locally stored calendar information according to the calendar information.
[0075] The user's account information and mailbox server address information are pre-stored in the AS. When synchronization is required, a request for obtaining calendar information based on the SOAP protocol is sent to Exchange through the API provided by the mailbox server Exchange. If the AS is VPBX (Virtual Private Branch Exchange), the mailbox server addresses of users in the same group should be the same, and the mailbox server address information is stored at the group level.
[0076] Among them, before sending the request for obtaining calendar information based on the SOAP protocol to Exchange, the mailbox server is requested to obtain format information of the service; after receiving the format information fed back by the mailbox server, the request for obtaining calendar information is sent to the mailbox server based on the format information. The specific implementation process will be introduced later.
[0077] AS receives the response of the SOAP request returned by the mailbox server Exchange, obtains the event type and time information related to the calendar information, clears the previous calendar information of the corresponding user in the AS database and writes the obtained calendar information. If a user's calendar request response fails, the calendar information in the AS database will not be cleared.
[0078] In step 303, when user A makes a call, the AS matches user A's calendar information at the current time corresponding to the call profile to make the call. If it is an outgoing call, the number display strategy in this scenario mode is adopted, and if it is an incoming call, the ringing routing strategy in this scenario mode is adopted.
[0079] Further, the synchronization process between AS and Exchange will be introduced in detail.
[0080] Microsoft's official Exchange Server Developer Center provides Microsoft ExchangeWeb Services Managed API, which can be used to interact with Exchange Server. Use Web Service to realize data synchronization between Exchange and AS calendar information. Exchange Web Service uses the open XML (Extensible Markup Language) standard to describe and configure applications. The message interaction interface is open and fixed, and it is more convenient to filter data. Exchange Server exposes the WSDL (Web services Definition Language, Web Service Definition Language) service to the outside world. The AS calls this service through the server's open API to obtain the calendar information data required by the AS.
[0081] The principle of calendar information synchronization between AS and Exchange based on Web Service, such as Figure 4 As shown, the details include the following:
[0082] Step 401: Obtain an Exchange Web Service service URL (Uniform Resource Locator) and a legal account (including a user name and password).
[0083] In step 402, the AS creates the underlying proxy class, and requests the WSDL service from the Exchange server based on the URL and the legal account through the proxy class.
[0084] Step 403: After receiving the request from the proxy class, the Exchange server returns an XML document described by WSDL. Here, the XML document is used by the AS to determine the protocol for sending the request.
[0085] In step 404, the proxy class converts the calendar information acquisition request into a soap format based on the URL and the legal account, and then sends it to the Exchange server through the HTTP protocol.
[0086] Step 405: In response to the request, the Exchange server returns calendar information based on the SOAP format.
[0087] Step 406: The proxy class receives the returned SOAP calendar information, filters it and writes it into the AS database. Here, filtering mainly refers to processing invalid information in calendar information, such as information about events that have occurred.
[0088] In summary, the application server of the present invention adaptively adjusts the number display and ringing strategy of the user's calling scene mode based on the event type and time type corresponding to the user's calendar information, and makes the user's calendar and calling scene mode more flexible. The role of, greatly enhance the user experience in work and life. With the rise of the Internet of Things, 4G, and 5G networks and technologies, the integration of CS (Circuit Switched) and PS (Packet Switch) networks, and the integration of various application systems, the present invention has a very broad development. And use space.
[0089] Device embodiment
[0090] According to an embodiment of the present invention, an application server is provided, such as Figure 5 Shown. The clustering device includes a processor 52 and a memory 51 storing instructions executable by the processor 52. The processor 52 may be a general-purpose processor, such as a central processing unit (CPU), a digital signal processor (DSP), an application specific integrated circuit (ASIC), or Is one or more integrated circuits configured to implement embodiments of the invention. The memory 51 is used to store program codes and transmit the program codes to the CPU. The memory 51 may include a volatile memory (volatile memory), such as a random access memory (random access memory, RAM); the memory 51 may also include a non-volatile memory (non-volatile memory), such as a read-only memory (read-only memory). Only memory (ROM), flash memory (flash memory), hard disk drive (HDD), or solid-state drive (SSD); the memory 51 may also include a combination of the foregoing types of memories.
[0091] The application server provided by the embodiment of the present invention includes a memory 51 and a processor; wherein the memory 51 stores a computer-executable call scene mode adjustment program, and the processor 52 is used to execute the call scene mode adjustment program to implement the following steps:
[0092] Synchronize the calendar information configured by the user; the calendar information includes event type and time information when the event occurs;
[0093] When the user-related call occurs within the time set by the time information, obtain the event type corresponding to the time information;
[0094] The corresponding call profile is matched according to the event type, and the call is processed based on the preset strategy of the call profile.
[0095] Optionally, the calendar information is located in the mailbox, and the processor 52 is configured to execute the call profile adjustment program to implement the following steps:
[0096] Send a calendar information acquisition request to the address of the mailbox server according to the user's legal account;
[0097] After receiving the calendar information fed back by the mailbox server, the locally stored calendar information is updated according to the calendar information.
[0098] Optionally, the processor 52 is configured to execute a call scenario mode adjustment program to implement the following steps:
[0099] Request the service format information from the mailbox server through a legal account;
[0100] After receiving the format information fed back by the mailbox server, it sends a calendar information acquisition request to the mailbox server based on the format information.
[0101] Optionally, the time information includes the time type and the time period when the event occurs, and the processor 52 is configured to execute the call scenario mode adjustment program to implement the following steps:
[0102] When there are multiple events in a time period, sort the priority of multiple events according to the time type;
[0103] The event type of the event with the highest priority is selected as the event type corresponding to the time information.
[0104] Optionally, the processor 52 is configured to execute a call scenario mode adjustment program to implement the following steps:
[0105] When the call is outgoing, the call is made based on the number display strategy of the calling scene mode;
[0106] When the call is incoming, the call is made based on the ringing strategy of the call profile.
[0107] Storage medium embodiment
[0108] The embodiment of the present invention also provides a computer-readable storage medium. The computer-readable storage medium here stores one or more programs. Among them, the computer-readable storage medium may include volatile memory, such as random access memory; the memory may also include non-volatile memory, such as read-only memory, flash memory, hard disk, or solid state disk; and the memory may also include the above types. The combination of memory. When the one or more programs in the computer-readable storage medium can be executed by one or more processors, to implement the call scenario mode adjustment method provided in the method embodiment.
[0109] A person of ordinary skill in the art can understand that all or part of the processes in the methods of the foregoing embodiments can be implemented by instructing relevant hardware through a computer program. The program can be stored in a computer readable storage medium. When the program is executed, It may include the procedures of the embodiments of the above-mentioned methods.
[0110] Although the present application has been described through the embodiments, those skilled in the art know that there are many variations and changes in the present application without departing from the spirit and scope of the present invention. In this way, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention is also intended to include these modifications and variations.