Class: Telnyx::Resources::AI::Assistants::ScheduledEvents

Inherits:
Object
  • Object
show all
Defined in:
lib/telnyx/resources/ai/assistants/scheduled_events.rb

Overview

Configure AI assistant specifications

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ ScheduledEvents

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of ScheduledEvents.

Parameters:



130
131
132
# File 'lib/telnyx/resources/ai/assistants/scheduled_events.rb', line 130

def initialize(client:)
  @client = client
end

Instance Method Details

#create(assistant_id, scheduled_at_fixed_datetime:, telnyx_agent_target:, telnyx_conversation_channel:, telnyx_end_user_target:, conversation_metadata: nil, dynamic_variables: nil, text: nil, request_options: {}) ⇒ Telnyx::Models::AI::Assistants::ScheduledPhoneCallEventResponse, Telnyx::Models::AI::Assistants::ScheduledSMSEventResponse

Some parameter documentations has been truncated, see Models::AI::Assistants::ScheduledEventCreateParams for more details.

Create a scheduled event for an assistant

Parameters:

  • assistant_id (String)
  • scheduled_at_fixed_datetime (Time)

    The datetime at which the event should be scheduled. Formatted as ISO 8601.

  • telnyx_agent_target (String)

    The phone number, SIP URI, to schedule the call or text from.

  • telnyx_conversation_channel (Symbol, Telnyx::Models::AI::Assistants::ConversationChannelType)
  • telnyx_end_user_target (String)

    The phone number, SIP URI, to schedule the call or text to.

  • conversation_metadata (Hash{Symbol=>String, Integer, Boolean})

    Metadata associated with the conversation. Telnyx provides several pieces of met

  • dynamic_variables (Hash{Symbol=>String})

    A map of dynamic variable names to values. These variables can be referenced in

  • text (String)

    Required for sms scheduled events. The text to be sent to the end user.

  • request_options (Telnyx::RequestOptions, Hash{Symbol=>Object}, nil)

Returns:

See Also:



37
38
39
40
41
42
43
44
45
46
# File 'lib/telnyx/resources/ai/assistants/scheduled_events.rb', line 37

def create(assistant_id, params)
  parsed, options = Telnyx::AI::Assistants::ScheduledEventCreateParams.dump_request(params)
  @client.request(
    method: :post,
    path: ["ai/assistants/%1$s/scheduled_events", assistant_id],
    body: parsed,
    model: Telnyx::AI::Assistants::ScheduledEventResponse,
    options: options
  )
end

#delete(event_id, assistant_id:, request_options: {}) ⇒ nil

If the event is pending, this will cancel the event. Otherwise, this will simply remove the record of the event.

Parameters:

Returns:

  • (nil)

See Also:



113
114
115
116
117
118
119
120
121
122
123
124
125
# File 'lib/telnyx/resources/ai/assistants/scheduled_events.rb', line 113

def delete(event_id, params)
  parsed, options = Telnyx::AI::Assistants::ScheduledEventDeleteParams.dump_request(params)
  assistant_id =
    parsed.delete(:assistant_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :delete,
    path: ["ai/assistants/%1$s/scheduled_events/%2$s", assistant_id, event_id],
    model: NilClass,
    options: options
  )
end

#list(assistant_id, conversation_channel: nil, from_date: nil, page_number: nil, page_size: nil, to_date: nil, request_options: {}) ⇒ Telnyx::Internal::DefaultFlatPagination<Telnyx::Models::AI::Assistants::ScheduledPhoneCallEventResponse, Telnyx::Models::AI::Assistants::ScheduledSMSEventResponse>

Get scheduled events for an assistant with pagination and filtering

Parameters:

Returns:

See Also:



88
89
90
91
92
93
94
95
96
97
98
99
# File 'lib/telnyx/resources/ai/assistants/scheduled_events.rb', line 88

def list(assistant_id, params = {})
  parsed, options = Telnyx::AI::Assistants::ScheduledEventListParams.dump_request(params)
  query = Telnyx::Internal::Util.encode_query_params(parsed)
  @client.request(
    method: :get,
    path: ["ai/assistants/%1$s/scheduled_events", assistant_id],
    query: query.transform_keys(page_number: "page[number]", page_size: "page[size]"),
    page: Telnyx::Internal::DefaultFlatPagination,
    model: Telnyx::Models::AI::Assistants::ScheduledEventListResponse,
    options: options
  )
end

#retrieve(event_id, assistant_id:, request_options: {}) ⇒ Telnyx::Models::AI::Assistants::ScheduledPhoneCallEventResponse, Telnyx::Models::AI::Assistants::ScheduledSMSEventResponse

Retrieve a scheduled event by event ID



59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/telnyx/resources/ai/assistants/scheduled_events.rb', line 59

def retrieve(event_id, params)
  parsed, options = Telnyx::AI::Assistants::ScheduledEventRetrieveParams.dump_request(params)
  assistant_id =
    parsed.delete(:assistant_id) do
      raise ArgumentError.new("missing required path argument #{_1}")
    end
  @client.request(
    method: :get,
    path: ["ai/assistants/%1$s/scheduled_events/%2$s", assistant_id, event_id],
    model: Telnyx::AI::Assistants::ScheduledEventResponse,
    options: options
  )
end