💰
أبحاث المبيعات
يوفر منهجية وأفضل الممارسات للبحث عن العملاء المحتملين في سياق الأعمال.
💼 الأعمالمتوسط
البرومبت
---
name: sales-research
description: توفر هذه المهارة منهجية وأفضل الممارسات للبحث عن العملاء المحتملين للمبيعات.
---
# بحث المبيعات
## نظرة عامة
توفر هذه المهارة منهجية وأفضل الممارسات للبحث عن العملاء المحتملين للمبيعات. وهي تغطي البحث عن الشركات، وتوصيف جهات الاتصال، واكتشاف الإشارات لاستخلاص معلومات قابلة للتنفيذ.
## الاستخدام
يستخدم الوكلاء الفرعيون company-researcher و contact-researcher هذه المهارة عند:
- البحث عن عملاء محتملين جدد
- العثور على معلومات الشركة
- توصيف جهات الاتصال الفردية
- اكتشاف إشارات الشراء
## منهجية البحث
### قائمة مراجعة البحث عن الشركات
1. **الملف الشخصي الأساسي**
- اسم الشركة، الصناعة، الحجم (الموظفون، الإيرادات)
- المقر الرئيسي والمواقع الرئيسية
- تاريخ التأسيس، مرحلة النمو
2. **التطورات الأخيرة**
- إعلانات التمويل (آخر 12 شهرًا)
- نشاط الاندماج والاستحواذ (M&A)
- تغييرات القيادة
- إطلاق المنتجات
3. **Tech Stack**
- التقنيات المعروفة (BuiltWith, StackShare)
- إعلانات الوظائف التي تذكر الأدوات
- شراكات التكامل
4. **الإشارات**
- إعلانات الوظائف (التوسع = فرصة)
- مراجعات Glassdoor (نقاط الألم)
- الإشارات الإخبارية (السياق)
- نشاط وسائل التواصل الاجتماعي
### قائمة مراجعة البحث عن جهات الاتصال
1. **الخلفية المهنية**
- الدور الحالي ومدة الخدمة
- الشركات والأدوار السابقة
- التعليم
2. **مؤشرات التأثير**
- هيكل التقارير
- سلطة اتخاذ القرار
- ملكية الميزانية
3. **نقاط جذب المشاركة**
- منشورات LinkedIn الأخيرة
- المقالات المنشورة
- المشاركات الخطابية
- الاتصالات المشتركة
## الموارد
- `resources/signal-indicators.md` - تصنيف إشارات الشراء
- `resources/research-checklist.md` - قائمة مراجعة البحث الكاملة
## السكربتات
- `scripts/company-enricher.py` - تجميع بيانات الشركة من مصادر متعددة
- `scripts/linkedin-parser.py` - هيكلة بيانات ملف LinkedIn الشخصي
FILE:company-enricher.py
#!/usr/bin/env python3
"""
company-enricher.py - تجميع بيانات الشركة من مصادر متعددة
المدخلات:
- company_name: string
- domain: string (اختياري)
المخرجات:
- profile:
name: string
industry: string
size: string
funding: string
tech_stack: [string]
recent_news: [news items]
التبعيات:
- requests, beautifulsoup4
"""
# المتطلبات: requests, beautifulsoup4
import json
from typing import Any
from dataclasses import dataclass, asdict
from datetime import datetime
@dataclass
class NewsItem:
title: str
date: str
source: str
url: str
summary: str
@dataclass
class CompanyProfile:
name: str
domain: str
industry: str
size: str
location: str
founded: str
funding: str
tech_stack: list[str]
recent_news: list[dict]
competitors: list[str]
description: str
def search_company_info(company_name: str, domain: str = None) -> dict:
"""
البحث عن معلومات الشركة الأساسية.
في الإنتاج، ستستدعي هذه الدالة واجهات برمجة التطبيقات مثل Clearbit، Crunchbase، إلخ.
"""
# TODO: تنفيذ استدعاءات API الفعلية
# هيكل الإرجاع المؤقت
return {
"name": company_name,
"domain": domain or f"{company_name.lower().replace(' ', '')}.com",
"industry": "Technology", # ستأتي من API
"size": "Unknown",
"location": "Unknown",
"founded": "Unknown",
"description": f"Information about {company_name}"
}
def search_funding_info(company_name: str) -> dict:
"""
البحث عن معلومات التمويل.
في الإنتاج، ستستدعي Crunchbase، PitchBook، إلخ.
"""
# TODO: تنفيذ استدعاءات API الفعلية
return {
"total_funding": "Unknown",
"last_round": "Unknown",
"last_round_date": "Unknown",
"investors": []
}
def search_tech_stack(domain: str) -> list[str]:
"""
اكتشاف حزمة التقنيات (tech stack).
في الإنتاج، ستستدعي BuiltWith، Wappalyzer، إلخ.
"""
# TODO: تنفيذ استدعاءات API الفعلية
return []
def search_recent_news(company_name: str, days: int = 90) -> list[dict]:
"""
البحث عن الأخبار الأخيرة حول الشركة.
في الإنتاج، ستستدعي واجهات برمجة تطبيقات الأخبار.
"""
# TODO: تنفيذ استدعاءات API الفعلية
return []
def main(
company_name: str,
domain: str = None
) -> dict[str, Any]:
"""
تجميع بيانات الشركة من مصادر متعددة.
الوسائط:
company_name: اسم الشركة للبحث عنها
domain: نطاق الشركة (اختياري، سيتم استنتاجه)
الإرجاع:
قاموس يحتوي على ملف تعريف الشركة بما في ذلك الصناعة، الحجم، التمويل، حزمة التقنيات، الأخبار
"""
# الحصول على معلومات الشركة الأساسية
basic_info = search_company_info(company_name, domain)
# الحصول على معلومات التمويل
funding_info = search_funding_info(company_name)
# اكتشاف حزمة التقنيات
company_domain = basic_info.get("domain", domain)
tech_stack = search_tech_stack(company_domain) if company_domain else []
# الحصول على الأخبار الأخيرة
news = search_recent_news(company_name)
# تجميع الملف الشخصي
profile = CompanyProfile(
name=basic_info["name"],
domain=basic_info["domain"],
industry=basic_info["industry"],
size=basic_info["size"],
location=basic_info["location"],
founded=basic_info["founded"],
funding=funding_info.get("total_funding", "Unknown"),
tech_stack=tech_stack,
recent_news=news,
competitors=[], # سيتم إثراؤها من تحليل الصناعة
description=basic_info["description"]
)
return {
"profile": asdict(profile),
"funding_details": funding_info,
"enriched_at": datetime.now().isoformat(),
"sources_checked": ["company_info", "funding", "tech_stack", "news"]
}
if __name__ == "__main__":
import sys
# مثال على الاستخدام
result = main(
company_name="DataFlow Systems",
domain="dataflow.io"
)
print(json.dumps(result, indent=2))
FILE:linkedin-parser.py
#!/usr/bin/env python3
"""
linkedin-parser.py - هيكلة بيانات ملف LinkedIn الشخصي
المدخلات:
- profile_url: string
- أو name + company: strings
المخرجات:
- contact:
name: string
title: string
tenure: string
previous_roles: [role objects]
mutual_connections: [string]
recent_activity: [post summaries]
التبعيات:
- requests
"""
# المتطلبات: requests
import json
from typing import Any
from dataclasses import dataclass, asdict
from datetime import datetime
@dataclass
class PreviousRole:
title: str
company: str
duration: str
description: str
@dataclass
class RecentPost:
date: str
content_preview: str
engagement: int
topic: str
@dataclass
class ContactProfile:
name: str
title: str
company: str
location: str
tenure: str
previous_roles: list[dict]
education: list[str]
mutual_connections: list[str]
recent_activity: list[dict]
profile_url: str
headline: str
def search_linkedin_profile(name: str = None, company: str = None, profile_url: str = None) -> dict:
"""
البحث عن معلومات ملف LinkedIn الشخصي.
في الإنتاج، ستستخدم LinkedIn API أو Sales Navigator.
"""
# TODO: تنفيذ تكامل LinkedIn API الفعلي
# ملاحظة: لدى LinkedIn API شروط خدمة صارمة
return {
"found": False,
"name": name or "Unknown",
"title": "Unknown",
"company": company or "Unknown",
"location": "Unknown",
"headline": "",
"tenure": "Unknown",
"profile_url": profile_url or ""
}
def get_career_history(profile_data: dict) -> list[dict]:
"""
استخراج السيرة المهنية من الملف الشخصي.
"""
# TODO: تنفيذ استخراج السيرة المهنية
return []
def get_mutual_connections(profile_data: dict, user_network: list = None) -> list[str]:
"""
البحث عن الاتصالات المشتركة.
"""
# TODO: تنفيذ اكتشاف الاتصالات المشتركة
return []
def get_recent_activity(profile_data: dict, days: int = 30) -> list[dict]:
"""
الحصول على المنشورات والأنشطة الأخيرة.
"""
# TODO: تنفيذ استخراج النشاط
return []
def main(
name: str = None,
company: str = None,
profile_url: str = None
) -> dict[str, Any]:
"""
هيكلة بيانات ملف LinkedIn الشخصي لإعداد المبيعات.
الوسائط:
name: اسم الشخص
company: الشركة التي يعمل بها
profile_url: رابط ملف LinkedIn الشخصي المباشر
الإرجاع:
قاموس يحتوي على ملف تعريف جهة اتصال مهيكل
"""
if not profile_url and not (name and company):
return {"error": "Provide either profile_url or name + company"}
# البحث عن الملف الشخصي
profile_data = search_linkedin_profile(
name=name,
company=company,
profile_url=profile_url
)
if not profile_data.get("found"):
return {
"found": False,
"name": name or "Unknown",
"company": company or "Unknown",
"message": "Profile not found or limited access",
"suggestions": [
"Try searching directly on LinkedIn",
"Check for alternative spellings",
"Verify the person still works at this company"
]
}
# الحصول على السيرة المهنية
previous_roles = get_career_history(profile_data)
# البحث عن الاتصالات المشتركة
mutual_connections = get_mutual_connections(profile_data)
# الحصول على النشاط الأخير
recent_activity = get_recent_activity(profile_data)
# تجميع ملف تعريف جهة الاتصال
contact = ContactProfile(
name=profile_data["name"],
title=profile_data["title"],
company=profile_data["company"],
location=profile_data["location"],
tenure=profile_data["tenure"],
previous_roles=previous_roles,
education=[], # سيتم استخراجها من الملف الشخصي
mutual_connections=mutual_connections,
recent_activity=recent_activity,
profile_url=profile_data["profile_url"],
headline=profile_data["headline"]
)
return {
"found": True,
"contact": asdict(contact),
"research_date": datetime.now().isoformat(),
"data_completeness": calculate_completeness(contact)
}
def calculate_completeness(contact: ContactProfile) -> dict:
"""حساب مدى اكتمال بيانات الملف الشخصي."""
fields = {
"basic_info": bool(contact.name and contact.title and contact.company),
"career_history": len(contact.previous_roles) > 0,
"mutual_connections": len(contact.mutual_connections) > 0,
"recent_activity": len(contact.recent_activity) > 0,
"education": len(contact.education) > 0
}
complete_count = sum(fields.values())
return {
"fields": fields,
"score": f"{complete_count}/{len(fields)}",
"percentage": int((complete_count / len(fields)) * 100)
}
if __name__ == "__main__":
import sys
# مثال على الاستخدام
result = main(
name="Sarah Chen",
company="DataFlow Systems"
)
print(json.dumps(result, indent=2))
FILE:priority-scorer.py
#!/usr/bin/env python3
"""
priority-scorer.py - حساب وترتيب أولويات العملاء المحتملين
المدخلات:
- prospects: [كائنات العملاء المحتملين مع الإشارات]
- weights: {deal_size, timing, warmth, signals}
المخرجات:
- ranked: [العملاء المحتملون مع الدرجات والمنطق]
التبعيات:
- (لا شيء - بايثون خالص)
"""
import json
from typing import Any
from dataclasses import dataclass
# الأوزان الافتراضية للتسجيل
DEFAULT_WEIGHTS = {
"deal_size": 0.25,
"timing": 0.30,
"warmth": 0.20,
"signals": 0.25
}
# تعيين نقاط الإشارة
SIGNAL_SCORES = {
# إشارات ذات نية عالية
"recent_funding": 10,
"leadership_change": 8,
"job_postings_relevant": 9,
"expansion_news": 7,
"competitor_mention": 6,
# إشارات ذات نية متوسطة
"general_hiring": 4,
"industry_event": 3,
"content_engagement": 3,
# إشارات العلاقة
"mutual_connection": 5,
"previous_contact": 6,
"referred_lead": 8,
# إشارات سلبية
"recent_layoffs": -3,
"budget_freeze_mentioned": -5,
"competitor_selected": -7,
}
@dataclass
class ScoredProspect:
company: str
contact: str
call_time: str
raw_score: float
normalized_score: int
priority_rank: int
score_breakdown: dict
reasoning: str
is_followup: bool
def score_deal_size(prospect: dict) -> tuple[float, str]:
"""تسجيل بناءً على حجم الصفقة المقدر."""
size_indicators = prospect.get("size_indicators", {})
employee_count = size_indicators.get("employees", 0)
revenue_estimate = size_indicators.get("revenue", 0)
# تسجيل بسيط بناءً على حجم الشركة
if employee_count > 1000 or revenue_estimate > 100_000_000:
return 10.0, "فرصة على مستوى المؤسسة"
elif employee_count > 200 or revenue_estimate > 20_000_000:
return 7.0, "فرصة في السوق المتوسطة"
elif employee_count > 50:
return 5.0, "فرصة للشركات الصغيرة والمتوسطة"
else:
return 3.0, "شركة صغيرة"
def score_timing(prospect: dict) -> tuple[float, str]:
"""تسجيل بناءً على إشارات التوقيت."""
timing_signals = prospect.get("timing_signals", [])
score = 5.0 # النتيجة الأساسية
reasons = []
for signal in timing_signals:
if signal == "budget_cycle_q4":
score += 3
reasons.append("تخطيط ميزانية الربع الرابع")
elif signal == "contract_expiring":
score += 4
reasons.append("العقد ينتهي قريباً")
elif signal == "active_evaluation":
score += 5
reasons.append("تقييم نشط")
elif signal == "just_funded":
score += 3
reasons.append("تم تمويلها مؤخرًا")
return min(score, 10.0), "; ".join(reasons) if reasons else "توقيت قياسي"
def score_warmth(prospect: dict) -> tuple[float, str]:
"""تسجيل بناءً على دفء العلاقة."""
relationship = prospect.get("relationship", {})
if relationship.get("is_followup"):
last_outcome = relationship.get("last_outcome", "neutral")
if last_outcome == "positive":
return 9.0, "متابعة دافئة (اتصال إيجابي أخير)"
elif last_outcome == "neutral":
return 7.0, "متابعة (اتصال محايد أخير)"
else:
return 5.0, "متابعة (تحتاج إلى إعادة تفعيل)"
if relationship.get("referred"):
return 8.0, "عميل محتمل محال"
if relationship.get("mutual_connections", 0) > 0:
return 6.0, f"{relationship['mutual_connections']} اتصالات مشتركة"
if relationship.get("inbound"):
return 7.0, "اهتمام وارد"
return 4.0, "تواصل بارد"
def score_signals(prospect: dict) -> tuple[float, str]:
"""تسجيل بناءً على إشارات الشراء المكتشفة."""
signals = prospect.get("signals", [])
total_score = 0
signal_reasons = []
for signal in signals:
signal_score = SIGNAL_SCORES.get(signal, 0)
total_score += signal_score
if signal_score > 0:
signal_reasons.append(signal.replace("_", " "))
# تطبيع إلى مقياس 0-10
normalized = min(max(total_score / 2, 0), 10)
reason = f"الإشارات: {', '.join(signal_reasons)}" if signal_reasons else "لا توجد إشارات قوية"
return normalized, reason
def calculate_priority_score(
prospect: dict,
weights: dict = None
) -> ScoredProspect:
"""حساب درجة الأولوية الإجمالية لعميل محتمل."""
weights = weights or DEFAULT_WEIGHTS
# حساب درجات المكونات
deal_score, deal_reason = score_deal_size(prospect)
timing_score, timing_reason = score_timing(prospect)
warmth_score, warmth_reason = score_warmth(prospect)
signal_score, signal_reason = score_signals(prospect)
# المجموع الموزون
raw_score = (
deal_score * weights["deal_size"] +
timing_score * weights["timing"] +
warmth_score * weights["warmth"] +
signal_score * weights["signals"]
)
# تجميع المنطق
reasons = []
if timing_score >= 8:
reasons.append(timing_reason)
if signal_score >= 7:
reasons.append(signal_reason)
if warmth_score >= 7:
reasons.append(warmth_reason)
if deal_score >= 8:
reasons.append(deal_reason)
return ScoredProspect(
company=prospect.get("company", "Unknown"),
contact=prospect.get("contact", "Unknown"),
call_time=prospect.get("call_time", "Unknown"),
raw_score=round(raw_score, 2),
normalized_score=int(raw_score * 10),
priority_rank=0, # سيتم تعيينها بعد الفرز
score_breakdown={
"deal_size": {"score": deal_score, "reason": deal_reason},
"timing": {"score": timing_score, "reason": timing_reason},
"warmth": {"score": warmth_score, "reason": warmth_reason},
"signals": {"score": signal_score, "reason": signal_reason}
},
reasoning="; ".join(reasons) if reasons else "أولوية قياسية",
is_followup=prospect.get("relationship", {}).get("is_followup", False)
)
def main(
prospects: list[dict],
weights: dict = None
) -> dict[str, Any]:
"""
حساب وترتيب أولويات العملاء المحتملين.
الوسائط:
prospects: قائمة بكائنات العملاء المحتملين مع الإشارات
weights: أوزان مخصصة اختيارية لمكونات التسجيل
الإرجاع:
قاموس يحتوي على العملاء المحتملين المصنفين وتفاصيل التسجيل
"""
weights = weights or DEFAULT_WEIGHTS
# تسجيل جميع العملاء المحتملين
scored = [calculate_priority_score(p, weights) for p in prospects]
# الفرز حسب الدرجة الخام تنازليًا
scored.sort(key=lambda x: x.raw_score, reverse=True)
# تعيين الرتب
for i, prospect in enumerate(scored, 1):
prospect.priority_rank = i
# التحويل إلى قواميس لتسلسل JSON
ranked = []
for s in scored:
ranked.append({
"company": s.company,
"contact": s.contact,
"call_time": s.call_time,
"priority_rank": s.priority_rank,
"score": s.normalized_score,
"reasoning": s.reasoning,
"is_followup": s.is_followup,
"breakdown": s.score_breakdown
})
return {
"ranked": ranked,
"weights_used": weights,
"total_prospects": len(prospects)
}
if __name__ == "__main__":
import sys
# مثال على الاستخدام
example_prospects = [
{
"company": "DataFlow Systems",
"contact": "Sarah Chen",
"call_time": "2pm",
"size_indicators": {"employees": 200, "revenue": 25_000_000},
"timing_signals": ["just_funded", "active_evaluation"],
"signals": ["recent_funding", "job_postings_relevant"],
"relationship": {"is_followup": False, "mutual_connections": 2}
},
{
"company": "Acme Manufacturing",
"contact": "Tom Bradley",
"call_time": "10am",
"size_indicators": {"employees": 500},
"timing_signals": ["contract_expiring"],
"signals": [],
"relationship": {"is_followup": True, "last_outcome": "neutral"}
},
{
"company": "FirstRate Financial",
"contact": "Linda Thompson",
"call_time": "4pm",
"size_indicators": {"employees": 300},
"timing_signals": [],
"signals": [],
"relationship": {"is_followup": False}
}
]
result = main(prospects=example_prospects)
print(json.dumps(result, indent=2))
FILE:research-checklist.md
# قائمة مراجعة البحث عن العملاء المحتملين
## البحث عن الشركة
### معلومات أساسية
- [ ] اسم الشركة (التحقق من الإملاء)
- [ ] الصناعة/القطاع
- [ ] موقع المقر الرئيسي
- [ ] عدد الموظفين (LinkedIn، الموقع الإلكتروني)
- [ ] تقدير الإيرادات (إذا كان متاحًا)
- [ ] تاريخ التأسيس
- [ ] مرحلة/تاريخ التمويل
### أخبار حديثة (آخر 90 يومًا)
- [ ] إعلانات التمويل
- [ ] عمليات الاستحواذ أو الاندماج
- [ ] تغييرات القيادة
- [ ] إطلاق المنتجات
- [ ] فوز عملاء رئيسيين
- [ ] إشارات صحفية
- [ ] أخبار الأرباح/المالية
### البصمة الرقمية
- [ ] مراجعة الموقع الإلكتروني
- [ ] مواضيع المدونة/المحتوى
- [ ] التواجد على وسائل التواصل الاجتماعي
- [ ] إعلانات الوظائف (صفحة الوظائف + LinkedIn)
- [ ] Tech stack (BuiltWith، إعلانات الوظائف)
### المشهد التنافسي
- [ ] المنافسون المعروفون
- [ ] الوضع في السوق
- [ ] نقاط التمايز المعلنة
- [ ] التحركات التنافسية الأخيرة
### مؤشرات نقاط الألم
- [ ] مراجعات Glassdoor (المواضيع)
- [ ] مراجعات G2/Capterra (إذا كانت B2B)
- [ ] شكاوى وسائل التواصل الاجتماعي
- [ ] أنماط إعلانات الوظائف
## البحث عن جهات الاتصال
### الملف الشخصي المهني
- [ ] المسمى الوظيفي الحالي
- [ ] مدة العمل في الدور
- [ ] مدة العمل في الشركة
- [ ] الشركات السابقة
- [ ] الأدوار السابقة
- [ ] التعليم
### سلطة القرار
- [ ] لمن يقدم التقارير
- [ ] حجم الفريق (إذا كان مديرًا)
- [ ] سلطة الميزانية (مستنتجة)
- [ ] تاريخ المشاركة في الشراء
### نقاط جذب المشاركة
- [ ] منشورات LinkedIn الأخيرة
- [ ] المقالات المنشورة
- [ ] الظهور في البودكاست
- [ ] المحاضرات في المؤتمرات
- [ ] الاتصالات المشتركة
- [ ] الاهتمامات/المجموعات المشتركة
### أسلوب التواصل
- [ ] نبرة المنشورات (رسمية/غير رسمية)
- [ ] المواضيع التي يتفاعل معها
- [ ] أنماط الاستجابة
## التحقق من CRM (إذا كان متاحًا)
- [ ] أي نقاط اتصال سابقة
- [ ] فرص سابقة
- [ ] جهات اتصال ذات صلة في الشركة
- [ ] ملاحظات من الزملاء
- [ ] تاريخ التفاعل عبر البريد الإلكتروني
## عمق البحث بناءً على الوقت
| الوقت المتاح | عمق البحث |
|---------------|------------|
| 5 دقائق | أساسيات الشركة + مسمى جهة الاتصال فقط |
| 15 دقيقة | + أخبار حديثة + ملف LinkedIn الشخصي |
| 30 دقيقة | + إشارات نقاط الألم + نقاط جذب المشاركة |
| 60 دقيقة | قائمة مراجعة كاملة + تحليل تنافسي |
FILE:signal-indicators.md
# مرجع مؤشرات الإشارة
## إشارات ذات نية عالية
### إعلانات الوظائف
- **3+ أدوار ذات صلة معلنة** = مبادرة نشطة، ميزانية مخصصة
- **توظيف قيادي رفيع في مجالك** = أولوية استراتيجية
- **لغة عاجلة ("في أقرب وقت ممكن"، "فوري")** = الألم حاد
- **أداة محددة مذكورة** = وعي بالمنافسين أو الفئة
### الأحداث المالية
- **تمويل من الفئة B+** = رأس مال نمو، قوة شرائية
- **التحضير للاكتتاب العام** = الحاجة إلى نضج تشغيلي
- **الإعلان عن استحواذ** = تحديات التكامل قادمة
- **علاقات عامة حول إنجاز في الإيرادات** = ميزانية متاحة
### تغييرات القيادة
- **رئيس تنفيذي جديد في مجالك** = تحديد أولويات 90 يومًا
- **رئيس قسم الإيرادات/التسويق الجديد** = من المرجح تقييم حزمة التقنيات (Tech stack)
- **انتقال المؤسس إلى منصب الرئيس التنفيذي** = احتراف العمليات
## إشارات ذات نية متوسطة
### إشارات التوسع
- **افتتاح مكتب جديد** = احتياجات البنية التحتية
- **توسع دولي** = التوطين، الامتثال
- **إطلاق منتج جديد** = تحديات التوسع
- **فوز عميل رئيسي** = ضغط التسليم
### إشارات التكنولوجيا
- **نشر طلب تقديم عروض (RFP)** = عملية شراء نشطة
- **ذكر مراجعة بائع** = مقارنة التسوق
- **تغيير حزمة التقنيات (Tech stack)** = فرصة تكامل
- **شكاوى حول الأنظمة القديمة** = الحاجة إلى التحديث
### إشارات المحتوى
- **منشور مدونة حول موضوعك** = تثقيف أنفسهم
- **حضور ندوة عبر الإنترنت** = تأكيد الاهتمام
- **تنزيل ورقة بيضاء** = وعي بالمشكلة
- **التحدث في مؤتمر** = قيادة فكرية، رؤية
## إشارات ذات نية منخفضة (رعاية)
### النشاط العام
- **حضور حدث صناعي** = مشارك في السوق
- **توظيف عام** = الشركة تنمو
- **تغطية إعلامية إيجابية** = شركة صحية
- **نشاط وسائل التواصل الاجتماعي** = قيادة متفاعلة
## تسجيل الإشارة
| نوع الإشارة | النتيجة | الإجراء |
|-------------|-------|--------|
| إعلان وظيفة (ذات صلة) | +3 | إعطاء الأولوية للتواصل |
| تمويل حديث | +3 | الإشارة إليه في المحادثة |
| تغيير في القيادة | +2 | فرصة حساسة للوقت |
| أخبار التوسع | +2 | زاوية النمو |
| مراجعات سلبية | +2 | زاوية نقطة الألم |
| تفاعل المحتوى | +1 | مسار الرعاية |
| لا توجد إشارات | 0 | التركيز على الاكتشاف |اضغط لعرض البرومبت الكامل
#مبيعات#بحث#التنقيب عن العملاء#منهجية#أفضل الممارسات