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 |
waitUrl | If specified, this URL provides the custom hold music for the Conference when it is in the |
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
populatedConference - When the first Participant whose
startConfOnEnterproperty 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 thestatusCallbackUrlis invoked, signifying the Conference has been successfully created and isempty.
When apopulatedorinProgressConference is terminated (via PerCL or the REST API), this URL will be called twice – once when the Conference becomesemptyand 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 (eitheralways, 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.