Example #1
0
        /// <summary>
        /// Create a new conversation in your service
        /// </summary>
        /// <param name="pathChatServiceSid"> The SID of the Conversation Service that the resource is associated with. </param>
        /// <param name="friendlyName"> The human-readable name of this conversation. </param>
        /// <param name="uniqueName"> An application-defined string that uniquely identifies the resource </param>
        /// <param name="attributes"> An optional string metadata field you can use to store any data you wish. </param>
        /// <param name="messagingServiceSid"> The unique ID of the Messaging Service this conversation belongs to. </param>
        /// <param name="dateCreated"> The date that this resource was created. </param>
        /// <param name="dateUpdated"> The date that this resource was last updated. </param>
        /// <param name="state"> Current state of this conversation. </param>
        /// <param name="timersInactive"> ISO8601 duration when conversation will be switched to `inactive` state. </param>
        /// <param name="timersClosed"> ISO8601 duration when conversation will be switched to `closed` state. </param>
        /// <param name="xTwilioWebhookEnabled"> The X-Twilio-Webhook-Enabled HTTP request header </param>
        /// <param name="client"> Client to make requests to Twilio </param>
        /// <returns> A single instance of Conversation </returns>
        public static ConversationResource Create(string pathChatServiceSid,
                                                  string friendlyName                  = null,
                                                  string uniqueName                    = null,
                                                  string attributes                    = null,
                                                  string messagingServiceSid           = null,
                                                  DateTime?dateCreated                 = null,
                                                  DateTime?dateUpdated                 = null,
                                                  ConversationResource.StateEnum state = null,
                                                  string timersInactive                = null,
                                                  string timersClosed                  = null,
                                                  ConversationResource.WebhookEnabledTypeEnum xTwilioWebhookEnabled = null,
                                                  ITwilioRestClient client = null)
        {
            var options = new CreateConversationOptions(pathChatServiceSid)
            {
                FriendlyName = friendlyName, UniqueName = uniqueName, Attributes = attributes, MessagingServiceSid = messagingServiceSid, DateCreated = dateCreated, DateUpdated = dateUpdated, State = state, TimersInactive = timersInactive, TimersClosed = timersClosed, XTwilioWebhookEnabled = xTwilioWebhookEnabled
            };

            return(Create(options, client));
        }
        /// <summary>
        /// Update an existing conversation in your service
        /// </summary>
        /// <param name="pathChatServiceSid"> The chat_service_sid </param>
        /// <param name="pathSid"> A 34 character string that uniquely identifies this resource. </param>
        /// <param name="friendlyName"> The human-readable name of this conversation. </param>
        /// <param name="dateCreated"> The date that this resource was created. </param>
        /// <param name="dateUpdated"> The date that this resource was last updated. </param>
        /// <param name="attributes"> An optional string metadata field you can use to store any data you wish. </param>
        /// <param name="messagingServiceSid"> The unique ID of the Messaging Service this conversation belongs to. </param>
        /// <param name="state"> Current state of this conversation. </param>
        /// <param name="timersInactive"> ISO8601 duration when conversation will be switched to `inactive` state. </param>
        /// <param name="timersClosed"> ISO8601 duration when conversation will be switched to `closed` state. </param>
        /// <param name="xTwilioWebhookEnabled"> The X-Twilio-Webhook-Enabled HTTP request header </param>
        /// <param name="client"> Client to make requests to Twilio </param>
        /// <returns> Task that resolves to A single instance of Conversation </returns>
        public static async System.Threading.Tasks.Task <ConversationResource> UpdateAsync(string pathChatServiceSid,
                                                                                           string pathSid,
                                                                                           string friendlyName                  = null,
                                                                                           DateTime?dateCreated                 = null,
                                                                                           DateTime?dateUpdated                 = null,
                                                                                           string attributes                    = null,
                                                                                           string messagingServiceSid           = null,
                                                                                           ConversationResource.StateEnum state = null,
                                                                                           string timersInactive                = null,
                                                                                           string timersClosed                  = null,
                                                                                           ConversationResource.WebhookEnabledTypeEnum xTwilioWebhookEnabled = null,
                                                                                           ITwilioRestClient client = null)
        {
            var options = new UpdateConversationOptions(pathChatServiceSid, pathSid)
            {
                FriendlyName = friendlyName, DateCreated = dateCreated, DateUpdated = dateUpdated, Attributes = attributes, MessagingServiceSid = messagingServiceSid, State = state, TimersInactive = timersInactive, TimersClosed = timersClosed, XTwilioWebhookEnabled = xTwilioWebhookEnabled
            };

            return(await UpdateAsync(options, client));
        }