مفهوم صف در مركز تماس‌ها همانند معنی آن در زندگی روزمره است، هر گاه درخواست‌های شما بيشتر از منابع و يا همان سرويس دهندگان شما شوند شما برای نگهداری درخواست‌ها و نوبت‌دهی به آن‌ها نياز به صف داريد، به طور ساده‌تر در مركز تماس هر گاه بخواهيد با تعدادی محدود از منشی‌ها، به تماس گيرندگان زيادی پاسخ دهيد به ويژگی به نام صف نياز داريد تا وقتی تمامی منشی‌ها مشغول هستند تماس گيرنده‌ها را در آن صف نگه داريد تا در صورت آزاد شدن هر منشی به وی منتقل نماييد، در واقع اين اصلی‌ترين وظيفه صف است.

 

 انواع صف:

صف‌ها به دو دسته تقسيم‌بندی می‌شوند، صف Static و صف Dynamic، اين تقسيم‌بندی به دليل كاركرد آن‌ها نيست بلكه با توجه به كسانی كه وظيفه پاسخگويی را دارند صورت گرفته است، در صف Static داخلی‌ها Ext در صف به عنوان مسئولين پاسخگو معرفی می‌شوند و صف تماس‌های ورودی را به شماره داخلی‌های تعريف شده در آن ارتباط می‌دهد، ولی در صف Dynamic به جای شماره داخلی شماره Agent (منشی) به عنوان مسئولين پاسخگويی تعريف می‌شوند. شما يك مركز تماس با صف Static را می‌توانيد با Issabel و تعريف صف و داخلی راه‌اندازی نماييد اما برای راه‌اندازی مركز تماس با صف Dynamic علاوه بر تعريف صف نياز به ماژول مركز تماس Callcenter Module ایزابل داريد، زيرا ابزار لازم برای تعريف Agent و محيط كار با آن را برای شما محيا می‌سازد. به هر حال برای ساخت مركز تماس با هر نوع صفی شما نياز به تعريف صف و آشنايی كامل با قابليت‌های آن داريد، در بخش بعدی به بررسی صف و نحوه كار با آن خواهيم پرداخت.

 

ساخت صف:

شما چه تصميم به راه‌اندازی يك سانترال داشته باشيد يا يك مركز تماس از هر نوعی، نياز به تعريف صف داريد، صف يكی از ويژگی‌های فوق‌العاده قوی Asterisk است كه می‌تواند ابزاری قوی برای فروش محصول به حساب بيايد، امكانات صف در Asterisk آن‌قدر كامل است كه می‌توانيد يك مركز تماس در حد سيستم‌های گران قيمت و Enterprise راه‌اندازی كرده و به فروش برسانيد.

queue_1.png

در صفحه تنظيمات صف ويژگی‌ها و پارامتر‌های زيادی به چشم می‌خورد، ممكن است برخی از آن‌ها اصلاً كاربرد نداشته باشد ولی در اين بخش سعی می‌كنیم اكثر آن‌ها را توضيح دهم. در ابتدا به بررسی بخش اول يعنی Edit Queue می‌پردازیم.
queue_2.png
در اين قسمت نام و داخلی‌های مسئول برای پاسخگويی به صف مشخص می‌شوند.

 

Quere Name: يك نام دلخواه برای صف، البته سعی كنيد مرتبط با اهداف صف هم باشد، مثلاً صف قسمت فروش.


Queue Password: اين رمز عبور مربوط به Agentها می‌شود كه در مركز تماس با صف Dynamic كاربرد دارد، پس اگر می‌خواهيد بدون ماژول CallCenter ایزابل و با همين صف يك مركز تماس داشته باشيد اين گزينه را پر نكنيد، چون كاربردی ندارد.


CID Name Prefix: می‌توانيد يك پيشوند به شماره تماس گيرنده اضافه كنيد، مثلاً نام صف، در اين صورت Agent شما اگر عضو چند صف باشد از روی شماره تماس گيرنده متوجه می‌شود كه اين تماس از كدام صف به وی منتقل شده است.


Static Agents: در اين قسمت شما می‌بايست شماره داخلی‌هايی كه می‌خواهيد مسئول پاسخگويی به تماس‌های اين صف باشند را بنويسيد، البته از قسمت Extension Qiuck Pick نيز می‌توانيد برای انتخاب داخلی‌ها كمك بگيريد. البته دقت داشته باشيد اگر می‌خواهيد از ماژول مركز تماس استفاده نماييد در اين قسمت بايد شماره Agent‌های تعريف شده باشد.

 

