Skip to content

Commit 930daf5

Browse files
authored
add ultravox hosted guide (#67)
* add ultravox hosted guide * spelling
1 parent ba6c5d9 commit 930daf5

File tree

6 files changed

+118
-0
lines changed

6 files changed

+118
-0
lines changed

fern/docs.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -113,6 +113,11 @@ navigation:
113113
path: ./docs/pages/telephony/3cx.mdx
114114
- page: Vonage
115115
path: ./docs/pages/telephony/vonage.mdx
116+
- section: Hosted applications
117+
path: ./docs/pages/hostedapps/overview.mdx
118+
contents:
119+
- page: Ultravox
120+
path: ./docs/pages/hostedapps/ultravox.mdx
116121
- tab: verbs
117122
layout:
118123
- section: Verbs
156 KB
Loading
82 KB
Loading
131 KB
Loading
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
title: Hosted Applications
3+
---
4+
5+
With jambonz customers usually need to create and host their own application to send the verbs used to control the call logic.
6+
7+
We have identified a number of common scenarios where customers can use the same application logic with their own
8+
specific parameters like destination numbers and API keys for LLM services. We are pleased to offer these as a Hosted Application service,
9+
This means that you do not need your own app hosting to get started and with our new Application Environment variables you can provide all
10+
your application specific configuration within the Jambonz portal.
11+
12+
These applications cover the common use cases and provide a limited amount of customisation through settings, if you require a more complicated
13+
customisation you will still need to develop your own application. However the source code for these hosted applications is always available in our GitHub repository
14+
for you to expand upon.
15+
16+
If you experience any issues using a hosted application please email support@jambonz.org with a call_sid and date/time of an example call along with a description of the issue.
17+
18+
<Tip>We will be adding more hosted applications in the coming months,
19+
if there's something specific you would like to see, Please
20+
reach out to us on Slack or email us at support@jambonz.org.</Tip>
Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
---
2+
title: Ultravox
3+
---
4+
5+
The Ultravox hosted app allows you to connect a call to an Ultravox agent and provide an initial prompt to the agent, optionally you can also allow Ultravox to transfer the
6+
call to a live human agent by specifying a transfer type, method and the appropriate carrier details.
7+
It can be used for both inbound and outbound calls, with outbounds calls you would initiate the call by making a REST API request to the [Create Call endpoint](https://docs.jambonz.org/reference/rest-call-control/calls/create-call)
8+
9+
## Requirements
10+
Before setting up the hosted application you will need:
11+
- A Jambonz Account
12+
- An Ultravox account, signup up [ultravox.ai](https://app.ultravox.ai/)
13+
- An API key from ultravox, from the Settings page of the ultravox app
14+
- A Carrier configured in your jambonz account
15+
- If you are using the warm transfer option, a Text to Speech provider to be setup in your jambonz account for playing the summary.
16+
17+
## Get started
18+
19+
Login to your jambonz account, goto applications and click the + icon to create a new application.
20+
21+
Enter the name of your application, this can be anything, we suggest starting out with `ultravox`
22+
Enter the Calling Webhook below, the same value should be automatically copied to the Call Status Webhook.
23+
```txt Calling Webhook
24+
wss://ultravox.jambonz.app
25+
```
26+
27+
<Frame>
28+
<img src="../../assets/images/application-webhook-ultravox.png" alt="Setting the calling webhook"/>
29+
</Frame>
30+
31+
When you enter the webhook some new fields will then appear beneath that as shown below, these are the Application Environment variables
32+
for this hosted application. We'll go through how you should configure these next.
33+
34+
<Frame>
35+
<img src="../../assets/images/applicaiton-ultravox-envvars.png" alt="application environment variables for ultravox"/>
36+
</Frame>
37+
38+
## Configuration
39+
40+
### ULTRAVOX_APIKEY
41+
This is the API key for your ultravox account, by default the value will be hidden in the UI but you can check it using the eye icon
42+
43+
### ULTRAVOX_PROMPT
44+
The the system prompt given to the agent at the start of the call instructing it what to do, see [https://docs.ultravox.ai/gettingstarted/prompting]for more details.
45+
Note: You cannot use additional tools with the hosted application, if you wish to expose tooling to the agent you will need to run your own application.
46+
47+
### ULTRAVOX_VOICE
48+
The voice ultravox will use to respond to the caller, see [https://docs.ultravox.ai/voices/overview] for details, we default to the `Tanya-English` voice
49+
50+
### FIRST_SPEAKER
51+
Who is expected to speak first on the call, typically this would be the **Agent** for an inbound call or the **User** for an outbound call.
52+
53+
54+
### CALL_TRANSFER
55+
If you want to enable the feature that allows Ultravox to initiate a transfer to a human agent, set this to either `Cold` or `Warm`, It will then expose a tool to the agent and add some instruction to the prompt.
56+
57+
**Cold** Will just transfer the caller to the human agent number with no introduction, also known as Unattended Transfer
58+
59+
**Warm** Will call the human agent and when they answer play a short summary of the call so far before connecting the caller to the agent, the caller does not hear this summary, also known as Attended Transfer
60+
61+
<Warning>If using warm transfer the TRANSFER_TYPE must be set to Dial, & you must have a Text to Speech provider configured for the application to read the summary.</Warning>
62+
63+
### TRANSFER_TYPE
64+
How Jambonz should initiate the call leg to the human agent,
65+
66+
**Refer** will send a SIP REFER message to the carrier of the user call instructing it to transfer directly to the human agent number, once complete Jambonz will be out of the call.
67+
68+
**Dial** will initiate a new outbound call from Jambonz and then connect the user to that dropping the connection to Ultravox, Jambonz remains in the call path.
69+
70+
### TRANSFER_TO
71+
The number that calls should be transferred to
72+
73+
### TRANSFER_FROM
74+
If using a Dial this is the CallerID that will be sent on the call to the agent.
75+
76+
### TRANSFER_CARRIER
77+
If using a Dial this is the Carrier Jambonz will use for the new outbound call.
78+
79+
80+
81+
## Other Configuration
82+
Finally, set the other Jambonz applicaiton parameters, if you are using the Warm Transfer option then you will need to select a Speech Provider here that you have configured settings for, the other parameters can be left as default.
83+
84+
Optionally you may want to enable call recording for this application.
85+
86+
## Help & support
87+
If you experience any issues with using the Hosted application via Jambonz.cloud then please email support@jambonz.org and include a call_sid for an example call that shows the issue along with the date & time of the call.
88+
89+
Please also mention that you are using the Ultravox Hosted application.
90+
91+
You can view the code for this application on our [GitHub](https://github.com/jambonz/ultravox-hosted)
92+
93+

0 commit comments

Comments
 (0)