Module: Freeclimb

Defined in:
lib/freeclimb/version.rb,
lib/freeclimb.rb,
lib/freeclimb/api_error.rb,
lib/freeclimb/api_client.rb,
lib/freeclimb/models/say.rb,
lib/freeclimb/models/sms.rb,
lib/freeclimb/models/play.rb,
lib/freeclimb/models/pause.rb,
lib/freeclimb/configuration.rb,
lib/freeclimb/models/dequeue.rb,
lib/freeclimb/models/enqueue.rb,
lib/freeclimb/api/default_api.rb,
lib/freeclimb/models/log_list.rb,
lib/freeclimb/models/out_dial.rb,
lib/freeclimb/models/redirect.rb,
lib/freeclimb/models/set_talk.rb,
lib/freeclimb/models/call_list.rb,
lib/freeclimb/models/get_digits.rb,
lib/freeclimb/models/get_speech.rb,
lib/freeclimb/models/log_result.rb,
lib/freeclimb/models/queue_list.rb,
lib/freeclimb/models/say_all_of.rb,
lib/freeclimb/models/set_listen.rb,
lib/freeclimb/models/sms_all_of.rb,
lib/freeclimb/models/call_result.rb,
lib/freeclimb/models/play_all_of.rb,
lib/freeclimb/models/send_digits.rb,
lib/freeclimb/models/pause_all_of.rb,
lib/freeclimb/models/percl_script.rb,
lib/freeclimb/models/queue_member.rb,
lib/freeclimb/models/queue_result.rb,
lib/freeclimb/models/messages_list.rb,
lib/freeclimb/models/percl_command.rb,
lib/freeclimb/models/queue_request.rb,
lib/freeclimb/models/account_result.rb,
lib/freeclimb/models/enqueue_all_of.rb,
lib/freeclimb/models/message_result.rb,
lib/freeclimb/models/recording_list.rb,
lib/freeclimb/models/account_request.rb,
lib/freeclimb/models/conference_list.rb,
lib/freeclimb/models/log_list_all_of.rb,
lib/freeclimb/models/message_request.rb,
lib/freeclimb/models/out_dial_all_of.rb,
lib/freeclimb/models/redirect_all_of.rb,
lib/freeclimb/models/set_talk_all_of.rb,
lib/freeclimb/models/application_list.rb,
lib/freeclimb/models/available_number.rb,
lib/freeclimb/models/call_list_all_of.rb,
lib/freeclimb/models/pagination_model.rb,
lib/freeclimb/models/play_early_media.rb,
lib/freeclimb/models/record_utterance.rb,
lib/freeclimb/models/recording_result.rb,
lib/freeclimb/models/add_to_conference.rb,
lib/freeclimb/models/conference_result.rb,
lib/freeclimb/models/create_conference.rb,
lib/freeclimb/models/get_digits_all_of.rb,
lib/freeclimb/models/get_speech_all_of.rb,
lib/freeclimb/models/make_call_request.rb,
lib/freeclimb/models/queue_list_all_of.rb,
lib/freeclimb/models/queue_member_list.rb,
lib/freeclimb/models/set_listen_all_of.rb,
lib/freeclimb/models/start_record_call.rb,
lib/freeclimb/models/application_result.rb,
lib/freeclimb/models/call_result_all_of.rb,
lib/freeclimb/models/send_digits_all_of.rb,
lib/freeclimb/models/application_request.rb,
lib/freeclimb/models/filter_logs_request.rb,
lib/freeclimb/models/queue_result_all_of.rb,
lib/freeclimb/models/update_call_request.rb,
lib/freeclimb/models/incoming_number_list.rb,
lib/freeclimb/models/messages_list_all_of.rb,
lib/freeclimb/models/terminate_conference.rb,
lib/freeclimb/models/account_result_all_of.rb,
lib/freeclimb/models/available_number_list.rb,
lib/freeclimb/models/message_result_all_of.rb,
lib/freeclimb/models/recording_list_all_of.rb,
lib/freeclimb/models/conference_list_all_of.rb,
lib/freeclimb/models/incoming_number_result.rb,
lib/freeclimb/models/message_request_all_of.rb,
lib/freeclimb/models/mutable_resource_model.rb,
lib/freeclimb/models/remove_from_conference.rb,
lib/freeclimb/models/application_list_all_of.rb,
lib/freeclimb/models/incoming_number_request.rb,
lib/freeclimb/models/play_early_media_all_of.rb,
lib/freeclimb/models/record_utterance_all_of.rb,
lib/freeclimb/models/recording_result_all_of.rb,
lib/freeclimb/models/add_to_conference_all_of.rb,
lib/freeclimb/models/conference_result_all_of.rb,
lib/freeclimb/models/create_conference_all_of.rb,
lib/freeclimb/models/queue_member_list_all_of.rb,
lib/freeclimb/models/application_result_all_of.rb,
lib/freeclimb/models/create_conference_request.rb,
lib/freeclimb/models/update_conference_request.rb,
lib/freeclimb/models/buy_incoming_number_request.rb,
lib/freeclimb/models/conference_participant_list.rb,
lib/freeclimb/models/incoming_number_list_all_of.rb,
lib/freeclimb/models/terminate_conference_all_of.rb,
lib/freeclimb/models/available_number_list_all_of.rb,
lib/freeclimb/models/conference_participant_result.rb,
lib/freeclimb/models/incoming_number_result_all_of.rb,
lib/freeclimb/models/remove_from_conference_all_of.rb,
lib/freeclimb/models/conference_participant_list_all_of.rb,
lib/freeclimb/models/conference_participant_result_all_of.rb,
lib/freeclimb/models/update_conference_participant_request.rb

