Class: Vapi::ServerMessageTransferUpdate
- Inherits:
-
Object
- Object
- Vapi::ServerMessageTransferUpdate
- Defined in:
- lib/vapi_server_sdk/types/server_message_transfer_update.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 is currently active.
-
#call ⇒ Vapi::Call
readonly
This is the call object.
-
#customer ⇒ Vapi::CreateCustomerDto
readonly
This is the customer associated with the call.
-
#destination ⇒ Vapi::ServerMessageTransferUpdateDestination
readonly
This is the destination of the transfer.
-
#from_assistant ⇒ Vapi::CreateAssistantDto
readonly
This is the assistant that the call is being transferred from.
-
#phone_number ⇒ Vapi::ServerMessageTransferUpdatePhoneNumber
readonly
This is the phone number associated with the call.
-
#timestamp ⇒ String
readonly
This is the ISO-8601 formatted timestamp of when the message was sent.
-
#to_assistant ⇒ Vapi::CreateAssistantDto
readonly
This is the assistant that the call is being transferred to.
Class Method Summary collapse
-
.from_json(json_object:) ⇒ Vapi::ServerMessageTransferUpdate
Deserialize a JSON object to an instance of ServerMessageTransferUpdate.
-
.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(phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, to_assistant: OMIT, from_assistant: OMIT, additional_properties: nil) ⇒ Vapi::ServerMessageTransferUpdate constructor
-
#to_json(*_args) ⇒ String
Serialize an instance of ServerMessageTransferUpdate to a JSON object.
Constructor Details
#initialize(phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, to_assistant: OMIT, from_assistant: OMIT, additional_properties: nil) ⇒ Vapi::ServerMessageTransferUpdate
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 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 91 def initialize(phone_number: OMIT, destination: OMIT, timestamp: OMIT, artifact: OMIT, assistant: OMIT, customer: OMIT, call: OMIT, to_assistant: OMIT, from_assistant: OMIT, additional_properties: nil) @phone_number = phone_number if phone_number != OMIT @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 @to_assistant = to_assistant if to_assistant != OMIT @from_assistant = from_assistant if from_assistant != OMIT @additional_properties = additional_properties @_field_set = { "phoneNumber": phone_number, "destination": destination, "timestamp": , "artifact": artifact, "assistant": assistant, "customer": customer, "call": call, "toAssistant": to_assistant, "fromAssistant": from_assistant }.reject do |_k, v| v == OMIT end end |
Instance Attribute Details
#additional_properties ⇒ OpenStruct (readonly)
Returns Additional properties unmapped to the current class definition.
53 54 55 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 53 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.
25 26 27 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 25 def artifact @artifact end |
#assistant ⇒ Vapi::CreateAssistantDto (readonly)
Returns This is the assistant that is currently active. This is provided for convenience. This matches one of the following:
-
‘call.assistant`,
-
‘call.assistantId`,
-
‘call.squad.assistant`,
-
‘call.squad.assistantId`,
-
‘call.squadId->.assistant`,
-
‘call.squadId->.assistantId`.
35 36 37 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 35 def assistant @assistant end |
#call ⇒ Vapi::Call (readonly)
Returns This is the call object. This matches what was returned in POST /call. Note: This might get stale during the call. To get the latest call object, especially after the call is ended, use GET /call/:id.
45 46 47 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 45 def call @call end |
#customer ⇒ Vapi::CreateCustomerDto (readonly)
Returns This is the customer associated with the call. This matches one of the following:
-
‘call.customer`,
-
‘call.customerId`.
40 41 42 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 40 def customer @customer end |
#destination ⇒ Vapi::ServerMessageTransferUpdateDestination (readonly)
Returns This is the destination of the transfer.
20 21 22 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 20 def destination @destination end |
#from_assistant ⇒ Vapi::CreateAssistantDto (readonly)
Returns This is the assistant that the call is being transferred from. This is only sent if ‘destination.type` is “assistant”.
51 52 53 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 51 def from_assistant @from_assistant end |
#phone_number ⇒ Vapi::ServerMessageTransferUpdatePhoneNumber (readonly)
Returns This is the phone number associated with the call. This matches one of the following:
-
‘call.phoneNumber`,
-
‘call.phoneNumberId`.
18 19 20 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 18 def phone_number @phone_number end |
#timestamp ⇒ String (readonly)
Returns This is the ISO-8601 formatted timestamp of when the message was sent.
22 23 24 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 22 def @timestamp end |
#to_assistant ⇒ Vapi::CreateAssistantDto (readonly)
Returns This is the assistant that the call is being transferred to. This is only sent if ‘destination.type` is “assistant”.
48 49 50 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 48 def to_assistant @to_assistant end |
Class Method Details
.from_json(json_object:) ⇒ Vapi::ServerMessageTransferUpdate
Deserialize a JSON object to an instance of ServerMessageTransferUpdate
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 122 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::ServerMessageTransferUpdatePhoneNumber.from_json(json_object: phone_number) end if parsed_json["destination"].nil? destination = nil else destination = parsed_json["destination"].to_json destination = Vapi::ServerMessageTransferUpdateDestination.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["toAssistant"].nil? to_assistant = nil else to_assistant = parsed_json["toAssistant"].to_json to_assistant = Vapi::CreateAssistantDto.from_json(json_object: to_assistant) end if parsed_json["fromAssistant"].nil? from_assistant = nil else from_assistant = parsed_json["fromAssistant"].to_json from_assistant = Vapi::CreateAssistantDto.from_json(json_object: from_assistant) end new( phone_number: phone_number, destination: destination, timestamp: , artifact: artifact, assistant: assistant, customer: customer, call: call, to_assistant: to_assistant, from_assistant: from_assistant, 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.
201 202 203 204 205 206 207 208 209 210 211 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 201 def self.validate_raw(obj:) obj.phone_number.nil? || Vapi::ServerMessageTransferUpdatePhoneNumber.validate_raw(obj: obj.phone_number) obj.destination.nil? || Vapi::ServerMessageTransferUpdateDestination.validate_raw(obj: obj.destination) obj.&.is_a?(String) != 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.to_assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.to_assistant) obj.from_assistant.nil? || Vapi::CreateAssistantDto.validate_raw(obj: obj.from_assistant) end |
Instance Method Details
#to_json(*_args) ⇒ String
Serialize an instance of ServerMessageTransferUpdate to a JSON object
191 192 193 |
# File 'lib/vapi_server_sdk/types/server_message_transfer_update.rb', line 191 def to_json(*_args) @_field_set&.to_json end |