fix: check exotel number
This commit is contained in:
parent
591e126911
commit
49de7c92a5
@ -9,7 +9,8 @@
|
|||||||
"user",
|
"user",
|
||||||
"user_name",
|
"user_name",
|
||||||
"column_break_hdec",
|
"column_break_hdec",
|
||||||
"mobile_no"
|
"mobile_no",
|
||||||
|
"exotel_number"
|
||||||
],
|
],
|
||||||
"fields": [
|
"fields": [
|
||||||
{
|
{
|
||||||
@ -41,11 +42,16 @@
|
|||||||
"in_list_view": 1,
|
"in_list_view": 1,
|
||||||
"in_standard_filter": 1,
|
"in_standard_filter": 1,
|
||||||
"label": "User Name"
|
"label": "User Name"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"fieldname": "exotel_number",
|
||||||
|
"fieldtype": "Data",
|
||||||
|
"label": "Exotel Number"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"index_web_pages_for_search": 1,
|
"index_web_pages_for_search": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2025-01-11 16:20:21.877873",
|
"modified": "2025-01-15 16:19:21.965415",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "FCRM",
|
"module": "FCRM",
|
||||||
"name": "CRM Exotel Agent",
|
"name": "CRM Exotel Agent",
|
||||||
|
|||||||
@ -66,6 +66,12 @@ def make_a_call(to_number, from_number=None, caller_id=None, link_to_document=No
|
|||||||
if not from_number:
|
if not from_number:
|
||||||
from_number = frappe.get_value("CRM Exotel Agent", {"user": frappe.session.user}, "mobile_no")
|
from_number = frappe.get_value("CRM Exotel Agent", {"user": frappe.session.user}, "mobile_no")
|
||||||
|
|
||||||
|
if not caller_id:
|
||||||
|
caller_id = frappe.get_value("CRM Exotel Agent", {"user": frappe.session.user}, "exotel_number")
|
||||||
|
|
||||||
|
if caller_id and caller_id not in get_all_exophones():
|
||||||
|
frappe.throw(_("Exotel Number {0} is not valid").format(caller_id), title=_("Invalid Exotel Number"))
|
||||||
|
|
||||||
if not from_number:
|
if not from_number:
|
||||||
frappe.throw(
|
frappe.throw(
|
||||||
_("You do not have mobile number set in your Exotel Agent"), title=_("Mobile Number Missing")
|
_("You do not have mobile number set in your Exotel Agent"), title=_("Mobile Number Missing")
|
||||||
@ -119,6 +125,15 @@ def get_exotel_endpoint(action=None):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def get_all_exophones():
|
||||||
|
endpoint = get_exotel_endpoint("IncomingPhoneNumbers.json")
|
||||||
|
response = requests.get(endpoint)
|
||||||
|
return [
|
||||||
|
phone.get("IncomingPhoneNumber", {}).get("PhoneNumber")
|
||||||
|
for phone in response.json().get("IncomingPhoneNumbers", [])
|
||||||
|
]
|
||||||
|
|
||||||
|
|
||||||
def get_status_updater_url():
|
def get_status_updater_url():
|
||||||
from frappe.utils.data import get_url
|
from frappe.utils.data import get_url
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user