Python TypeError:必须是str,而不是mail.mass\u mailing.list
我正在制作一个模块的奥多发送短信从邮件列表。 我已运行此代码,但有一个错误Python TypeError:必须是str,而不是mail.mass\u mailing.list,python,xml,odoo,Python,Xml,Odoo,我正在制作一个模块的奥多发送短信从邮件列表。 我已运行此代码,但有一个错误 contact_list_ids = fields.Many2many('mail.mass_mailing.list', 'phone_number', string='Liste de diffusion') messages_sms = fields.Text(string="message", required=True) # send SMS with GET method @api.multi def s
contact_list_ids = fields.Many2many('mail.mass_mailing.list', 'phone_number', string='Liste de diffusion')
messages_sms = fields.Text(string="message", required=True)
# send SMS with GET method
@api.multi
def send_sms(self):
for list in self.contact_list_ids:
for contact in list:
final_url = (
URL +
'&to=' +contact +
'&sms=' + self.messages_sms
)
r = requests.get(final_url)
if not r:
return ERROR_API
return r.text
错误:
文件“c:\program files(x86)\odoo 12.0\server\addons\KeoMarketing\models\messages\u sms.py”,第36行,发送\u sms
“&sms=”+self.messages\u sms
TypeError:必须是str,而不是mail.mass\u mailing.list
由于无法将str与
mail.mass\u mailing.list
记录连接,因此出现类型错误
'&to=' + contact
尝试传递电话号码(或用于存储电话号码的任何字段):
您可以检查以下Twilio
示例:
from twilio.rest import Client
class CustomClass(models.Model):
contact_list_ids = fields.Many2many('mail.mass_mailing.list', 'phone_number', string='Liste de diffusion')
messages_sms = fields.Text(string="message", required=True)
@api.multi
def send_sms(self):
self.ensure_one()
account_sid = ''
auth_token = ''
client = Client(account_sid, auth_token)
for list in self.contact_list_ids:
for contact in list.contact_ids:
client.messages \
.create(
body=self.messages_sms,
from_=self.env.user.partner_id.mobile,
status_callback='http://postb.in/1234abcd',
to=contact.phone_number
)
class MailMassMailingContact(models.Model):
_inherit = 'mail.mass_mailing.contact'
phone_number = fields.Char()
- 用于发送SMS的电话号码存储在当前用户的相关合作伙伴中
- 我继承了
为每个联系人添加电话号码mail.mass\u mailing.contact
邮件.mass\u mailing.list
记录连接,因此出现类型错误
'&to=' + contact
尝试传递电话号码(或用于存储电话号码的任何字段):
您可以检查以下Twilio
示例:
from twilio.rest import Client
class CustomClass(models.Model):
contact_list_ids = fields.Many2many('mail.mass_mailing.list', 'phone_number', string='Liste de diffusion')
messages_sms = fields.Text(string="message", required=True)
@api.multi
def send_sms(self):
self.ensure_one()
account_sid = ''
auth_token = ''
client = Client(account_sid, auth_token)
for list in self.contact_list_ids:
for contact in list.contact_ids:
client.messages \
.create(
body=self.messages_sms,
from_=self.env.user.partner_id.mobile,
status_callback='http://postb.in/1234abcd',
to=contact.phone_number
)
class MailMassMailingContact(models.Model):
_inherit = 'mail.mass_mailing.contact'
phone_number = fields.Char()
- 用于发送SMS的电话号码存储在当前用户的相关合作伙伴中
- 我继承了
为每个联系人添加电话号码mail.mass\u mailing.contact