Skip to main content

Purpose

Talking Shops is the CRM destination. Once a call is successfully qualified, the pusher creates a follow-up task so a human sales team member can continue the lead.

When Records Are Pushed

talkingshops_pusher.py reads:
After a successful push, the call status becomes:

Scheduler Integration

scheduler.py runs the pusher loop every:
You can also run a one-off push:

Authentication

Default auth header:
If the API expects a prefix:

Customer Linking

Before creating a task, the pusher tries to find a customer by mobile number. Derived default customers endpoint:
Override:
If the customer does not exist, the pusher tries to create one. If linking fails, the task gets an unlinked-customer tag.

Task Payload

The task includes:
  • title: Follow up with {lead_name}
  • titleType: followup
  • description: summary of lead, phone, source, product, budget, location, call ID, and lead ID
  • priority: derived from budget
  • dueDate: next day
  • tags: ai-caller, source platform, qualified-lead
  • metadata: call ID, lead ID, phone, product interest, budget, location, source, full qualification JSON
  • Optional owner fields
  • Optional related customer fields

Priority Mapping

Budget parsing understands common Indian terms such as lakh, lac, lk, crore, and cr.

Owner Assignment

Static owner:
Round-robin owners:
Round-robin selection uses the call ID.

Dry Run

Dry run logs the redacted headers and payload and marks the operation successful without sending the HTTP request.

Push Failure Behavior

When true, failed pushes mark the call failed. When false, the call remains called so it can be retried by the next pusher cycle.