Class: Vapi::ServerMessagePhoneCallControl
- Inherits:
-
Object
- Object
- Vapi::ServerMessagePhoneCallControl
- Defined in:
- lib/vapi_server_sdk/types/server_message_phone_call_control.rb
Constant Summary collapse
- OMIT =
Object.new
Instance Attribute Summary collapse
-
#additional_properties ⇒ OpenStruct
readonly
Additional properties unmapped to the current class definition.
-
#artifact ⇒ Vapi::Artifact
readonly
This is a live version of the ‘call.artifact`.
-
#assistant ⇒ Vapi::CreateAssistantDto
readonly
This is the assistant that the message is associated with.
-
#call ⇒ Vapi::Call
readonly
This is the call that the message is associated with.
-
#chat ⇒ Vapi::Chat
readonly
This is the chat object.
-
#customer ⇒ Vapi::CreateCustomerDto
readonly
This is the customer that the message is associated with.
-
#destination ⇒ Vapi::ServerMessagePhoneCallControlDestination
readonly
This is the destination to forward the call to if the request is “forward”.
-
#phone_number ⇒ Vapi::ServerMessagePhoneCallControlPhoneNumber
readonly
This is the phone number that the message is associated with.
-
#request ⇒ Vapi::ServerMessagePhoneCallControlRequest
readonly
This is the request to control the phone call.
-
#timestamp ⇒ Float
readonly
This is the timestamp of the message.
Class Method Summary collapse
-
.from_json(json_object:) ⇒ Vapi::ServerMessagePhoneCallControl
Deserialize a JSON object to an instance of ServerMessagePhoneCallControl.
-
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object’s property definitions.
Instance Method Summary collapse
- #initialize(request:, phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, chat: OMIT, additional_properties: nil) ⇒ Vapi::ServerMessagePhoneCallControl constructor
-
#to_json(*_args) ⇒ String
Serialize an instance of ServerMessagePhoneCallControl to a JSON object.
Constructor Details
#initialize(request:, phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, chat: OMIT, additional_properties: nil) ⇒ Vapi::ServerMessagePhoneCallControl
55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 55 def initialize(request:, phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, chat: OMIT, additional_properties: nil) @phone_number = phone_number if phone_number != OMIT @request = request @destination = destination if destination != OMIT @timestamp = if != OMIT @artifact = artifact if artifact != OMIT @assistant = assistant if assistant != OMIT @customer = customer if customer != OMIT @call = call if call != OMIT @chat = chat if chat != OMIT @additional_properties = additional_properties @_field_set = { "phoneNumber": phone_number, "request": request, "destination": destination, "timestamp": , "artifact": artifact, "assistant": assistant, "customer": customer, "call": call, "chat": chat }.reject do |_k, v| v == OMIT end end |
Instance Attribute Details
#additional_properties ⇒ OpenStruct (readonly)
Returns Additional properties unmapped to the current class definition.
36 37 38 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 36 def additional_properties @additional_properties end |
#artifact ⇒ Vapi::Artifact (readonly)
Returns This is a live version of the ‘call.artifact`. This matches what is stored on `call.artifact` after the call.
26 27 28 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 26 def artifact @artifact end |
#assistant ⇒ Vapi::CreateAssistantDto (readonly)
Returns This is the assistant that the message is associated with.
28 29 30 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 28 def assistant @assistant end |
#call ⇒ Vapi::Call (readonly)
Returns This is the call that the message is associated with.
32 33 34 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 32 def call @call end |
#chat ⇒ Vapi::Chat (readonly)
Returns This is the chat object.
34 35 36 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 34 def chat @chat end |
#customer ⇒ Vapi::CreateCustomerDto (readonly)
Returns This is the customer that the message is associated with.
30 31 32 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 30 def customer @customer end |
#destination ⇒ Vapi::ServerMessagePhoneCallControlDestination (readonly)
Returns This is the destination to forward the call to if the request is “forward”.
21 22 23 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 21 def destination @destination end |
#phone_number ⇒ Vapi::ServerMessagePhoneCallControlPhoneNumber (readonly)
Returns This is the phone number that the message is associated with.
17 18 19 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 17 def phone_number @phone_number end |
#request ⇒ Vapi::ServerMessagePhoneCallControlRequest (readonly)
Returns This is the request to control the phone call.
19 20 21 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 19 def request @request end |
#timestamp ⇒ Float (readonly)
Returns This is the timestamp of the message.
23 24 25 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 23 def @timestamp end |
Class Method Details
.from_json(json_object:) ⇒ Vapi::ServerMessagePhoneCallControl
Deserialize a JSON object to an instance of ServerMessagePhoneCallControl
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 86 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) if parsed_json["phoneNumber"].nil? phone_number = nil else phone_number = parsed_json["phoneNumber"].to_json phone_number = Vapi::ServerMessagePhoneCallControlPhoneNumber.from_json(json_object: phone_number) end request = parsed_json["request"] if parsed_json["destination"].nil? destination = nil else destination = parsed_json["destination"].to_json destination = Vapi::ServerMessagePhoneCallControlDestination.from_json(json_object: destination) end = parsed_json["timestamp"] if parsed_json["artifact"].nil? artifact = nil else artifact = parsed_json["artifact"].to_json artifact = Vapi::Artifact.from_json(json_object: artifact) end if parsed_json["assistant"].nil? assistant = nil else assistant = parsed_json["assistant"].to_json assistant = Vapi::CreateAssistantDto.from_json(json_object: assistant) end if parsed_json["customer"].nil? customer = nil else customer = parsed_json["customer"].to_json customer = Vapi::CreateCustomerDto.from_json(json_object: customer) end if parsed_json["call"].nil? call = nil else call = parsed_json["call"].to_json call = Vapi::Call.from_json(json_object: call) end if parsed_json["chat"].nil? chat = nil else chat = parsed_json["chat"].to_json chat = Vapi::Chat.from_json(json_object: chat) end new( phone_number: phone_number, request: request, destination: destination, timestamp: , artifact: artifact, assistant: assistant, customer: customer, call: call, chat: chat, additional_properties: struct ) end |
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given
hash and check each fields type against the current object's property
definitions.
160 161 162 163 164 165 166 167 168 169 170 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 160 def self.validate_raw(obj:) obj.phone_number.nil? || Vapi::ServerMessagePhoneCallControlPhoneNumber.validate_raw(obj: obj.phone_number) obj.request.is_a?(Vapi::ServerMessagePhoneCallControlRequest) != false || raise("Passed value for field obj.request is not the expected type, validation failed.") obj.destination.nil? || Vapi::ServerMessagePhoneCallControlDestination.validate_raw(obj: obj.destination) obj.&.is_a?(Float) != false || raise("Passed value for field obj.timestamp is not the expected type, validation failed.") obj.artifact.nil? || Vapi::Artifact.validate_raw(obj: obj.artifact) obj.assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.assistant) obj.customer.nil? || Vapi::CreateCustomerDto.validate_raw(obj: obj.customer) obj.call.nil? || Vapi::Call.validate_raw(obj: obj.call) obj.chat.nil? || Vapi::Chat.validate_raw(obj: obj.chat) end |
Instance Method Details
#to_json(*_args) ⇒ String
Serialize an instance of ServerMessagePhoneCallControl to a JSON object
150 151 152 |
# File 'lib/vapi_server_sdk/types/server_message_phone_call_control.rb', line 150 def to_json(*_args) @_field_set&.to_json end |