Bläddra i källkod

[fix] Header for sms send request (#4417)

version-14
Nabin Hait 7 år sedan
committed by GitHub
förälder
incheckning
010a32d95a
Ingen känd nyckel hittad för denna signaturen i databasen GPG-nyckel ID: 4AEE18F83AFDEB23
4 ändrade filer med 24 tillägg och 11 borttagningar
  1. +1
    -1
      frappe/core/doctype/sms_settings/sms_settings.json
  2. +20
    -7
      frappe/core/doctype/sms_settings/sms_settings.py
  3. +1
    -1
      frappe/core/doctype/user/user.py
  4. +2
    -2
      frappe/twofactor.py

+ 1
- 1
frappe/core/doctype/sms_settings/sms_settings.json Visa fil

@@ -202,7 +202,7 @@
"issingle": 1,
"istable": 0,
"max_attachments": 0,
"modified": "2017-10-23 12:57:20.943845",
"modified": "2017-11-01 12:57:20.943845",
"modified_by": "Administrator",
"module": "Core",
"name": "SMS Settings",


+ 20
- 7
frappe/core/doctype/sms_settings/sms_settings.py Visa fil

@@ -64,18 +64,17 @@ def send_sms(receiver_list, msg, sender_name = '', success_msg = True):

def send_via_gateway(arg):
ss = frappe.get_doc('SMS Settings', 'SMS Settings')
headers = get_headers(ss)

args = {ss.message_parameter: arg.get('message')}
headers={'Accept': "text/plain, text/html, */*"}
for d in ss.get("parameters"):
if d.header == 1:
headers.update({d.parameter: d.value})
continue
args[d.parameter] = d.value
if not d.header:
args[d.parameter] = d.value

success_list = []
for d in arg.get('receiver_list'):
args[ss.receiver_parameter] = d
status = send_request(ss.sms_gateway_url, headers, args, ss.use_post)
status = send_request(ss.sms_gateway_url, args, headers, ss.use_post)

if 200 <= status < 300:
success_list.append(d)
@@ -86,9 +85,23 @@ def send_via_gateway(arg):
if arg.get('success_msg'):
frappe.msgprint(_("SMS sent to following numbers: {0}").format("\n" + "\n".join(success_list)))

def get_headers(sms_settings=None):
if not sms_settings:
sms_settings = frappe.get_doc('SMS Settings', 'SMS Settings')

def send_request(gateway_url, headers, params, use_post=False):
headers={'Accept': "text/plain, text/html, */*"}
for d in sms_settings.get("parameters"):
if d.header == 1:
headers.update({d.parameter: d.value})

return headers

def send_request(gateway_url, params, headers=None, use_post=False):
import requests

if not headers:
headers = get_headers()

if use_post:
response = requests.post(gateway_url, headers=headers, data=params)
else:


+ 1
- 1
frappe/core/doctype/user/user.py Visa fil

@@ -930,7 +930,7 @@ def send_token_via_sms(tmp_id,phone_no=None,user=None):
return False

args[ss.receiver_parameter] = usr_phone
status = send_request(ss.sms_gateway_url, args)
status = send_request(ss.sms_gateway_url, args, use_post=ss.use_post)

if 200 <= status < 300:
frappe.cache().delete(tmp_id + '_token')


+ 2
- 2
frappe/twofactor.py Visa fil

@@ -255,7 +255,6 @@ def get_link_for_qrcode(user, totp_uri):

def send_token_via_sms(otpsecret, token=None, phone_no=None):
'''Send token as sms to user.'''
otp_issuer = frappe.db.get_value('System Settings', 'System Settings', 'otp_issuer_name')
try:
from frappe.core.doctype.sms_settings.sms_settings import send_request
except:
@@ -280,7 +279,8 @@ def send_token_via_sms(otpsecret, token=None, phone_no=None):

sms_args = {
'params': args,
'gateway_url': ss.sms_gateway_url
'gateway_url': ss.sms_gateway_url,
'use_post': ss.use_post
}
enqueue(method=send_request, queue='short', timeout=300, event=None,
async=True, job_name=None, now=False, **sms_args)


Laddar…
Avbryt
Spara