---
title: "আউটবাউন্ড ক্যাম্পেইন"
description: "একটি যোগাযোগ তালিকা আপলোড করুন এবং কলিং উইন্ডো, পুনরায় চেষ্টা ও লাইভ অগ্রগতিসহ একটি এজেন্টকে তালিকাটি সম্পন্ন করতে দিন।"
---

ক্যাম্পেইন আপনার হয়ে একটি কনট্যাক্ট তালিকায় ডায়াল করে: একটি এজেন্ট বেছে নিন, একটি
CSV আপলোড করুন, কখন কল করা যাবে সেট করুন, তারপর ThunderPhone তালিকাটি
প্রক্রিয়া করবে — আপনার বেছে নেওয়া সময়সূচি অনুযায়ী উত্তর না পাওয়া কল এবং ভয়েসমেলে পুনরায় চেষ্টা করবে। এগুলো **এনগেজমেন্ট → ক্যাম্পেইন**-এর অধীনে পাবেন (`/dashboard/campaigns`)।

এককালীন প্রোগ্রাম্যাটিক কলের জন্য, পরিবর্তে
[বহির্গামী কল API](/bn/guides/place-outbound-calls) ব্যবহার করুন।

## পূর্বশর্ত

- একটি ডিপ্লয় করা ভয়েস এজেন্ট।
- যে নম্বর থেকে কল করা হবে, সেই নম্বর হিসেবে আপনার সংস্থার সাথে সংযুক্ত একটি **VoIP ফোন নম্বর** —
  ThunderPhone নম্বরগুলো শুধুমাত্র ইনবাউন্ড এবং ক্যাম্পেইন কল করতে পারে না। দেখুন
  [একটি VoIP প্রোভাইডার সংযুক্ত করুন](/bn/guides/voip-providers)।
- `phone` অথবা `phone_number` কলামসহ CSV ফাইল (অথবা পেস্ট করা JSON) হিসেবে কনট্যাক্ট। **প্রতি আপলোডে সর্বোচ্চ 5,000টি সারি**, UTF-8 এনকোড করা।
  নতুন JSON আপলোড অবশ্যই সমতল হতে হবে: অতিরিক্ত মান স্ট্রিং, সংখ্যা,
  বুলিয়ান, অথবা `null` হতে পারে। অ্যারে বা নেস্টেড অবজেক্ট থাকা সারিগুলো
  ভ্যালিডেশন বার্তাসহ আলাদাভাবে প্রত্যাখ্যান করা হয়; বৈধ সারিগুলো তবুও ইমপোর্ট হয়।
  CSV সেলগুলো স্ট্রিং। গৃহীত অতিরিক্ত কলামগুলো ক্যাম্পেইনের
  কনট্যাক্ট রেকর্ডে প্রতি-কনট্যাক্ট ভেরিয়েবল হিসেবে রাখা হয় এবং প্রতিটি ডায়ালে স্বয়ংক্রিয়ভাবে দেওয়া হয়। `name` এবং `account_id`-এর মতো হেডার সংরক্ষিত
  এজেন্টের prompt-এ থাকা `{{name}}` এবং `{{account_id}}`-এর সাথে মেলে।
  নাম ম্যাপিং কলাম একত্র করে `name`-এও দিতে পারে। ডিফল্ট, নামকরণের নিয়ম,
  32 KB অবজেক্ট সীমা এবং কমপ্লিশন ওয়েবহুকে ফেরত আসা মানের জন্য
  [প্রতি-কল ভেরিয়েবল](/bn/guides/call-variables) দেখুন।

পুরোনো কনট্যাক্ট রেকর্ডে আগের JSON আপলোডের নেস্টেড মেটাডেটা থাকতে পারে।
সেই মেটাডেটা সংরক্ষিত কনট্যাক্টে থেকে যায়। প্রতিটি ডায়াল তার ভেরিয়েবল পেলোড থেকে নন-স্কেলার মান বাদ দেয়
এবং মান লগ না করে সেই প্রচেষ্টার জন্য উপেক্ষা করা কী নামগুলো লগ করে।
পুনঃচেষ্টাতেও একই ফিল্টারিং ব্যবহৃত হয়।

## একটি ক্যাম্পেইন তৈরি করুন

