صف چيست؟
مفهوم صف در مركز تماسها همانند معني آن در زندگي روزمره است، هرگاه درخواستهاي شما بيشتر از منابع و يا همان سرويس دهندگان شما شوند شما براي نگهداري درخواستها و نوبت دهي به آنها نياز به صف داريد، به طور ساده تر در مركز تماس هرگاه بخواهيد با تعدادي محدود از منشي ها، به تماس گيرندگان زيادي پاسخ دهيد به ويژگي به نام صف Queue نياز داريد تا وقتي تمامي منشي ها مشغول هستند تماس گيرنده ها را در آن صف نگهداريد تا در صورت آزاد شدن هر منشي به وي منتقل نماييد، در واقع اين اصلي ترين وظيفه صف Queue است.
انواع صف
صفها به 2 دسته تقسيم بندي مي شوند، صف Static و صف Dynamic ، اين تقسيم بندي به دليل كاركرد آنها نيست بلكه با توجه به كساني كه وظيفه پاسخگويي را دارند صورت گرفته است، در صف Static داخلي ها Ext در صف به عنوان مسئولين پاسخگو معرفي ميشوند و صف تماس هاي ورودي را به شماره داخلي هاي تعريف شده در آن ارتباط مي دهد، ولي در صف Dynamic به جاي شماره داخلي شماره Agent (منشي) به عنوان مسئولين پاسخگويي تعريف ميشوند. شما يك مركز تماس با صف Static را مي توانيد با ایزابل و تعريف صف و داخلي راه اندازي نماييد اما براي راه اندازي مركز تماس با صف Dynamic علاوه بر تعريف صف نياز به ماژول مركز تماس Callcenter Module ایزابل داريد، زيرا ابزار لازم براي تعريف Agent و محيط كار با آن را براي شما محيا مي سازد. به هر حال براي ساخت مركز تماس با هر نوع صفي شما نياز به تعريف صف و آشنايي كامل با قابليتهاي آن داريد، در بخش بعدي به بررسي صف و نحوه كار با آن خواهيم پرداخت.
ساخت صف
شما چه تصميم به راه اندازي يك سانترال داشته باشيد يا يك مركز تماس از هر نوعي، نياز به تعريف صف داريد، صف يكي از ويژگي هاي فوق العاده قوي استريسك است كه ميتواند ابزاري قوي براي فروش محصول به حساب بيايد، امكانات صف در استريسك آنقدر كامل است كه مي توانيد يك مركز تماس در حد سيستم هاي گران قيمت و Enterprise راه اندازي كرده و به فروش برسانيد.
در صفحه تنظيمات صف ويژگيها و پارامترهاي زيادي به چشم ميخورد، ممكن است برخي از آنها اصلا كاربرد نداشته باشد ولي در اين بخش سعي ميكنم اكثر آنها را توضيح دهم. در ابتدا به بررسي بخش اول يعني Edit Queue ميپردازم.
در اين قسمت نام و داخليهاي مسئول براي پاسخگويي به صف مشخص ميشوند.
Quere Name: يك نام دلخواه براي صف، البته سعي كنيد مرتبط با اهداف صف هم باشد، مثلا صف قسمت فروش
Queue Password: اين رمز عبور مربوط به Agent ها ميشود كه در مركز تماس با صف Dynamic كاربرد دارد، پس اگر مي خواهيد بدون ماژول CallCenterایزابل و با همين صف يك مركز تماس داشته باشيد اين گزينه را پر نكنيد، چون كاربردي ندارد.
CID Name Prefix: مي توانيد يك پيشوند به شماره تماس گيرنده اضافه كنيد، مثلا نام صف، در اين صورت Agent شما اگر عضو چند صف باشد از روي شماره تماس گيرنده متوجه ميشود كه اين تماس از كدام صف به وي منتقل شده است.
Static Agents: در اين قسمت شما مي بايست شماره داخليهايي كه مي خواهيد مسئول پاسخگويي به تماسهاي اين صف باشند را بنويسيد، البته از قسمت Extension Qiuck Pick نيز ميتوانيد براي انتخاب داخليها كمك بگيريد. البته دقت داشته باشيد اگر ميخواهيد از ماژول مركز تماس استفاده نماييد در اين قسمت بايد شماره Agentهاي تعريف شده در آن ماژول نوشته شود كه در بخش ماژول مركز تماس مفصل توضيح خواهم داد.
نكته: وقتي از Extension Qiuck Pick براي انتخاب داخلي استفاده مي كنيد جلوي داخلي هاي درج شده يك عدد o اضافه مي كند، نوشتن آن عدد الزامي نيست، آن عدد o پارامتر پنالتي يا جريمه مي باشد كه استفاده از آن اجباري نيست، شما ميتوانيد براي هر داخلي يك عدد جريمه قرار دهيد و هر چه آن عدد بزرگتر باشد تماسهاي بيشتري به آن داخلي وصل خواهد شد !
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 عمل ميشد، با اعضاء گروه برخورد مي شود.
memoryhunt: اولين extension موجود در ليست زنگ مي خورد، در صورت عدم پاسخ، اولين و دومين extensionها زنگ ميخورند و به همين ترتيب تا آخر (تا زماني که يکي از extensionها پاسخ دهد يا زمان timeout برسد).
memoryhunt-prim: درصورتيکه اولين extension مشغول بوده و يا در حالت do-not-disturb قرار داشته باشد، هيچ يک از extension ها زنگ نمي خورد و در غير اينصورت به همان ترتيب که در memoryhunt عمل ميشد، با اعضاء گروه برخورد مي شود.
firstavailable: اولين extension اي که در ليست در دسترس باشد، زنگ ميخورد. اگر انتظار تماس (call waiting) براي extension اي فعال باشد، در دسترس تلقي ميگردد، هرچند در حال مکالمه باشد.
firstnotonphone: اولين extension اي که در ليست بطور کامل در دسترس باشد، زنگ ميخورد. تنظيمات انتظار تماس (call waiting) در اينحالت درنظر گرفته نمي شوند. اگر extension اي در حال مکالمه باشد، بدون توجه به اينکه سرويس انتظار تماس فعال باشد يا نه.
Agent Timeout: مدت زماني (ثانيه) كه داخلي منشي زنگ خواهد خورد تا سيستم اعلام timeout كند.
Call Recording: ضبط مكالمات داخل صف، فايل هاي صوتي در /var/spool/asterisk/monitor ذخيره مي شود. هيچگاه فراموش نكنيد كه ضبط مكالمات بار بسيار زيادي روي سرور خواهد داشت، پس حتما در انتخاب ظرفيت سرور چه از لحاظ قدرت پردازش و چه از لحاظ فضاي هارد ديسك، دقت نماييد.
Queue Weight: با اين گزينه براي صف يك وزن در نظر مي گيريد، داخلي شما ممكن است در داخلي چند صف همزمان قرار داشته باشد، در آن صورت اين وزن صفها است كه اولويت آنها را براي ارسال تماس به داخلي مشخص ميكند.
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 نخواهيد داشت.