changes
This commit is contained in:
@@ -376,6 +376,34 @@ class RcConfig(models.Model):
|
||||
"""Return the first connected config, or False."""
|
||||
return self.search([('state', '=', 'connected')], limit=1)
|
||||
|
||||
def _send_sms(self, to_number, message_text, from_number=None):
|
||||
"""Send an SMS via the RingCentral REST API.
|
||||
|
||||
:param str to_number: Recipient phone number (E.164 format).
|
||||
:param str message_text: SMS body (max 1000 characters).
|
||||
:param str from_number: Sender phone number. Defaults to the
|
||||
company phone configured in Odoo.
|
||||
:return: API response dict.
|
||||
:raises UserError: If the RingCentral config is not connected.
|
||||
"""
|
||||
self.ensure_one()
|
||||
if not from_number:
|
||||
from_number = self.env.company.phone
|
||||
if not from_number:
|
||||
raise UserError(
|
||||
_('No sender phone number configured. Set a phone number '
|
||||
'on your company or pass from_number explicitly.')
|
||||
)
|
||||
payload = {
|
||||
'to': [{'phoneNumber': to_number}],
|
||||
'from': {'phoneNumber': from_number},
|
||||
'text': message_text[:1000],
|
||||
}
|
||||
return self._api_post(
|
||||
'/restapi/v1.0/account/~/extension/~/sms',
|
||||
data=payload,
|
||||
)
|
||||
|
||||
def action_rematch_contacts(self):
|
||||
"""Re-run contact matching on all calls without a linked partner."""
|
||||
self.ensure_one()
|
||||
|
||||
Reference in New Issue
Block a user