feat: Open modal in realtime for incoming call
This commit is contained in:
parent
d382f1d470
commit
03c3bd5f4a
@ -2,8 +2,10 @@ import frappe
|
||||
|
||||
@frappe.whitelist()
|
||||
def get_contact_doc(phone_number):
|
||||
contacts = frappe.get_all('Contact', filters={
|
||||
'phone': phone_number
|
||||
phone_number = phone_number[-10:]
|
||||
contacts = frappe.get_all('Contact', or_filters={
|
||||
'phone': ['like', '%{}%'.format(phone_number)],
|
||||
'mobile_no': ['like', '%{}%'.format(phone_number)]
|
||||
}, fields=['*'])
|
||||
|
||||
if contacts:
|
||||
|
12
erpnext/crm/call_summary/exotel_call_handler.py
Normal file
12
erpnext/crm/call_summary/exotel_call_handler.py
Normal file
@ -0,0 +1,12 @@
|
||||
import frappe
|
||||
|
||||
@frappe.whitelist(allow_guest=True)
|
||||
def handle_request(*args, **kwargs):
|
||||
r = frappe.request
|
||||
|
||||
payload = r.get_data()
|
||||
|
||||
print(r.args.to_dict())
|
||||
print(payload)
|
||||
|
||||
frappe.publish_realtime('incoming_call', r.args.to_dict())
|
@ -1,6 +1,6 @@
|
||||
frappe.call_summary_dialog = class {
|
||||
class CallSummaryDialog {
|
||||
constructor(opts) {
|
||||
this.number = '+91234444444';
|
||||
this.number = opts.number;
|
||||
this.make();
|
||||
}
|
||||
|
||||
@ -15,10 +15,18 @@ frappe.call_summary_dialog = class {
|
||||
if (!res) {
|
||||
this.$modal_body.html('Unknown Contact');
|
||||
} else {
|
||||
this.$modal_body.html(`${res.first_name}`);
|
||||
this.$modal_body.append(`${frappe.utils.get_form_link('Contact', res.name, true)}`)
|
||||
}
|
||||
});
|
||||
d.show();
|
||||
}
|
||||
}
|
||||
|
||||
};
|
||||
$(document).on('app_ready', function() {
|
||||
frappe.realtime.on('incoming_call', data => {
|
||||
const number = data.CallFrom;
|
||||
frappe.call_summary_dialog = new CallSummaryDialog({
|
||||
number
|
||||
});
|
||||
});
|
||||
});
|
||||
|
Loading…
x
Reference in New Issue
Block a user