نكته: وقتی از Extension Qiuck Pick برای انتخاب داخلی استفاده می‌كنيد جلوی داخلی‌های درج شده يك عدد o اضافه می‌كند، نوشتن آن عدد الزامی نيست، آن عدد o پارامتر پنالتی يا جريمه می‌باشد كه استفاده از آن اجباری نيست، شما می‌توانيد برای هر داخلی يك عدد جريمه قرار دهيد و هر چه آن عدد بزرگتر باشد تماس‌های بيشتری به آن داخلی وصل خواهد شد!
queue_3.png

Queue Options: مهم‌ترين و جذاب‌ترين بخش يك صف! هر كدام از اين پارامتر‌های می‌توانند شما را به يك قرار داد بزرگ نزديك كنند، پس كاركرد هر كدام را هميشه به خاطر بسپاريد.

 

Agent Announcement: پخش يك پيام برای داخلی يا Agent قبل از آن كه تماس به وی وصل شود، ممكن است Agent شما عضو چند صف باشد با قرار دادن پيامی برای هر صف همانند "اين تماس از صف  فروش وصل می‌شود" آن‌گاه Agent شما قبل از گرفتن تماس متوجه صف ورودی خواهد شد.


Join Announcement: پخش يك پيام به تماس گيرنده به محض ورود به صف، اين پيام فقط يك بار پخش خواهد شد. می‌تواند يك پيام خوش‌آمدگويی باشد همانند "با سلام به بخش فروش شركت خوش آمديد لطفاً جهت برقراری تماس منتظر بمانيد"


Music on Hold Class: تعيين موزيك برای وقتی كه تماس گيرنده‌ها در صف منتظر هستند، اين موزيك به طور پيش فرض همان موزيك انتخاب شده برای Music on Hold سيستم می‌باشد.


Ringing Instead of MoH: در صورت انتخاب اين گزينه برای افراد منتظر در صف به جای موزيك، صدای زنگ Ring پخش می‌شود.


Max Wait Time: حداكثر زمانی كه يك تماس گيرنده در صف منتظر می‌ماند، اين مدت به ثانيه می‌باشد و در صورت اتمام آن تماس گيرنده از صف خارج شده و به مقصدی كه در Fail Over Destination تعيين شده، هدايت می‌شود.


Max Callers: تعيين ظرفيت صف برای پذيرش افراد، مثلاً شما ظرفيت صف را 10 در نظر می‌گيريد نفر 11ام اجازه ورود به صف را دريافت نمی‌كند و پس از شنيدن پيام پر بودن صف به منوی قبلی بر‌ می‌گردد.


Join Empty: پيش‌فرض اين گزينه Yes می‌باشد، يعنی اگر داخلی‌ها و يا Agentهای تعريف شده برای صف هيچ كدام فعال نبودند آيا باز هم افراد تماس گيرنده به صف وارد شوند، اما اگر می‌خواهيد وقتی صف دارای پاسخگوی فعال نيست، تماس گيرنده‌ای هم وارد نشود بايد اين گزينه را No كنيد.


Leave When Empty: تا حدودی مشابه ويژگی قبلی است، با اين تفاوت كه در اين حالت اگر افرادی داخلی صف منتظر باشند و به يك‌باره Agent‌ها از دسترس خارج  شوند، آيا افراد منتظر در صف بيرون انداخته شوند يا خير.


Ring Strategy: اين گزينه شامل الگوريتم‌های نحوه ارتباط تماس گيرنده‌ها به داخلی‌های داخل صف می‌باشد.

 

ringall: تمام اعضاء گروهی که در Extension List معين شده‌اند در يک زمان و با هم شروع به زنگ زدن می‌نمايند.

 

ringall-prim: در اين حالت اگر اولين عضو موجود در ليست، مشغول نباشد تمام اعضاء آن گروه شروع به زنگ زدن می‌نمايند. در صورتی که اولين extension مشغول بوده و يا در حالت do-not-disturb قرار داشته باشد، هيچ يک از extensionها زنگ نخورده و تماس مستقيماً به مقصدی که در قسمت Destination if no answer معين شده است منتقل می‌گردد.

 

hunt: هر کدام از اعضاء گروه به ترتيبی که در ليست مشخص Extension List field شده‌اند، شروع به زنگ زدن می‌کنند تا زمانی که يکی از اعضاء گروه به تماس پاسخ دهد.

 

