composer require tahaghafuri/melipayamak
یا از طریق اضافه کردن خط زیر به فایل composer.json
"tahaghafuri/melipayamak": "*"
و سپس اجرای دستور
composer update
require __DIR__ . '/vendor/autoload.php';
use Melipayamak\MelipayamakApi;
try{
$username = 'username';
$password = 'password';
$api = new MelipayamakApi($username,$password);
$sms = $api->sms();
$to = '09123456789';
$from = '5000...';
$text = 'تست وب سرویس ملی پیامک';
$response = $sms->send($to,$from,$text);
$json = json_decode($response);
echo $json->Value; //RecId or Error Number
}catch(Exception $e){
echo $e->getMessage();
}
از آنجا که وب سرویس ملی پیامک تنها محدود به ارسال پیامک نیست شما از طریق زیر میتوانید به وب سرویس ها دسترسی کامل داشته باشید:
// وب سرویس پیامک
$smsRest = $api->sms();
$smsSoap = $api->sms('soap');
// وب سرویس تیکت پشتیبانی
$ticket = $api->ticket();
// وب سرویس برای مدیریت کامل ارسال انبوه پیامک
$branch = $api->branch();
//وب سرویس کاربران
$use
8000
rs = $api->users();
//وب سرویس دفترچه تلفن
$contacts = $api->contacts()
شما میتوانید از وب سرویس ملی پیامک در حالت آسنکرون هم استفاده کنید. آماده سازی آسنکرون در PHP به صورت زیر است. توجه کنید که دستورات آسنکرون به شرط فراخوانی متد execute
(بطور موازی) انجام می شوند.
// وب سرویس پیامک
$smsRestAsync = $api->sms('async');
$smsSoapAsync = $api->sms('soap', 'async');
// وب سرویس تیکت پشتیبانی
$ticket = $api->ticket('async');
// وب سرویس برای مدیریت کامل ارسال انبوه پیامک
$branch = $api->branch('async');
//وب سرویس کاربران
$users = $api->users('async');
//وب سرویس دفترچه تلفن
$contacts = $api->contacts('async');
از آنجا که ملی پیامک وب سرویس کاملی رو در اختیار توسعه دهندگان میگزارد برای راحتی کار با وب سرویس پیامک علاوه بر وب سرویس اصلی soap وب سرویس rest رو هم در اختیار توسعه دهندگان گزاشته شده تا راحتتر بتوانند با وب سرویس کار کنند. تفاوت اصلی این دو در تعداد متد هاییست که میتوانید با آن کار کنید. برای کار های پایه میتوان از وب سرویس rest استفاده کرد برای دسترسی بیشتر و استفاده پیشرفته تر نیز باید از وب سرویس باید از وب سرویس soap استفاده کرد. جهت مطالعه بیشتر وب سرویس ها به قسمت وب سرویس پنل خود مراجعه کنید.
برای مطالعه بیشتر و دریافت راهنمای وب سرویس ها و آشنایی با پارامتر های ورودی و خروجی وب سرویس به صفحه معرفی وب سرویس ملی پیامک مراجعه نمایید .
متد های وب سرویس:
$smsRest->send($to,$from,$text,$isFlash);
$smsSoap->send($to,$from,$text,$isFlash);
$smsSoap->addblacklist($title);
$smsSoap->sharedServiceBodyAdd($title,$body,$blackListId);
$smsSoap->getSharedServiceBody();
$smsRest->sendByBaseNumber($text,$to,$bodyId);
$smsSoap->sendByBaseNumber($text,$to,$bodyId);
- در وب سرویس soap به جای ارسال یک شماره آرایه ای از شماره ها نیز قابل قبول است
$smsRest->isDelivered($recId);
$smsSoap->isDelivered($recId);
- به در وب سرویس soap به جای تک آیدی میتوان آرایه نیز ارسال کرد.
$smsRest->getMessages($location,$index,$count,$from);
$smsSoap->getMessages($location,$index,$count,$from);
$smsSoap->getMessagesStr($location,$index,$count,$from);
// جهت دریافت به صورت رشته ای
$smsSoap->getMessagesByDate($location,$index,$count,$from,$dateFrom,$dateTo);
//جهت دریافت بر اساس تاریخ
$smsSoap->getUsersMessagesByDate($location,$index,$count,$from,$dateFrom,$dateTo);
// جهت دریافت پیام های کاربران بر اساس تاریخ
$smsRest->getCredit();
$smsSoap->getCredit();
$smsRest->getBasePrice();
$smsSoap->getPrice($irancellCount,$mtnCount,$from,$text);
$smsRest->getNumbers();
$smsSoap->getInboxCount($isRead);
//پیش فرض خوانده نشده
$smsSoap->send2($to,$from,$text,$isflash,$udh);
$smsSoap->getMessagesReceptions($msgId,$fromRows);
$smsSoap->remove($msgIds);
$smsSoap->sendSchedule($to,$from,$text,$isflash,$scheduleDateTime,$period);
$smsSoap->sendMultipleSchedule($to,$from,$text,$isflash,$scheduleDateTime,$period);
$smsSoap->addUsance($to,$from,$text,$isflash,$scheduleStartDateTime,$repeatAfterDays,$scheduleEndDateTime);
$smsSoap->getScheduleStatus($schId);
$smsSoap->removeSchedule($schId);
$smsSoap->sendWithSpeech($to,$from,$text,$speech);
$smsSoap->sendWithSpeechSchduleDate($to,$from,$text,$speech,$scheduleDate);
$smsSoap->getSendWithSpeech($recId);
$smsSoap->SendBulkSpeechText($title, $body, $receivers, $DateToSend, $repeatCount);
$smsSoap->SendBulkVoiceSMS($title, $voiceFileId, $receivers, $DateToSend, $repeatCount);
$smsSoap->UploadVoiceFile($title, $base64StringFile);
$branch->get($owner);
$branch->add($branchName,$owner);
$branch->addNumber($mobileNumbers,$branchId);
$branch->remove($branchId);
$branch->sendBulk($from,$title,$message,$branch,$DateToSend,$requestCount,$bulkType,$rowFrom,$rangeFrom,$rangeTo);
$branch->sendBulk2($from,$title,$message,$branch,$DateToSend,$requestCount,$bulkType,$rowFrom,$rangeFrom,$rangeTo);
$branch->getBulkCount($branch,$rangeFrom,$rangeTo);
$branch->getBulkReceptions($bulkId,$fromRows);
$branch->getBulkStatus($bulkId);
$branch->getTodaySent();
$branch->getTotalSent();
$branch->removeBulk($id);
$branch->sendMultipleSms($to,$from,$text,$isflash,$udh);
$branch->updateBulkDelivery($bulkId);
$ticket->add($title,$content,$aletWithSms);
$ticket->getReceived($ticketOwner,$ticketType,$keyword);
$ticket->getReceivedCount($ticketType);
$ticket->getSent($ticketOwner,$ticketType,$keyword);
$ticket->getSentCount($ticketType);
$ticket->response($ticketId,$type,$content,$alertWithSms);
$contacts->addGroup($groupName,$Descriptions,$showToChilds);
$contacts->add($options);
$contacts->checkMobileExist($mobileNumber);
$contacts->get($groupId,$keyword,$from,$count);
$contacts->getGroups();
$contacts->change($options);
$contacts->remove($mobilenumber);
$contacts->getEvents($contactId);
$users->addPayment($options);
$users->add($options);
$users->addComplete($options);
$users->addWithLocation($options);
$users->authenticate();
$users->changeCredit($amount,$description,$targetUsername,$GetTax);
$users->forgotPassword($mobileNumber,$emailAddress,$targetUsername);
$users->getBasePrice($targetUsername);
$users->getCredit($targetUsername);
$users->getDetails($targetUsername);
$users->getNumbers();
$users->getTransactions($targetUsername,$creditType,$dateFrom,$dateTo,$keyword);
$users->get();
$users->hasFilter($text);
$users->remove($targetUsername);
$users->getProvinces();
$users->getCities($provinceId);
$users->getExpireDate();