Overview

#FreeClimb API

#FreeClimb is a cloud-based application programming interface (API) that puts the power of the Vail platform in your hands. FreeClimb simplifies the process of creating applications that can use a full range of telephony features without requiring specialized or on-site telephony equipment. Using the FreeClimb REST API to write applications is easy! You have the option to use the language of your choice or hit the API directly. Your application can execute a command by issuing a RESTful request to the FreeClimb API. The base URL to send HTTP requests to the FreeClimb REST API is: /apiserver. FreeClimb authenticates and processes your request.

The version of the OpenAPI document: 1.0.0

Generated by: openapi-generator.tech OpenAPI Generator version: 4.3.0-SNAPSHOT

Defined Under Namespace

Classes: AccountRequest, AccountResult, AccountResultAllOf, AddToConference, AddToConferenceAllOf, ApiClient, ApiError, ApplicationList, ApplicationListAllOf, ApplicationRequest, ApplicationResult, ApplicationResultAllOf, AvailableNumber, AvailableNumberList, AvailableNumberListAllOf, BuyIncomingNumberRequest, CallList, CallListAllOf, CallResult, CallResultAllOf, ConferenceList, ConferenceListAllOf, ConferenceParticipantList, ConferenceParticipantListAllOf, ConferenceParticipantResult, ConferenceParticipantResultAllOf, ConferenceResult, ConferenceResultAllOf, Configuration, CreateConference, CreateConferenceAllOf, CreateConferenceRequest, DefaultApi, Dequeue, Enqueue, EnqueueAllOf, FilterLogsRequest, GetDigits, GetDigitsAllOf, GetSpeech, GetSpeechAllOf, IncomingNumberList, IncomingNumberListAllOf, IncomingNumberRequest, IncomingNumberResult, IncomingNumberResultAllOf, LogList, LogListAllOf, LogResult, MakeCallRequest, MessageRequest, MessageRequestAllOf, MessageResult, MessageResultAllOf, MessagesList, MessagesListAllOf, MutableResourceModel, OutDial, OutDialAllOf, PaginationModel, Pause, PauseAllOf, PerclCommand, PerclScript, Play, PlayAllOf, PlayEarlyMedia, PlayEarlyMediaAllOf, QueueList, QueueListAllOf, QueueMember, QueueMemberList, QueueMemberListAllOf, QueueRequest, QueueResult, QueueResultAllOf, RecordUtterance, RecordUtteranceAllOf, RecordingList, RecordingListAllOf, RecordingResult, RecordingResultAllOf, Redirect, RedirectAllOf, RemoveFromConference, RemoveFromConferenceAllOf, Say, SayAllOf, SendDigits, SendDigitsAllOf, SetListen, SetListenAllOf, SetTalk, SetTalkAllOf, Sms, SmsAllOf, StartRecordCall, TerminateConference, TerminateConferenceAllOf, UpdateCallRequest, UpdateConferenceParticipantRequest, UpdateConferenceRequest

Constant Summary collapse

VERSION =
'2.0.0'

Class Method Summary collapse

Class Method Details

.configureObject

Customize default settings for the SDK using block.

Freeclimb.configure do |config|
  config.username = "xxx"
  config.password = "xxx"
end

If no block given, return the default Configuration object.



131
132
133
134
135
136
137
# File 'lib/freeclimb.rb', line 131

def configure
  if block_given?
    yield(Configuration.default)
  else
    Configuration.default
  end
end

.percl_list_to_hash(percl_list) ⇒ Object



140
141
142
143
144
145
146
147
148
149
150
151
152
153
# File 'lib/freeclimb.rb', line 140

def self.percl_list_to_hash(percl_list)
  percl_list_hash = []
  percl_list.each_with_index do | command, index |
    class_name = command.class.name.split('::').last
    percl_hash = Hash.new
    if command.respond_to?(:prompts) && command.prompts != nil && command.prompts.any?
      percl_hash[class_name] = to_hash_with_prompts(command)
    else
      percl_hash[class_name] = command.to_hash
    end
    percl_list_hash.push(percl_hash)
  end
  percl_list_hash
end

.percl_to_json(percl_script) ⇒ Object



163
164
165
# File 'lib/freeclimb.rb', line 163

def self.percl_to_json(percl_script)
  percl_list_to_hash(percl_script.commands).to_json
end

.to_hash_with_prompts(command) ⇒ Object



155
156
157
158
159
160
161
# File 'lib/freeclimb.rb', line 155

def self.to_hash_with_prompts(command)
  prompts_hash = percl_list_to_hash(command.prompts)
  command.prompts = nil
  hash = command.to_hash
  hash[:prompts] = prompts_hash
  hash
end