Conference

Data structures and methods to control a conferencing SFU

Each client has certain capabilities he is able to handle. They are used to tell other clients the kind of interactions each client is able to process.
If a client wants to start an audio call to another client both clients have to be able to process audio (speakers and microphone present).
As soon as a client is capable to handle audio it tells the server and thus other clients that the client is now ready to process audio requests.
Beside well known capabilities clients may exchange customs capabilities. (e.g. client is capable for some sort of sharing and the appropriate sharing resource id)
Base Methods:
3500 asnRequestAuthToken - Get an authentication token to connect to a janus node.js instance
3501 asnJoinConference - Join a conference as publisher or just member (not neccessariliy already existing) (The conference is preallocated on the platform)
3502 asnLeaveConference - Leave a conference
3503 asnConferenceKeepAlive - Keepalive for the conference session
3504 asnConfigurePublishing - Configure a leg in the conference session (publishing or not, mute etc.). A user is always allowed to configure his session whereas a moderator is allowed to configure any session)
3505 asnSubscribeMedia - Subscribe to a specific media stream in a conference room
3506 asnUnsubscribeMedia - Unscubscribe from a specific media stream in a conference room
3507 asnConfigureMedia - Modify a specific media stream in a conference room
3508 asnRemoveParty - Remove a party from a conference
Utility Methods:
3520 asnGetPartyList - Retrieve the current party list in the conference
3521 asnGetImage - Retrieves an image based on an id (conference party picture, room picture, etc.)
Scheduling methods (Called meeting to differentiate between the conference controlling and scheduling methods)
3530 asnScheduleMeeting - Schedule a meeting / conference (optionally notifies attendees)
3531 asnUpdateMeeting - Updates a scheduled meeting / conference (optionally notifies attendees)
3532 asnCancelMeeting - Cancels a scheduled meeting / conference (optionally notifies attendees)
3533 asnListScheduledMeetings - Get the list of scheduled meetings / conferences
Events:
3560 asnSDPOffer - Offering SDP for a media subscription to the other side
3561 asnSDPAnswer - Answering to an SDP offer for a media subscription
3562 asnTrickleIce - Send an Ice candiate
3563 asnGatheringIceCompleted - Gathering ice candidates completed
3564 asnPartyAdded - A party was added to the conference
3565 asnPartyRemoved - A party was removed from the conference
3566 asnPartyTalking - List of parties which are currently talking
3567 asnPartyChanged - A property of a party has changed (muted, unmuted, sharing screen, sharing video, name other properties etc)
Legend:
room id Each conference is located in a virtual room. The room is logical instance where all conference members are "sitting "in.
party id Each member in the conference is identified by a party id. The party id is provided by the backend to identity each user.
conference id A preallocated (scheduled) conference is identified by a conference id. The conference id is basically the same as the room id. The room is existing if the first party attends the conference where the conference id is existing without neccessariliy having the room existing.
subscription id An id that identifies a media subscription from a publisher
token A token provided by a third party (UC-Connect) to authorize a moderator as participant within a conference
sessiontoken A token which is provided to every party in a conference to authorize further function calls
contact details are optional but not the display name which always has to be filled. To preallocate a conference and notify the members at least a mail address hast to be filled.

Operations:

Name Description
asnRequestAuthToken

Method to retrieve a authentication token from the platform

asnJoinConference

Method to

asnLeaveConference

Method to

asnConferenceKeepAlive

Method to

asnConfigurePublishing

Method to

asnSubscribeMedia

Method to

asnUnsubscribeMedia

Method to

asnConfigureMedia

Method to

asnRemoveParty

Method to

asnGetPartyList

Method to

asnGetImage

Method to

asnScheduleMeeting

Method to schedule a conference

asnUpdateMeeting

Method to update a scheduled conference

asnCancelMeeting

Method to cancel a scheduled conference

asnListScheduledMeetings

Method to cancel a scheduled conference

Events:

Name Description
asnSDPOffer

Event to

asnSDPAnswer

Event to

asnTrickleIce

Event to

asnGatheringIceCompleted

Event to

asnPartyAdded

Event to

asnPartyRemoved

Event to

asnPartyTalking

Event to

asnPartyChanged

Event to

Types:

Name Description
AsnConferenceErrors

AsnMuteOrRemoveReason

AsnMeetingRepeatPattern

Values for the different scheduler series types

AsnMeetingDays

Bitmask and dedicated values for specific days in a week (may be used as values for a bit mask or as dedicated value for a specific day)

AsnMeetingDayInMonth

Values for the montly repeat scheduler (every 1st. value)

AsnConferenceParty

AsnConferenceRoomDetails

AsnIceCandidate

AsnMeetingEntry

Properties of a scheduler entry

AsnRequestAuthTokenArgument

Argument for the asnRequestAuthToken method

AsnRequestAuthTokenResult

Result for the asnRequestAuthToken method

AsnJoinConferenceArgument

Argument for the asnJoinConference method

AsnLeaveConferenceArgument

Argument for the asnLeaveConference method

AsnLeaveConferenceResult

Result for the asnLeaveConference method

AsnConferenceKeepAliveArgument

Argument for the asnConferenceKeepAlive method

AsnConferenceKeepAliveResult

Result for the asnConferenceKeepAlive method

AsnConfigurePublishingArgument

Argument for the asnConfigurePublishing method

AsnConfigurePublishingResult

Result for the asnConfigurePublishing method

AsnSubscribeMediaArgument

Argument for the asnSubscribeMedia method

AsnSubscribeMediaResult

Result for the asnSubscribeMedia method

AsnUnsubscribeMediaArgument

Argument for the asnUnsubcribeMedia method

AsnUnsubscribeMediaResult

Result for the asnUnsubscribeMedia method

AsnConfigureMediaArgument

Argument for the asnConfigureMedia method

AsnConfigureMediaResult

Result for the asnConfigureMedia method

AsnRemovePartyArgument

Argument for the asnRemoveParty method

AsnRemovePartyResult

Result for the asnRemoveParty method

AsnGetPartyListArgument

Argument for the asnGetPartyList method

AsnGetImageArgument

Argument for the asnGetImage method

AsnGetImageResult

Result for the asnGetImage method

AsnScheduleMeetingResult

Result for the asnScheduleMeeting method

AsnUpdateMeetingResult

Result for the asnUpdateMeeting method

AsnCancelMeetingArgument

Argument for the asnCancelMeeting method

AsnCancelMeetingResult

Result for the asnCancelMeeting method

AsnListScheduledMeetingsArgument

Argument for the asnListScheduledMeetings method

AsnSDPOfferArgument

Argument for the asnSDPOffer method

AsnSDPAnswerArgument

Argument for the asnSDPAnswer method

AsnGatheringIceCompletedArgument

Argument for the asnGatheringIceCompleted method

AsnPartyTalkingArgument

Argument for the asnPartyTalking method

AsnPartyChangedArgument

Argument for the asnPartyChanged method

AsnConferenceParties

AsnIceCandidates

AsnMeetingEntries

AsnJoinConferenceResult

Result for the asnJoinConference method

AsnGetPartyListResult

Result for the asnGetPartyList method

AsnScheduleMeetingArgument

Argument for the asnScheduleMeeting method

AsnUpdateMeetingArgument

Argument for the asnUpdateMeeting method

AsnListScheduledMeetingsResult

Result for the asnListScheduledMeetings method

AsnTrickleIceArgument

Argument for the asnTrickleIce method

AsnPartyAddedArgument

Argument for the asnPartyAdded method

AsnPartyRemovedArgument

Argument for the asnPartyRemoved method

Version 6.4