TIP: You can type at any time to perform a new search.
Mail Whatsapp Gateway
mail_gateway_whatsapp · OCA/social
- Repository
- OCA/social · module folder · Try on Runboat
- Module version
- 2.1.5
- Category
- Uncategorized
- Folder size
- 0.42 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/social
- Last tracking update
- 2026-08-11 17:15:19
- Authors
- Odoo Community Association (OCA), Creu Blanca, Dixmit
- Maintainers
- Odoo Community Association (OCA), Creu Blanca, Dixmit
- Committers
- Pedro M. Baeza, Carlos Lopez, CarlosRoca13, Weblate, OCA-git-bot, oca-ci, CristianoMafraJunior, Julio Santa Cruz
- Odoo dependencies
- Python dependencies
- requests_toolbelt
- System dependencies
- None
- Required by
- None
- Description
This module allows to respond whatsapp chats. This way, a group of users can respond customers or any other set of partners in an integrated way.
Code Analysis ⓘ
Views touched (7)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
ir_actions_server_view_form |
ir.actions.server.view.form.inherit.mail_gateway_whatsapp | ir.actions.server | form | Inherits base.view_server_action_form |
mail_compose_gateway_message_form_view |
mail.compose.gateway.message | form | Inherits mail_gateway.mail_compose_gateway_message_form_view | |
mail_gateway_form_view |
mail.gateway.form (in mail_gateway_telegram) | mail.gateway | form | Inherits mail_gateway.mail_gateway_form_view |
view_mail_whatsapp_template_form |
view.mail.whatsapp.template.form | mail.whatsapp.template | form | New |
view_mail_whatsapp_template_search |
view.mail.whatsapp.template.search | mail.whatsapp.template | search | New |
view_mail_whatsapp_template_tree |
view.mail.whatsapp.template.tree | mail.whatsapp.template | list | New |
whatsapp_composer_form_view |
whatsapp.composer.form (in mail_gateway_whatsapp) | whatsapp.composer | form | New |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (12)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (4)
-
stateSelectionondelete={'whatsapp': 'cascade'}selection_add=[('whatsapp', 'WhatsApp message')] -
whatsapp_gateway_idMany2one → mail.gatewaycomodel_name='mail.gateway'domain=[('gateway_type', '=', 'whatsapp')] -
whatsapp_partnerChar -
whatsapp_template_idMany2one → mail.whatsapp.templatecomodel_name='mail.whatsapp.template'domain="[('gateway_id', '=', whatsapp_gateway_id),('model_id', '=', model_id)]"
No public methods.
New fields (1)
-
whatsapp_template_idMany2one → mail.whatsapp.templatedomain="[\n ('state', '=', 'approved'),\n ('is_supported', '=', True),\n ('model', '=', model)\n ]" args: 'mail.whatsapp.template'
-
onchange_whatsapp_template_id(self)@api.onchange('whatsapp_template_id')
New fields (7)
-
gateway_typeSelectionondelete={'whatsapp': 'cascade'}selection_add=[('whatsapp', 'WhatsApp')] -
whatsapp_account_idChar -
whatsapp_from_phoneChar -
whatsapp_security_keyChar -
whatsapp_template_countIntegercompute='_compute_whatsapp_template_count' -
whatsapp_template_idsOne2many → mail.whatsapp.templateargs: 'mail.whatsapp.template', 'gateway_id' -
whatsapp_versionChardefault='23.0'
-
button_import_whatsapp_template(self)
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (16)
-
bodyTextrequired=True -
button_idsOne2many → mail.whatsapp.template.buttonstring='Buttons' args: 'mail.whatsapp.template.button', 'template_id' -
categorySelectionrequired=True args: [('authentication', 'Authentication'), ('marketing', 'Marketing'), ('utility', 'Utility')] -
company_idMany2one → res.companyrelated='gateway_id.company_id'store=True args: 'res.company' -
footerChar -
gateway_idMany2one → mail.gatewaydomain=[('gateway_type', '=', 'whatsapp')]ondelete='cascade'required=True args: 'mail.gateway' -
headerChar -
is_supportedBooleancopy=False -
languageSelectionrequired=True args: supported_languages -
modelCharrelated='model_id.model'store=Truestring='Related model' -
model_idMany2one → ir.modelcomodel_name='ir.model'default=<expr>ondelete='cascade'required=Truestring='Applies to' -
nameCharrequired=True -
stateSelectiondefault='draft'required=True args: [('draft', 'Draft'), ('pending', 'Pending'), ('approved', 'Approved'), ('in_appeal', 'In Appeal'), ('rejected', 'Rejected'), ('pending_deletion', 'Pending Deletion'), ('deleted', 'Deleted'), ('disabled', 'Disabled'), ('paused', 'Paused'), ('limit_exceeded', 'Limit Exceeded'), ('archived', 'Archived')] -
template_nameCharcompute='_compute_template_name'copy=Falsestore=True -
template_uidCharcopy=Falsereadonly=True -
variable_idsOne2many → mail.whatsapp.template.variablecompute='_compute_variable_ids'precompute=Truereadonly=Falsestore=Truestring='Variables' args: 'mail.whatsapp.template.variable', 'template_id'
-
button_back2draft(self) -
button_export_template(self) -
button_sync_template(self) -
prepare_value_to_send(self) -
render_body_message(self)
New fields (8)
-
button_typeSelectiondefault='quick_reply'required=Truestring='Type' args: [('quick_reply', 'Quick Reply'), ('url', 'Visit Website'), ('phone_number', 'Call Number')] -
call_numberChar -
nameCharsize=25string='Button Text' -
sequenceInteger -
template_idMany2one → mail.whatsapp.templatecomodel_name='mail.whatsapp.template'ondelete='cascade'required=True -
url_typeSelectiondefault='static' args: [('static', 'Static'), ('dynamic', 'Dynamic')] -
variable_idsOne2many → mail.whatsapp.template.variablecompute='_compute_variable_ids'copy=Trueprecompute=Truestore=True args: 'mail.whatsapp.template.variable', 'button_id' -
website_urlChar
-
check_variable_ids(self)
New fields (7)
-
button_idMany2one → mail.whatsapp.template.buttonondelete='cascade' args: 'mail.whatsapp.template.button' -
field_nameCharstring='Field' -
line_typeSelectionrequired=True args: [('header', 'Header'), ('body', 'Body'), ('button', 'Button')] -
modelCharrelated='template_id.model'string='Model Name' -
nameCharrequired=Truestring='Placeholder' -
sample_valueChardefault='Sample Value'required=True -
template_idMany2one → mail.whatsapp.templatecomodel_name='mail.whatsapp.template'ondelete='cascade'required=True
No public methods.
New fields (0)
No new fields.
Public methods (0)No public methods.
New fields (8)
-
bodyTextargs: 'Message' -
find_gatewayBoolean -
gateway_idMany2one → mail.gatewaydomain=[('gateway_type', '=', 'whatsapp')]required=True args: 'mail.gateway' -
is_required_templateBooleancompute='_compute_is_required_template' -
number_field_nameChar -
res_idIntegerargs: 'Document ID' -
res_modelCharargs: 'Document Model Name' -
template_idMany2one → mail.whatsapp.templatedomain="[\n ('gateway_id', '=', gateway_id),\n ('state', '=', 'approved'),\n ('is_supported', '=', True),\n ('model', '=', res_model)\n ]" args: 'mail.whatsapp.template'
-
action_send_whatsapp(self) -
action_view_whatsapp(self) -
default_get(self, fields)@api.model -
onchange_gateway_id(self)@api.onchange('gateway_id') -
onchange_template_id(self)@api.onchange('template_id')
Loading…
Loading…
- Status
- Open migration PR — not merged yet for this version
- CI status
- checks failing
- Open since
- 80 days ago
- Last activity
- 42 days ago
- Repository
- OCA/mail
- Pull request
- [MIG] mail_gateway_whatsapp: Migration to 19.0 (#203)