Video conference¶
Todo
Docstrings (module, models, utilities, plugins, exceptions)
Models¶
- class indico.modules.vc.models.vc_rooms.VCRoom(**kwargs)¶
A simple constructor that allows initialization from kwargs.
Sets attributes on the constructed instance using the names and values in
kwargs
.Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.
- created_by_id¶
ID of the creator
- created_by_user¶
The user who created the videoconference room
- created_dt¶
Creation timestamp of the videoconference room
- data¶
videoconference plugin-specific data
- id¶
Videoconference room ID
- property locator¶
- modified_dt¶
Modification timestamp of the videoconference room
- name¶
Name of the videoconference room
- property plugin¶
- query: IndicoBaseQuery¶
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- status¶
Status of the videoconference room
- type¶
Type of the videoconference room
- class indico.modules.vc.models.vc_rooms.VCRoomEventAssociation(**kwargs)¶
A simple constructor that allows initialization from kwargs.
Sets attributes on the constructed instance using the names and values in
kwargs
.Only keys that are present as attributes of the instance’s class are allowed. These could be, for example, any mapped columns or relationships.
- contribution_id¶
- data¶
videoconference plugin-specific data
- delete(user, delete_all=False)¶
Delete a VC room from an event.
If the room is not used anywhere else, the room itself is also deleted.
- Parameters
user – the user performing the deletion
delete_all – if True, the room is detached from all events and deleted.
- event¶
The associated Event
- event_id¶
ID of the event
- classmethod find_for_event(event, include_hidden=False, include_deleted=False, only_linked_to_event=False, **kwargs)¶
Return a Query that retrieves the videoconference rooms for an event.
- Parameters
event – an indico Event
only_linked_to_event – only retrieve the vc rooms linked to the whole event
kwargs – extra kwargs to pass to
filter_by()
- classmethod get_linked_for_event(event)¶
Get a dict mapping link objects to event vc rooms.
- id¶
Association ID
- link_object¶
- link_type¶
Type of the object the vc_room is linked to
- linked_block¶
The linked session block (if the VC room is attached to a block)
- linked_contrib¶
The linked contribution (if the VC room is attached to a contribution)
- linked_event¶
The linked event (if the VC room is attached to the event itself)
- linked_event_id¶
- property locator¶
- query: IndicoBaseQuery¶
A SQLAlchemy query for a model. Equivalent to
db.session.query(Model)
. Can be customized per-model by overridingquery_class
.Warning
The query interface is considered legacy in SQLAlchemy. Prefer using
session.execute(select())
instead.
- classmethod register_link_events()¶
- session_block_id¶
- show¶
If the vc room should be shown on the event page
- vc_room¶
The associated :class:VCRoom
- vc_room_id¶
ID of the videoconference room
Utilities¶
- indico.modules.vc.util.find_event_vc_rooms(from_dt=None, to_dt=None, distinct=False)¶
Find VC rooms matching certain criteria.
- Parameters
from_dt – earliest event/contribution to include
to_dt – latest event/contribution to include
distinct – if True, never return the same
(event, vcroom)
more than once (even if it’s linked more than once to that event)
- indico.modules.vc.util.get_linked_to_description(obj)¶
- indico.modules.vc.util.get_managed_vc_plugins(user)¶
Return the plugins the user can manage.
- indico.modules.vc.util.get_vc_plugins()¶
Return a dict containing the available videoconference plugins.
- indico.modules.vc.util.resolve_title(obj)¶
Plugins¶
- class indico.modules.vc.plugins.VCPluginMixin¶
- acl_settings = {'acl', 'managers'}¶
- can_manage_vc(user)¶
Check if a user has management rights on this VC system.
- can_manage_vc_room(user, room)¶
Check if a user can manage a vc room.
- can_manage_vc_rooms(user, event)¶
Check if a user can manage vc rooms on an event.
- category = 'Videoconference'¶
- clone_room(old_event_vc_room, link_object)¶
Clone the room, returning a new
VCRoomEventAssociation
.- Parameters
old_event_vc_room – the original
VCRoomEventAssociation
link_object – the new object the association will be tied to
- Returns
the new
VCRoomEventAssociation
- create_form(event, existing_vc_room=None, existing_event_vc_room=None)¶
Create the videoconference room form.
- Parameters
event – the event the videoconference room is for
existing_vc_room – a vc_room from which to retrieve data for the form
- Returns
an instance of an
IndicoForm
subclass
- create_room(vc_room, event)¶
- default_settings = {'notification_emails': []}¶
- friendly_name = None¶
the readable name of the VC plugin
- get_extra_delete_msg(vc_room, event_vc_room)¶
Return a custom message to show in the confirmation dialog when deleting a VC room.
- Parameters
vc_room – the VC room object
event_vc_room – the association of an event and a VC room
- Returns
a string (may contain HTML) with the message to display
- get_notification_bcc_list(action, vc_room, event)¶
- get_notification_cc_list(action, vc_room, event)¶
- get_vc_room_attach_form_defaults(event)¶
- get_vc_room_form_defaults(event)¶
- property icon_url¶
- init()¶
- property logo_url¶
- render_buttons(vc_room, event_vc_room, **kwargs)¶
Render a list of plugin specific buttons (eg: Join URL, etc) in the management area.
- Parameters
vc_room – the VC room object
event_vc_room – the association of an event and a VC room
kwargs – arguments passed to the template
- render_event_buttons(vc_room, event_vc_room, **kwargs)¶
Render a list of plugin specific buttons (eg: Join URL, etc) in the event page.
- Parameters
vc_room – the VC room object
event_vc_room – the association of an event and a VC room
kwargs – arguments passed to the template
- render_form(**kwargs)¶
Render the videoconference room form.
- Parameters
kwargs – arguments passed to the template
- render_info_box(vc_room, event_vc_room, event, **kwargs)¶
Render the information shown in the expandable box of a VC room row.
- Parameters
vc_room – the VC room object
event_vc_room – the association of an event and a VC room
event – the event with the current VC room attached to it
kwargs – arguments passed to the template
- render_manage_event_info_box(vc_room, event_vc_room, event, **kwargs)¶
Render the information shown in the expandable box on a VC room in the management area.
- Parameters
vc_room – the VC room object
event_vc_room – the association of an event and a VC room
event – the event with the current VC room attached to it
kwargs – arguments passed to the template
- property service_name¶
- settings_form¶
alias of
VCPluginSettingsFormBase
- update_data_association(event, vc_room, event_vc_room, data)¶
- update_data_vc_room(vc_room, data, is_new=False)¶
- vc_room_attach_form = None¶
the
IndicoForm
to use for the videoconference room attach form
- vc_room_form = None¶
the
IndicoForm
to use for the videoconference room form