*test_discuss_full,test_lint
This commit adds the audio and video conference feature to mail channels
and integrate it with the groupDM/guest features.
Adds new mp3 and ogg files (from task-2554674) for sound effects.
- Adds three new tables:
* `mail.channel.rtc.session` to manage the peerToPeer interactions
during rtc calls.
* `mail.ice.server` to provide ICE servers necessary to establish
peerToPeer connections with webRtc.
* `res.users.settings.volumes` to hold the partner-to-partner volume
settings, each partner can create one new setting per other
partner to configure the volume coming from those partners during
calls.
- changes res.config.settings:
* Adds new fields for the Twilio credentials to use their STUN/TURN
service.
- changes res.user.settings:
* Adds 4 fields for the push to talk and voice activation.
- changes mail.channel:
* Adds a new field `rtc_session_ids` that represents the active
participants in a rtc call on that channel.
- changes mail.channel.partner:
* Adds a new field `rtc_inviting_session_id` that represents the
rtcSession of the user that is inviting that channelPartner to a
call.
task-2366708
closes odoo/odoo#66611
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
66 lines
2.6 KiB
XML
66 lines
2.6 KiB
XML
<?xml version="1.0"?>
|
|
<odoo>
|
|
|
|
<record id="mail_channel_rtc_session_view_search" model="ir.ui.view">
|
|
<field name="name">mail.channel.rtc.session.search</field>
|
|
<field name="model">mail.channel.rtc.session</field>
|
|
<field name="arch" type="xml">
|
|
<search string="Search RTC session">
|
|
<field name="channel_partner_id"/>
|
|
<filter name="group_by_channel" string="Channel" domain="[]" context="{'group_by':'channel_id'}"/>
|
|
</search>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="mail_channel_rtc_session_view_tree" model="ir.ui.view">
|
|
<field name="name">mail.channel.rtc.session.tree</field>
|
|
<field name="model">mail.channel.rtc.session</field>
|
|
<field name="arch" type="xml">
|
|
<tree string="RTC Session">
|
|
<header>
|
|
<button name="action_disconnect" type="object" string="Disconnect"/>
|
|
</header>
|
|
<field name="id"/>
|
|
<field name="channel_partner_id"/>
|
|
<field name="channel_id"/>
|
|
<field name="write_date"/>
|
|
</tree>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="mail_channel_rtc_session_view_form" model="ir.ui.view">
|
|
<field name="name">mail.channel.rtc.session.form</field>
|
|
<field name="model">mail.channel.rtc.session</field>
|
|
<field name="arch" type="xml">
|
|
<form string="RTC Session">
|
|
<sheet>
|
|
<div class="oe_title">
|
|
<h1><field name="channel_partner_id"/></h1>
|
|
</div>
|
|
<group>
|
|
<group string="Identity">
|
|
<field name="channel_id"/>
|
|
<field name="partner_id"/>
|
|
<field name="guest_id"/>
|
|
</group>
|
|
<group string="State">
|
|
<field name="is_screen_sharing_on"/>
|
|
<field name="is_camera_on"/>
|
|
<field name="is_muted"/>
|
|
<field name="is_deaf"/>
|
|
</group>
|
|
</group>
|
|
</sheet>
|
|
</form>
|
|
</field>
|
|
</record>
|
|
|
|
<record id="mail_channel_rtc_session_action" model="ir.actions.act_window">
|
|
<field name="name">RTC sessions</field>
|
|
<field name="res_model">mail.channel.rtc.session</field>
|
|
<field name="context">{'search_default_group_by_channel': True}</field>
|
|
<field name="view_mode">tree,form</field>
|
|
</record>
|
|
|
|
</odoo>
|