فهرست مطالب
برای مطالعه مطالب هر سر فصل، کافیست از لیست زیر، بر روی تیتر مورد نظر کلیک نمایید.مقدمه
همانطور که میدانید وظیفهی وب سرویسها، انتقال اطلاعات با سایر برنامهها کاربردی میباشد.در حقیقت وب سرویسها نوعی واسط بین دو نرم افزار کاربردی دیگر میباشد که بر اساس تولید و دریافت درخواست کاربران ایجاد شده است.
وب سرویسها، درخواست را از کلاینتها دریافت کرده و پس از اجرای آن توسط توابع از پیش تعیین شده، نتیجه را برای کلاینت ارسال خواهند کرد.
تا زمانی که شما اطلاعات مورد نیاز مخاطب را بر روی منوهای کد USSD از داخل سامانهی آی نوتی پیاده سازی کرده باشید و اطلاعات مورد نیاز مخاطب بر روی سرور آی نوتی درج شده باشد، نیازی به استفاده از وب سرویس نخواهد بود بنابراین زمانی که مخاطب منوی کد USSD شماره گیری کند، پردازش بر روی سرور آی نوتی انجام شده و نتیجهی آن، از سرور آی نوتی برای مخابرات ارسال شده و در نهایت به مخاطب نمایش داده خواهد شد.
پس لزوم استفاده از وب سرویس USSD چیست؟
چنانچه میخواهید مخاطب با شماره گیری کد USSD، اطلاعات مورد نظر را از روی سرور شما دریافت کند، نیاز است که از وب سرویس کد USSD آی نوتی استفاده کنید. با استفاده از این وب سرویس، به محض آنکه درخواستی از سوی مخاطب ارسال گردد، در ابتدا درخواست برای مخابرات ارسال و از مخابرات برای سرور آی نوتی ارسال خواهد شد. در این مرحله هیچ پردازشی بر روی سرور آی نوتی انجام نخواهد شد و سرور آی نوتی درخواست مخاطبین را طریق وب سرویس برای سرور شما ارسال خواهد کرد. تمامی عملیات و پردازشها بر روی سرور شما انجام شده و نتیجه مجددا به سرور آی نوتی و سپس به مخابرات باز خواهد گشت و در نهایت، نتیجهی درخواست بر روی گوشی موبایل مخاطب قابل مشاهده خواهد بود.
با یک مثال ساده این موضوع را بیشتر توضیح خواهیم داد.
فرض کنیم شما یک نرم افزار تحت وب برای اتوماسیون اداری طراحی کردهاید و این نرم افزار به یک پایگاه داده بزرگ متصل شده است.
در صورتی که یکی از پرسنل بخواهد از طریق شمارهگیری کد USSD، جمع ساعات کاری ماه گذشتهی خود را استعلام بگیرند نیاز است که نرم افزار اتوماسیون اداری شما از طریق وب سرویس به کد USSD خریداری شده در سامانه آی نوتی متصل کردد.
در این راستا مستندات فنی به همراه نمونه کدهایی برای برنامه نویسان عزیز تهیه شده است که میتوانند با توجه به آنها، قطعه کد وب سرویس مورد نظر را بنویسند و اتصال بین دو برنامه را بر قرار کنند.
در ادامهی مقالهی آموزشی نحوهی دسترسی به مستندات فنی و نحوه انجام تنظیمات وب سرویس بر روی کد USSD به طور کامل توضیح داده خواهد شد.
دسترسی به مستندات و نمونه کدهای وب سرویس USSD
برنامه نویسان عزیز میتوانند برای دسترسی به مستندات فنی وب سرویس USSD از صفحهی اصلی سایت به منوی آزمایشگاه مراجعه نمایند و از منوی سمت راست صفحه، گزینه مورد نظر را انتخاب کنند.در این مستندات آموزشی، فیلدهای ورودی و خروجی و نمونه کدهای هر بخش از وب سرویس به طور کامل درج شده است.
نکته:لازم به ذکر است برنامه نویسان عزیز میبایست پورتهای پیشفرض 80 را برای پروتکل HTTP و 443 را برای پروتکل HTTPS استفاده نمایند.
انجام تنظیمات وب سرویس USSD
بعد از نوشتن قطعه کد وب سرویس، نیاز است برنامه نویسان آدرس صفحهای که طراحی کردهاند را بر روی کد USSD خود تنظیم نمایند.برنامه نویسان میتوانند با توجه به سیاستهای اتخاذ شده، بر روی یکی از منوهای کد USSD و یا بر روی خود کد USSD ، تنظیمات وب سرویس را انجام دهند.
برای انجام تنظیمات وب سرویس نیاز است از منوی سمت راست سامانهی آی نوتی به، به منوی "خدمات" زیر منوی "خدمات USSD" مراجعه کرده و بر روی گزینهی "مدیریت کد USSD" کلیک کنید.
انجام تنظیمات وب سرویس بر روی کد USSD
در صورتی که بخواهید وب سرویس را بر روی کل کد USSD اعمال کنید میبایست از مسیر زیر اقدام نمایید.مجددا برای این کار نیاز است که به صفحهی مدیریت کدهای USSD خود مراجعه نمایید. اما این بار به دلیل اینکه میخواهید وب سرویس را بر روی خود کد USSD تعریف کنید، میبایست بر روی دکمهی "تنظیم وب سرویس" کلیک کنید.
در صفحهی باز شده، علاوه بر نمونه کدها و مستنداتی که در بخش آزمایشگاه قرار داشت، یک سری مستندات دیگر قرار داده شده است که دانلود و مطالعهی آنها برای برنامه نویسان خالی از لطف نخواهد بود.
در کنار آن کادری برای تعیین مسیر وب سرویس قرار داده شده است که میبایست آدرس صفحهی وبی که به منظور استفاده از وب سرویس طراحی کردهاید را در آن درج نمایید و در نهایت برای اعمال تغییرات بر روی دکمهی "ذخیرهی تغییرات USSD" کلیک کنید.
نکته: توجه نمایید، در صورتی که آدرس مسیر وب سرویس را بر روی کد USSD تعریف کنید، تمامی منوهایی که بر روی کد USSD از داخل سامانهی آی نوتی تعریف کردهاید از کار خواهد افتاد و فقط دستوراتی که بر روی وب سرویس تعریف کردهاید، اجرا خواهد شد.
انجام تنظیمات وب سرویس بر روی یک منوی خاص از کد USSD
برای انجام تنظیمات وب سرویس بر روی یک منوی خاص نیاز است، منوی مورد نظر را از نوع "معمولی" تعریف کنید.برای این کار پس از ورود به صفحهی "مدیریت کدهای USSD"، بر روی دکمهی "ویرایش" روبروی کد مورد نظر کلیک نمایید.
پس از آن میبایست بر روی دکمهی افزودن روبری کد USSD و یا منویای که میخواهید وب سرویس شما زیر مجموعهی آن منو قرار بگیرید؛ کلیک کنید.
سپس در پاپ آپی که برای تعریف منوی جدید باز میشود، نوع منوی را بر روی معمولی قرار دهید.
در مرحلهی بعدی کمی پاپ آپ را به سمت پایین اسکرول کنید و فیلد "تعیین مسیر وب سرویس" را علامتدار کرده و در کادر زیر آن، آدرس صفحه ای که برای آن وب سرویس در نظر گرفتهاید را وارد نمایید.
در نهایت برای ذخیرهی تنظیمات انجام شده، بر روی دکمهی "افزودن آیتم" در انتهای پاپ آپ کلیک نمایید.
نکته: به خاطر داشته باشید، در زمان اعمال وب سرویس بر روی یکی از منوها، آن منو و تمامی زیر منوهای آن از کار خواهد افتاد و آن منو از طریق وب سرویسی که تعریف کردهاید، کار خواهد کرد؛ اما سایر منوهایی که از داخل سامانهی آی نوتی بر روی کد USSD، تنظیم کردهاید، فعال خواهد بود و از کار نخواهد افتاد.
نکته: لازم به ذکر است در کادر مربوط به "تعیین مسیر وب سرویس" حتما آدرس صفحهی وبی که طراحی کردهاید و برای آن کد وب سرویس نوشتهاید را، وارد نمایید. در صورتی که آدرس دیگری مانند آدرس سایت های دیگر و یا شبکههای اجتماعی وارد گردد، وب سرویس کار نخواهد کرد و در کل کد USSD شما از کار خواهد افتاد و هیچ منویی بر روی کد کار نخواهد کرد.
نکات آخر
- ممکن است در زمان اجرای وب سرویس با خطا مواجه شوید و یا متوجه عدم عملکرد وب سرویس شوید. یکی از دلایل مهمی که باعث بروز همچین اتفاقی خواهد شد، فایروال سرور شما خواهد بود. ممکن است سرور شما تمامی درخواستهایی که از سمت کد USSD ارسال میشود را به عنوان Spam شناسایی نماید و به درخواستهای کلاینت پاسخ ندهد. به همین منظور برای جلوگیری از بروز همچین اتفاقی، برنامه نویسان عزیز میبایست IP آی نوتی (185.13.230.114) را در لیست آی پی های مجاز فایروال سرور خود قرار دهند تا در عملکرد وب سرویس و کد USSD اختلالی ایجاد نگردد.
- نکتهی دیگر محدودیت کاراکتر در ورودی و خروجی کدهای USSD میباشد. همانطور که میدانید خروجی کدهای USSD برای هر صفحه 70 کاراکتر خواهد بود. لذا در صورتی که پاسخ خروجی بیشتر از 70 کاراکتر باشد، سیستم به صورت اتوماتیک کلمهی قبلی و بعدی را در پاسخ USSD نمایش خواهد داد. همچنین کاربر نمیتواند برای درخواستهایی مانند جستجو، عباراتی را با کاراکترهای فارسی وارد نماید، زیرا برای سیستم USSD قابل شناسایی نمیباشد. از این رو کاربر فقط میتواند عباراتی را با کاراکترهای انگلیسی و یا عددی وارد نماید.