Loading...
Loading...
Manage WebRTC credentials and mobile push notification settings. Use when building browser-based or mobile softphone applications. This skill provides Ruby SDK examples.
npx skill4agent add team-telnyx/skills telnyx-webrtc-rubygem install telnyxrequire "telnyx"
client = Telnyx::Client.new(
api_key: ENV["TELNYX_API_KEY"], # This is the default and can be omitted
)clientbegin
result = client.messages.send_(to: "+13125550001", from: "+13125550002", text: "Hello")
rescue Telnyx::Errors::APIConnectionError
puts "Network error — check connectivity and retry"
rescue Telnyx::Errors::RateLimitError
# 429: rate limited — wait and retry with exponential backoff
sleep(1) # Check Retry-After header for actual delay
rescue Telnyx::Errors::APIStatusError => e
puts "API error #{e.status}: #{e.message}"
if e.status == 422
puts "Validation error — check required fields and formats"
end
end401403404422429.auto_paging_eachpage.auto_paging_each { |item| puts item.id }GET /mobile_push_credentialspage = client.mobile_push_credentials.list
puts(page)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atPOST /mobile_push_credentialstypecertificateprivate_keyaliaspush_credential_response = client.mobile_push_credentials.create(
create_mobile_push_credential_request: {
alias: "LucyIosCredential",
certificate: "-----BEGIN CERTIFICATE----- MIIGVDCCBTKCAQEAsNlRJVZn9ZvXcECQm65czs... -----END CERTIFICATE-----",
private_key: "-----BEGIN RSA PRIVATE KEY----- MIIEpQIBAAKCAQEAsNlRJVZn9ZvXcECQm65czs... -----END RSA PRIVATE KEY-----",
type: :ios
}
)
puts(push_credential_response)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atpush_credential_idGET /mobile_push_credentials/{push_credential_id}push_credential_response = client.mobile_push_credentials.retrieve("0ccc7b76-4df3-4bca-a05a-3da1ecc389f0")
puts(push_credential_response)aliascertificatecreated_atidprivate_keyproject_account_json_filerecord_typetypeupdated_atpush_credential_idDELETE /mobile_push_credentials/{push_credential_id}result = client.mobile_push_credentials.delete("0ccc7b76-4df3-4bca-a05a-3da1ecc389f0")
puts(result)GET /telephony_credentialspage = client.telephony_credentials.list
puts(page)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idPOST /telephony_credentialsconnection_idexpires_atnametagtelephony_credential = client.telephony_credentials.create(connection_id: "1234567890")
puts(telephony_credential)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idGET /telephony_credentials/{id}telephony_credential = client.telephony_credentials.retrieve("550e8400-e29b-41d4-a716-446655440000")
puts(telephony_credential)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idPATCH /telephony_credentials/{id}connection_idexpires_atnametagtelephony_credential = client.telephony_credentials.update("550e8400-e29b-41d4-a716-446655440000")
puts(telephony_credential)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_idDELETE /telephony_credentials/{id}telephony_credential = client.telephony_credentials.delete("550e8400-e29b-41d4-a716-446655440000")
puts(telephony_credential)created_atexpiredexpires_atidnamerecord_typeresource_idsip_passwordsip_usernameupdated_atuser_id