Technology is directed to text message based concierge services (“the technology”). A user interacts with a concierge service (CS) via text messages to obtain a specific concierge service. For example, the user can send a text message to the CS, e.g., to a contact number provided by the CS, requesting for a recommendation of a restaurant, and the CS can respond by sending the recommendation as a text message. The CS determines a context of the request and generates recommendations that are personalized to the user and is relevant to the context. The CS can use various techniques, e.g., artificial intelligence, machine learning, natural language processing, to determine a context of the request and generate the recommendations accordingly. The CS can also receive additional information from a person associated with the CS, such as a concierge, to further customize or personalize the recommendations to the user.
Please help me write a proper abstract based on the patent claims. CLAIM: 1. A method performed by a computing system, comprising: receiving, at a server, a request for a recommendation for a service from a first user, the request received as a first message from a mobile computing device associated with the first user via a messaging service provided by a wireless telecommunications network of the mobile computing device; analyzing, at the server, the first message to extract a first set of parameters to be used for performing a search for the service, the analyzing including: determining, by the server, whether the first set of parameters satisfy a criterion for performing the search, and responsive to a determination that the first set of parameters do not satisfy the criterion, exchanging a set of messages between the server and the mobile computing device to obtain the first set of parameters from the first user until the analyzing determines that the first set of parameters satisfy the criterion, the exchanging including: receiving an input from a second user associated with the server regarding at least one of the first set of parameters to be obtained from the user, and sending, by the server, at least one of the set of messages to the mobile computing device eliciting a response from the first user for the at least one of the first set of parameters; performing, at the server, the search using the set of parameters to retrieve a plurality of recommendations for the service; generating, by the server, a second message including the plurality of recommendations; and sending, by the server, the second message to the mobile computing device via the messaging service. 2. The method of claim 1 further comprising: receiving, at the server, a response from the first user regarding a selection of a first recommendation from the plurality of the recommendations via a third message from the mobile computing device; and storing, by the server, at a storage system associated with the server, an indication that the first user accepted the first recommendation as part of user habit data. 3. The method of claim 2 further comprising: analyzing, by the server, the third message from the first user to determine if the third message includes a reason for the selection of the first recommendation; and responsive to a determination that the third message includes the reason for the selection of the first recommendation, storing the reason as part of the user habit data. 4. The method of claim 2 further comprising: analyzing, by the server, the third message from the first user to determine if the third message includes a reason for rejecting any of the plurality of recommendations; and responsive to a determination that the third message includes the reason for rejecting, storing the reason as part of the user habit data. 5. The method of claim 2, wherein performing the search using the set of parameters further includes: analyzing, by the server, the user habit data to determine one or more of the set of parameters to generate the plurality of recommendations that is customized to the first user. 6. The method of claim 2 further comprising: receiving, by the server, a request from the first user to perform a task associated with a service associated with the first recommendation, the request received via a fourth message from the mobile computing device; and performing, by the server, the task using an application programming interface (API) associated with the service associated with the first recommendation. 7. The method of claim 1 further comprising: receiving, at the server, a response from the first user regarding a rejection of a first recommendation from the plurality of the recommendations via a third message from the mobile computing device; and storing, by the server, at a storage system associated with the server, an indication that the first user rejected the first recommendation as part of user habit data. 8. The method of claim 7 further comprising: analyzing, by the server, the third message from the first user to determine a reason for the rejection; and performing, by the server, a revised search using one or more parameters determined based on the reason for rejection to retrieve a second plurality of recommendations, the second plurality of recommendations excluding a first set of recommendations that match the reason for rejection and including a second set of recommendations that overcome the reason for rejection. 9. The method of claim 1, wherein performing the search to retrieve the plurality of recommendations for the service further includes: determining, at the server, a second set of parameters to customize the plurality of recommendations to the first user, the second set of parameters determined based on at least one of a context of the request, user habits data, or user profile data, and performing, by the server, a second search based on the second set of parameters to generate a second plurality of recommendations that is customized to the first user. 10. The method of claim 9, wherein determining the second set of parameters includes receiving, at the server, one or more of the second set of parameters as input from the second user. 11. The method of claim 10, wherein the one or more of the second set of parameters received from the second user are determined by the second user based on user habits data generated by the server. 12. The method of claim 10, wherein the one or more of the second set of parameters received from the second user are determined by the second user based on the context of the request for the recommendation from the first user, the one or more parameters relating to the first user and/or an aspect of the service in the plurality of recommendations. 13. The method of claim 9, wherein the user habits data is generated by the server based on information regarding one or more recommendations accepted and/or rejected in the past by the first user and reasons for accepting and/or rejecting the one or more recommendations. 14. The method of claim 1, wherein the analyzing the first message to extract the first set of parameters includes analyzing the first message using artificial intelligence technique. 15. The method of claim 1, wherein the messaging service provided by the wireless telecommunications network of the mobile computing device is a short messaging service, and wherein the first message is a text message. 16. The method of claim 1, wherein exchanging the set of messages between the server and the mobile computing device includes: sending, by the server, a first message of the set of messages to the first user requesting the first user to provide one or more parameters of the first set of parameters; receiving a response from the first user for the first message as a second message of the set of messages, the response including the one or more parameters; and sending, by the server, a third message of the set of messages forming a sequence, wherein a next message of the sequence sent to the first user is based on a response received from the user for a previous message of the sequence. 17. The method of claim 1, wherein performing the search includes: performing, by the server, the search in at a plurality of computing devices accessible via a communication network. 18. A computer-readable storage medium storing computer-readable instructions, comprising: instructions for receiving, at a server, a first set of messages from a mobile computing device associated with a first user, wherein at least one of the first set of messages contains a request for a recommendation for a service; instructions for sending, by the server, a second set of messages to the mobile computing device to elicit information from the first user that is to be used by the server in generating the recommendation, wherein at least some of the second set of messages are sent in response to at least some of the first set of messages received from the first user, wherein at least some of the first set of messages are responses to the at least some of the second set of messages, and includes information requested by the at least some the second set of messages; instructions for analyzing, at the server, the first set of messages using an artificial intelligence technique to determine a first set of parameters for generating the recommendation, the analyzing including: extracting at least some of the first set of parameters provided by the first user in the first set of messages, deriving at least some of the first set of parameters based on information provided in the first set of messages, and deriving at least some of the first set of parameters based on user habits data of the first user; instructions for performing, at the server, the search using the first set of parameters to retrieve a first recommendation for the service; and instructions for sending, by the server, the first recommendation to the first user as a first message to the mobile computing device. 19. The computer-readable storage medium of claim 18 further comprising: instructions for receiving a second message from the mobile computing device including a response from the first user regarding a rejection of the first recommendation; instructions for analyzing the second message to determine a reason for rejection; instructions for generating a “not-preferred” parameter based on the reason for rejection that is used to identify a set of recommendations that match the reason for rejection; instructions for performing a revised search using the “not-preferred” parameter to retrieve a plurality of recommendations, the plurality of recommendations excluding the set of recommendations that match the “not-preferred” parameter; and instructions for sending one of the plurality of recommendations to the first user as a third message to the mobile computing device. 20. The computer-readable storage medium of claim 19 further comprising: instructions for storing the rejection of the first recommendation and the reason for rejection as part of user habits data of the first user in a storage system associated with the server. 21. The computer-readable storage medium of claim 18, wherein the instructions for receiving the first set of messages from the mobile computing device includes instructions for receiving the first set of messages from the mobile computing device via a messaging service provided by a wireless telecommunications network of the mobile computing device. 22. The computer-readable storage medium of claim 21, wherein the instructions for receiving the first set of messages via the messaging service includes receiving the first set of messages via a short messaging service, and wherein the first set of messages are text messages. 23. The computer-readable storage medium of claim 18, wherein the instructions for receiving the first set of messages from the mobile computing device includes instructions for receiving the first set of messages from the mobile computing device via a social networking application executing at the mobile computing device. 24. The computer-readable storage medium of claim 18, wherein the instructions for deriving at least some of the first set of parameters based on information provided in the first set of messages includes: instructions for receiving an input from a second user associated with the server regarding a context of the request, and instructions for deriving the at least some of the first set of parameters based on the context. 25. A system, comprising: a first module to receive, at a server, a first set of messages from a mobile computing device associated with a first user, wherein at least one of the first set of messages contains a request for a recommendation for a service; a second module to send, by the server, a second set of messages to the mobile computing device to elicit information from the first user that is to be used by the server in generating the recommendation, wherein at least some of the first set of messages are responses to the at least some of the second set of messages, and includes information requested by the at least some the second set of messages; a third module to determine, at the server, a context of the request using an artificial intelligence technique, the context including explicit parameters and implicit parameters, which are used for performing a search to generate the recommendation, the third module further configured to determine the context by: extracting the explicit parameters from the first set of messages, the explicit parameters provided by the first user in the first set of messages, deriving at least some of the implicit parameters based on the information provided in the first set of messages and/or information received by a second user associated with the server, and deriving at least some of the implicit parameters based on user habits data of the first user; and a fourth module to perform, at the server, a search based on the context to retrieve a first recommendation for the service, wherein the second module is further configured to send the first recommendation to the first user as a first message to the mobile computing device. 26. The system of claim 25, wherein the second module is further configured to receive a second message from the mobile computing device including a rejection of the first recommendation, and wherein the fourth module is further configured to perform a revised search for retrieving a plurality of recommendations, the plurality of recommendations excluding a set of recommendations that match with a reason for the rejection. 27. The system of claim 26 further comprising: a fifth module to store the rejection of the first recommendation and the reason for rejection as part of user habits data of the first user in a storage system associated with the server. 28. The system of claim 25, wherein the first module is configured to receive the first set of messages from the mobile computing device via a messaging service provided by a wireless telecommunications network of the mobile computing device. 29. The system of claim 28, wherein first module is configured to receive the first set of messages via a short messaging service, and wherein the first set of messages are text messages.