<Steps>
  <Step title="নতুন ক্যাম্পেইনে ক্লিক করুন">
    এর নাম দিন, **ভয়েস এজেন্ট** বেছে নিন এবং **যে নম্বর থেকে কল করা হবে**
    (আপনার VoIP নম্বরগুলোর একটি) নির্বাচন করুন।
  </Step>
  <Step title="কনট্যাক্ট CSV আপলোড করুন">
    অবৈধ ফোন নম্বর বা অবৈধ ভেরিয়েবল থাকা সারিগুলো আলাদাভাবে প্রত্যাখ্যান করা হয় এবং
    তাদের সারি নম্বরসহ জানানো হয় — বাকি সারিগুলো ঠিকভাবে ইমপোর্ট হয়।
  </Step>
  <Step title="কল করার সময়সীমা সেট করুন">
    একটি **টাইমজোন** এবং দৈনিক **শুরুর/শেষের** সময়সীমা বেছে নিন; ক্যাম্পেইন
    কেবল এর মধ্যেই ডায়াল করবে। সময়সীমা মধ্যরাত পেরোতে পারে (যেমন 22:00 → 02:00)।
    লঞ্চ নির্ধারণ করতে চাইলে একটি **শুরু হবে** সময় এবং
    যার পরে ক্যাম্পেইন স্বয়ংক্রিয়ভাবে সম্পন্ন হবে এমন একটি **শেষ হবে** সময় সেট করুন।
  </Step>
  <Step title="পেসিং এবং পুনঃচেষ্টা ঠিক করুন">
    - **সমসাময়িক কল** — এই ক্যাম্পেইন একসাথে কতটি কল চালায়
      (1–10, ডিফল্ট 3)। আপনার সংস্থার ক্ষেত্রেও সবকিছু মিলিয়ে **10টি
      সমসাময়িক বহির্গামী কল** সীমা প্রযোজ্য, তাই সমান্তরাল
      ক্যাম্পেইনগুলো সেই সীমা ভাগ করে।
    - **সর্বোচ্চ প্রচেষ্টা** — প্রতিটি কনট্যাক্টকে কতবার ডায়াল করা যেতে পারে
      (ডিফল্ট 2)।
    - **পুনঃচেষ্টা বিলম্ব (মিনিট)** — পুনঃচেষ্টার আগে অপেক্ষার সময় (ডিফল্ট 60)।
    - **যেগুলোর ক্ষেত্রে পুনঃচেষ্টা** — কোন ফলাফলে পুনঃচেষ্টা হবে: **উত্তর নেই**,
      **ভয়েসমেল**, **ব্যর্থ** (সবগুলো ডিফল্টভাবে চালু)।
  </Step>
  <Step title="খসড়া তৈরি করুন, তারপর শুরু করুন">
    ক্যাম্পেইন খসড়া হিসেবে তৈরি হয় — কেবল ক্যাম্পেইন খসড়া থাকলেই কনট্যাক্ট
    যোগ করা যায়। ক্যাম্পেইন শুরু করতে কল চার্জে স্পষ্ট সম্মতি
    প্রয়োজন। ভবিষ্যতের একটি **শুরু হবে** সময় থাকলে এটি
    *নির্ধারিত* হয়; অন্যথায় এটি তাৎক্ষণিকভাবে *চলমান* শুরু হয়।
  </Step>
</Steps>

## ফলাফল এবং পুনঃচেষ্টা কীভাবে কাজ করে

প্রতিটি কলের পরে কনট্যাক্ট একটি ফলাফল পায় — সফল কলগুলোকে
সম্পন্ন হিসেবে চিহ্নিত করা হয়; উত্তর নেই হিসেবে গ্রেড করা, ভয়েসমেল হিসেবে শনাক্ত করা, বা
ব্যর্থ হওয়া কল পুনরায় চেষ্টা করা হয় যদি সেই ফলাফল আপনার **যেগুলোর ক্ষেত্রে পুনঃচেষ্টা** তালিকায় থাকে এবং
কনট্যাক্টের প্রচেষ্টা বাকি থাকে। যেসব কনট্যাক্টের প্রচেষ্টা শেষ হয়ে যায়, সেগুলোকে
*প্রচেষ্টা শেষ* হিসেবে চিহ্নিত করা হয়; পুনঃচেষ্টার অযোগ্য ব্যর্থতাগুলোকে *ব্যর্থ* হিসেবে চিহ্নিত করা হয়।

<Note>
  আপনার অ্যাকাউন্ট ব্যালেন্স ভালো অবস্থায় না থাকলে ডায়ালিং স্বয়ংক্রিয়ভাবে বিরতি নেয়,
  এবং অবস্থার উন্নতি হলে পুনরায় শুরু হয়। দীর্ঘ ক্যাম্পেইনের জন্য
  [অটো টপ-আপ](/bn/guides/billing-and-topups) চালু রাখুন।
</Note>

## পর্যবেক্ষণ ও নিয়ন্ত্রণ

প্রতিটি ক্যাম্পেইন কার্ডে এর অবস্থা ও অগ্রগতি দেখায় (যেমন, "248টির মধ্যে 173টি
সম্পন্ন")। অবস্থার বিস্তারিত, প্রতি-কন্টাক্টের ফলাফল এবং সাম্প্রতিক কল দেখতে একটি ক্যাম্পেইন খুলুন — প্রতিটি কল ইতিহাসে সম্পূর্ণ ট্রান্সক্রিপ্ট ও রেকর্ডিংয়ের সঙ্গে লিঙ্ক করা থাকে।

- **বিরতি / পুনরায় শুরু করুন** — বিরতি দিলে নতুন ডায়াল বন্ধ হয়; ইতিমধ্যে চলমান কল স্বাভাবিকভাবে শেষ হয়। বিরতিতে থাকা ক্যাম্পেইন সম্পাদনা করে পুনরায় শুরু করা যায়।
- **বাতিল করুন** — ক্যাম্পেইনটি স্থায়ীভাবে বন্ধ করে।
- প্রতিটি কন্টাক্ট চূড়ান্ত অবস্থায় পৌঁছালে বা **শেষের সময়** পার হলে একটি ক্যাম্পেইন নিজে থেকেই সম্পন্ন হয়।

ক্যাম্পেইনের অবস্থা: `draft`, `scheduled`, `running`, `paused`,
`completed`, `cancelled`। কন্টাক্টের অবস্থা: `pending`, `scheduled`,
`calling`, `completed`, `failed`, `exhausted`।

## পরবর্তী ধাপ

<CardGroup cols={2}>
  <Card title="লাইভ কল দেখুন" icon="tower-broadcast" href="/bn/guides/monitor-live-calls">
    ক্যাম্পেইনের কল হওয়ার সময়ই কল শুনুন।
  </Card>
  <Card title="আউটবাউন্ড কল API" icon="phone-arrow-up-right" href="/bn/guides/place-outbound-calls">
    প্রোগ্রাম্যাটিকভাবে পৃথক কল করুন।
  </Card>
</CardGroup>
