رپورتاژ آگهی
نحوه ارسال پیامک با php + نمونه کد آماده
میخواهیم راجع به ارسال پیامک با php در این مقاله صحبت کنیم، پس تا انتهای مقاله با ما همراه باشید
php یکی از زبانهای پرکاربرد در برنامهنویسی و توسعه وب است. برخلاف اختلافنظرهایی که دربارۀ php وجود دارد، همچنان این زبان برنامهنویسی یکی از 10 زبان پرکاربرد دنیاست و طرفدارهای خودش را دارد.
از دلایل محبوبیت این زبان برنامه نویسی وب باید به قابلیت بالا برای استفاده در سمت سرور(server side)، سازگاری با پایگاه دادههای مختلف، امکان استفاده در سیستمهای مدیریت محتوای متنباز (open source) قدرتمندی همچون whmcs و وردپرس در کنار سادگی در syntax و کمهزینه بودن آن اشاره کرد. از طرف دیگر، وجود فریمورکهای قدرتمند و محبوبی مثل لاراول که از php سورس میگیرند، باعث شده تا توسعهدهندهها و طرفدارها زیادی به سمت این زبان برنامهنویسی جذب شوند.
سامانه ملی پیامک ابزاری را به نام web service ارائه میدهد تا کاربران و توسعه دهندگان بتوانند قابلیت ارسال پیامک را به پروژههای خود اضافه کنند. برای راحتی کاربران php سامانه ملی پیامک، امکاناتی همچون پلاگینهای متن باز، گیت هاب، نمونه کدهای آمادهی procedural را فراهم کرده است. همچنین توسعه و طراحی ابزار جدیدی به نام کنسول ملیپیامک بخشی از فعالیتهاییست که باعث میشود هر زمان یک توسعهدهنده نیاز به ارسال پیامک داشته باشد، بتواند این امکان را با کمترین پیچیدگی به پروژهاش اضافه کند.
در همین راستا راهنمای کامل ارسال پیامک با php را برای کاربران ملی پیامک آماده کردیم تا در صورت نیاز بتوانند از این آموزش جامع استفاده کنند.
روشهای استفاده از php
طبق گفتهی ملی پیامک، برای استفاده از web api در php بهصورت کلی دو روش وجود دارد:
- (Soap (Simple Object Access Protocol: پروتکل انتقال مبتنی بر XLM که بهصورت معمول از پروتکلهای HTTP یا HTTPS برای تبادل اطلاعات استفاده میکند.
- (REST (Representational state transfer : معماری نرم افزاری برای تعریف قوانین و محدودیتها در استفاده از وبسرویس است و سرویسی که تحت این معماری ارائه میشود، RESTfull نام دارد.
در وبسرویس ملی پیامک هر دو روش فوق ارائه شدند و کاربران بر اساس نیازشان میتوانند مطابق با مستندات و نمونه کدهای ارائه شده (نه تنها برای php بلکه اکثریت زبانهای مورد استفاده در توسعه وب) این سرویس را در پروژه خود پیادهسازی و سایت یا وب اپلیکیشن خود را به ارسال پیامک مجهز کنند.
برای استفاده از SOAP نیاز است که این سرویس حتماً در سمت سرور فعال باشد ولی برای استفاده از REST نیاز به هیچگونه پیشنیازی نخواهد بود، در واقع یکی از دلایل محبوبیت و فراگیر شدن سرویسهای RESTfull ساده بودن و عدم نیاز به ایجاد تغییراتی خاص در تنظیمات سرویسدهنده است.
روش REST
در ارسال پیامک با php برای استفاده از سرویسهای RESTfull کتابخانه cURL پیشنهاد میشود.سرویس REST با استفاده از پروتکل HTTP یا HTTPS انتقال داده را انجام خواهد و توسط متد POST دادهها در آن تبادل میشوند.
معماری REST به دلیل ایجاد امنیت بیشتر نسبت به SOAP به دلیل جایگذاری دادههای درخواستی به سمت سروبسدهنده در بدنه (بهجای سرآیند درخواست)، برای بعضی از کاربران بیشتر توصیه میشود. در این روش دادههای موردنیاز api پیامکی بصورت آرایههای انجمی در بدنه درخواست قرار میگیرند و برای سرویسدهنده پیامکی ارسال میشوند.
روش SOAP
پروتکل SOAP که قدمت بیشتری نسبت به REST دارد. کلاس Soap در php بیشتر مورد استفاده میشود و متد ارسال داده در web api سامانه ملی پیامک GET است.
اما یکی از نقاط ضعف بزرگ این روش، فعال بودن افزونه SOAP در سرورهای مصرف کننده این سرویس است چون در غیر این صورت، این سرویس قابلیت ارسال، دریافت و پردازش درخواستها را نخواهد داشت. بنابراین در صورتی که تمایل به استفاده از سرویس SOAP در پروژههای خود را دارید، حتماً از فعال بودن آن در پروژه خود مطمئن شوید.
خطای غیرفعالبودن سرویس SOAP در php
در ضمن اگر این خطا را دریافت کنید، میبایست از طریق پشتیبانی هاستینگ و یا نرم افزارهای مختلف مدیریتی سرور و هاست سرویس SOAP را جتماً فعال کنید:
SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://api.payamak-panel.com/post/send.asmx?wsdl' : failed to load external entity "http://api.payamak-panel.com/post/send.asmx?wsdl"
کلاسهای وبسرویس
وبسرویس ملی پیامک دارای 7 کلاس است. هر کدام از آنها شامل تعدادی متد برای استفاده کاربران میشود که مهمترین این کلاسها شامل ارسال، دریافت، دفترچه تلفن و کاربران (نمایندگی) است.
لیست کامل به همراه مستندات و نمونه کدها در صفحه وبسرویس ملی پیامک قرار دارد، تا بهراحتی تنها با کپی کردن نمونه کد موردنظر (کدهای procedural و یا استفاده از github) و قرار دادن آن در پروژه خود اقدام به ارسال پیامک کنید.
کلاس ارسال
در کلاس ارسال متدهای مختلفی برای ارسال پیامک با توجه به نیاز کاربران قرار داده شده است. متدهایی مانند ارسال پیامک تکی، ارسال انبوه، ارسال از طریق وبسرویس خدماتی اشتراکی (ارسال به لیست سیاه مخابرات)، مشاهده وضعیت دریافت پیامکهای ارسالی و ... همگی در کلاس ارسال هستند.
برای مشاهده مستندات تابع و نمونه کدهای php کلاس ارسال پیامک میتوانید مستندات وبسرویس ارسال را کامل بخوانید.
وبسرویس خدماتی
بهطور کلی، دستهبندی خطوط ارسال پیامک در پنلهای پیامکی شامل دو بخش تبلیغاتی و خدماتی است. تفاوت عمدۀ این دو دسته اینجاست که از خطوط تبلیغاتی صرفاً برای تبلیغات باید استفاده کرد و از خطوط خدماتی فقط باید پیامکهای اطلاعرسانی و خدمات ارائه شده به کاربر را فرستاد. البته مانعی در ارسال پیامکهای اطلاعرسانی از خطوط تبلیغاتی وجود ندارد ولی مجاز به ارسال تبلیغات از خط خدماتی نیستید.
لیست سیاه مخابرات
یکی از مشکلات مرسوم ارسال پیامک، لیست سیاه مخابرات است. بلک لیست یا همان لیست سیاه مخابرات شمارههایی هستند که دریافت پیامک از خطوط تبلیغاتی را مسدود کردند، بنابراین تنها راه برای ارسال پیام به این گروه استفاده از خط خدماتیست.
تهیه خط خدماتی شرایط خاص خود را دارد که در قسمت خطوط خدماتی مفصل توضیح دادیم. تهیه و استفاده از این خطوط برای همه کاربران ممکن نیست، برای همین سامانه ملی پیامک برای این دسته از کاربران، خط خدماتی خود را برای استفاده در وبسرویس به اشتراک گذاشته است. نام این سرویس وبسرویس خدماتی اشتراکی است و در بین کاربران با عناوین ارسال کد اعتبار سنجی یا OTP، ارسال پترن، ارسال بر اساس الگو یا قالب شناخته میشود. برای مشاهده مستندات استفاده از این متد به همراه نمونه کدهای php ارسال از خط خدماتی را میتوانید مطالعه کنید.
کلاس دریافت
این کلاس برای استفادۀ کاربران و برنامهنویسان و دسترسی به لیست جامعی از پیامهای دریافتی روی پنل کاربری، جزئیات پیامها، تفکیک پیامکهای ارسالی و دریافتی بر اساس بازههای زمانی متفاوت و حذف پیامهای ارسالی و دریافتی استفاده میشود.
برای مشاهده مستندات تابع و نمونه کدهای php کلاس دریافت میتوانید بخش وبسرویس دریافت را بخوانید.
کلاس دفترچه تلفن
همیشه برای بسیاری از کاربران وجود لیستی از شمارههای مشتریان آنها حائز اهمیت است و این ویژگی یک امتیاز مثبت در جذب مشتری برای هر مجموعهای تجاری محسوب میشود.
این کلاس به شما قابلیت ایجاد دفترچه تلفنهای مختلف، اضافه کردن کاربران و ویرایش هر کدام از دفترچهها را میدهد که برای مشاهده مستندات و نمونه کدهای php آن میتوانید قسمت وبسرویس دریافت را بخوانید.
کلاس کاربران
شما هم میتوانید مانند سامانه ملی پیامک با تهیه پنل نمایندگی اقدام به فروش پنل و جذب مشتری کنید. با تهیه پنل نمایندگی شما نیز به یک ارائه دهنده پنل پیامکی تبدیل میشوید و برای انجام امور مربوط به مدیریت کاربران (ثبتنام، ایجاد کاربرهای جدید)، تعریف بستههای پنل، بخش تیکت و پشتیبانی و مدیریت تراکنشهای مالی از کلاس کاربران استفاده خواهید کرد.
مستندات و نمونه کدهای php کلاس کاربری در قسمت وبسرویس کاربران و نمایندگان قابل مشاهده است.
امکانات استفاده از وبسرویس در php
در ملی پیامک برای استفاده از وبسرویس و ارسال پیامک با php سه روش فراهم شده است تا کاربران بر اساس نیاز خود بتوانند از آن استفاده کنند. این سه روش به شرح زیر است:
گیت هاب ملی پیامک
کدهای استفاده از وبسرویس برای زبان php و فریمورک لاراول در گیت هاب ملی پیامک در کنار تمامی زبانهای برنامه نویسی دیگر قرار داده شده است. حالا کاربران به راحتی بتوانند از متدهای موجود در کلاسهای وبسرویس استفاده کنند و در پیشبرد کیفیت این کدها مشارکت داشته باشند.
نمونه کدهای موجود در سایت
برای آن دسته از کاربرانی که علاقهای به استفاده از گیت هاب ندارند و تنها به یک یا چند متد از کلاسهای وبسرویس نیاز دارند، نمونه کدهای Procedural در صفحه مستندات ملی پیامک قرار داده شده است. با این مستندات کاربر تنها با کپی کردن متد مورد نظر در پروژه خود از امکانات وبسرویس بهرمند میشود.
کنسول پیامک
سومین امکان هم در رسال پیامک با php کنسول پیامک است که تابهحال امکان استفاده از آن فقط با استفاده از نام کاربری و رمز عبور امکان پذیر بوده است، اما ملی پیامک برای ایجاد امنیت و همچنین آسانسازی استفاده از API اقدام به ایجاد بخشی خاص و مجزا از پنل کاربری خود بنام کنسول ملی پیامک کرده است.
حالا کاربران وبسرویس با ثبتنام در کنسول از طریق کلید (و یا توکن) قادر به استفاده از API سامانه هستند. تمامی توابع در بستر RESET فراخوانی شده و برای اولین بار قابلیت مانیتور ارسالهای نادرست در وبسرویس ایجاد شده است تا در صورت استفاده از کنسول قادر باشید خطاهای دریافتی در وبسرویس را در کنسول خود با توضیح کامل و دلیل دریافت خطا را مشاهد کنید. علاوهبر این قابلیت ارسال تیکت مستقیم برای هر خطا از بخش گزارشگیری ایجاد شده تا بعد از هر خطا پیگیری آن انجام شود.
در گام اول در کنسول، نمونه کدهای آماده برای کلاسهای ارسال و دریافت در php قرار داده شده تا با کپی کردن این کدها و جایگذاری در پروژه قابلیت بهرهمندی از متدهای موجود را داشته باشید. درعینحال بتوانند پیگیری خطاهای دریافتی هم از این طریق امکانپذیر است.
در ضمن، بهزودی تمامی زبانهای مورد نیاز کاربران برای استفاده از API سامانه ملیپیامک در کنسول افزوده خواهد شد.
نتیجه گفتگو درباره ارسال پیامک با php
تا اینجا به تمام روشهای ارسال پیامک با php اشاره کردیم و شما تا حدودی با خدمات ارائهشده سامانه ملی پیامک در این زمینه آشنا شدید.
در صورتی که پنل را تهیه کردید و نیاز به مشاوره بیشتر داشتید برای صحبت با کارشناسان تیم وبسرویس میتوانید با 02163404تماس بگیرید. همچنین در انتهای همین مطلب میتوانید سوالات بیشتر را برای ما و مخاطبان ملی پیامک بنویسید تا به آن پاسخ دهیم.
ارسال نظر