hunt-prim: همانند ringall-prim عمل می‌نمايد، در صورتي که اولين extension مشغول بوده و يا در حالت do-not-disturb قرار داشته باشد، هيچ يک از extensionها زنگ نمی‌خورد و در غير اين صورت به همان ترتيب که در hunt عمل می‌شد، با اعضاء گروه برخورد می‌شود.

 

memory hunt: اولين extension موجود در ليست زنگ می‌خورد، در صورت عدم پاسخ، اولين و دومين extensionها زنگ می‌خورند و به همين ترتيب تا آخر (تا زمانی که يکی از extensionها پاسخ دهد يا زمان timeout برسد).

 

memory hunt-prim: در صورتی که اولين extension مشغول بوده و يا در حالت do-not-disturb قرار داشته باشد، هيچ يک از extensionها زنگ نمی‌خورد و در غير اين صورت به همان ترتيب که در memory hunt عمل می‌شد، با اعضاء گروه برخورد می‌شود.

 

first available: اولين extensionای که در ليست در دسترس باشد، زنگ می‌خورد. اگر انتظار تماس (call waiting) برای extensionای فعال باشد، در دسترس تلقی می‌گردد، هر چند در حال مکالمه باشد.

 

firstnotonphone: اولين extensionای که در ليست به طور کامل در دسترس باشد، زنگ می‌خورد. تنظيمات انتظار تماس (call waiting) در اين حالت در نظر گرفته نمی‌شوند. اگر extensionای در حال مکالمه  باشد، بدون توجه به اين که سرويس انتظار تماس فعال باشد يا نه.

 

Agent Timeout: مدت زمانی (ثانيه) كه داخلی منشی زنگ خواهد خورد تا سيستم اعلام timeout‌ كند.


Call Recording: ضبط مكالمات داخل صف، فايل‌های صوتی در /var/spool/asterisk/monitor ذخيره می‌شود. هيچ‌گاه فراموش نكنيد كه ضبط مكالمات بار بسيار زيادی روی سرور خواهد داشت، پس حتماً در انتخاب ظرفيت سرور چه از لحاظ قدرت پردازش و چه از لحاظ فضای هارد ديسك، دقت نماييد.

 

Queue  Weight: با اين گزينه برای صف يك وزن در نظر می‌گيريد، داخلی شما ممكن است در داخلی چند صف همزمان قرار داشته باشد، در آن صورت اين وزن صف‌ها است كه اولويت آن‌ها را برای ارسال تماس به داخلی مشخص می‌كند.
queue_4.png



















Caller Position Announcements: شما می‌توانيد در اين بخش نوبت و مدت زمان انتظار افراد در صف به طور متناوب برای آنان پخش نماييد.

 

Frequency: تعيين زمان تناوب پخش پيام به ثانيه (انتخاب 0 برای غير فعال كردن)


Announce Position: اعلام موقعيت فرد در صف، به طور مثال اعلام "شما پنجمين نفر در صف هستيد"


Announce Hold Time: اعلام تخمين مدت زمان برای انتظار، اگر اين مدت كمتر از 1 دقيقه باشد اعلام نمی‌گردد، اگر Once‌ را انتخاب كنيد، پيام فقط يكبار  پخش خواهد شد.


Periodic Announcements: در اين قسمت می‌توانيد يك IVR‌ ساخته شده در  بخش IVR (منوی منشی) را انتخاب نماييد تا برای افراد داخل صف به تناوب پخش شود، اين بخش می‌تواند به اين صورت كاربرد داشته باشد، مثلاً می‌خواهيد برای افراد منتظر يك منوی منشی (IVR) پخش شود كه بگويد "برای برگشت به منوی اصلی كليد 1، در غير اين صورت منتظر بمانيد"، شما می‌توانيد هر IVRی را در صف برای افراد پخش نماييد.


Fail Over Destination: به هر دليلی در كاركرد صف ايرادی رخ دهد، می‌توانيد افراد داخل و يا كسانی كه می‌خواهند وارد صف شوند را به يك مقصد نهايی هدايت كنيد تا هيچ تماسی را از دست ندهيد. يه ياد داشته باشيد كلاً در Destinationهای نهايی، شما هميشه ليستی از مواردی كه ساخته شده است را خواهيد ديد، به طور مثال اگر هنوز Announcement روی سيستم نساخته‌ايد، عنوان آن را نيز در Destination نخواهيد داشت.


منبع: ISSABEL