The CreateConference
command does exactly what its name implies — it creates an empty Conference (one without any Participants). Once created, a Conference remains in FreeClimb until explicitly terminated by a customer. Once a Conference has been terminated, it can no longer be used.
CreateConference
is a Terminal command (any actions following it are never executed). When the Conference is successfully created, FreeClimb invokes the provided actionUrl
using an HTTP POST with a createConference
Webhook as the body. After this request, control picks up using the PerCL code received in the response.
Nesting Rules
No actions can be nested within CreateConference
and CreateConference
cannot be nested in any other actions.
Example
[
{
"CreateConference": {
"actionUrl": "http://example.com/conferenceCreated",
"statusCallbackUrl": "http://www.example.com/conferenceStatusChanged"
}
}
]
Command Attributes
CreateConference
supports the following attributes that modify its behavior:
Attribute | Description |
---|---|
actionUrl | URL to which FreeClimb sends an HTTP POST request when the Conference is successfully created. |
statusCallbackUrl | This URL is invoked when the status of the Conference changes or when a recording of the Conference has become available. |
alias | Descriptive name for the Conference. |
playBeep | Indicates whether to play a beep when a Participant enters or leaves the Conference. |
record | When set to true , the entire Conference is recorded. |
waitUrl | If specified, this URL provides the custom hold music for the Conference when it is in the populated state. |
actionUrl
REQUIREDType: absolute URL
This URL is invoked once the Conference is successfully created. Actions on the Conference, such as adding Participants, can be performed via the PerCL script returned in the response. Both the actionUrl
and statusCallbackUrl
are invoked when the Conference is successfully created.
Note: A PerCL response is expected to control the Conference.
The actionUrl
is sent a createConference
Webhook. The conferenceId
parameter indicates the ID of the Conference that was created.
statusCallbackUrl
OPTIONALType: absolute URL
Default: null
This URL is invoked when the status
of the Conference changes or when a recording of the Conference has become available. A Conference status
can change via:
- PerCL command
- REST API request
- When it is successfully created and becomes empty
- When the first Participant joins, resulting in a
populated
Conference - When the first Participant whose
startConfOnEnter
property is set to true joins (thereby changing the Conference toinProgress
) - When the last Participant leaves the Conference, thereby changing the Conference status to empty
Participants can be successfully added to a Conference once thestatusCallbackUrl
is invoked, signifying the Conference has been successfully created and isempty
.
When apopulated
orinProgress
Conference is terminated (via PerCL or the REST API), this URL will be called twice – once when the Conference becomesempty
and then again when it isterminated
.
Note: This is a notification only; any PerCL returned will be ignored.
Additional Request Parameters
Request Parameter | Description |
---|---|
conferenceId | ID of the Conference created. |
status | The new status of the Conference. See valid values below. |
recordingUrl | URL of the Conference recorded audio. Populated only if a recording exists and the Conference was emptied. |
recordingId | ID of the recording from this Conference. Populated only if a recording exists and the Conference was emptied. |
recordingDurationSec | Duration of the recorded audio rounded up to the nearest second (in seconds). Populated only if a recording exists and the Conference was emptied. |
status
Valid Values
status
Valid ValuesValue | Description |
---|---|
creating | Status while the Conference is being created. |
empty | Status of the Conference when no Conference Participants are present. |
populated | Status of the Conference when Conference Participants are present. |
inProgress | Status of the Conference while active. |
terminated | Status of a deleted Conference. |
internalError | An internal error occurred while creating a Conference. The request can be tried again and if the error recurs, FreeClimb support should be contacted. |
alias
OPTIONALType: string
Default: null
Descriptive name for the Conference.
playBeep
OPTIONALType: string (either always
, never
, entryOnly
, or exitOnly
)
Default: always
Indicates whether to play a beep when a Participant enters or leaves the Conference.
record
OPTIONALType: boolean
Default: false
When set to true
, the entire Conference is recorded. The statusCallbackUrl
of the Conference will receive a conferenceRecordingStatus
Webhook when the Conference transitions from the inProgress
to empty
status.
waitUrl
OPTIONALType: absolute URL
Default: null
If specified, this URL provides the custom hold music for the Conference when it is in the populated
state. A system default hold music will play for Conferences not using the waitUrl
attribute. This attribute is always fetched using HTTP GET and must remain accessible to FreeClimb until the conference is Terminated.
FreeClimb supports multi-channel 8 bit audio a-law/μ-law (WAV) formats with an audio sampling rate of between 1000 and 96000. The max download size is 100MB. You can convert files to this format using an audio editor. Audacity is a free, open source option. See Play command for more details on conversion.
Note: The URL must be an audio file that is reachable and readable by FreeClimb.