PDA

View Full Version : sms API



sina7650
جمعه 26 تیر 1394, 02:18 صبح
سلام دوستان
من یه وبسایت پی اچ پی با کدایگنایتر دارم مینویسم
توی قسمت وب سرویس پیامکش به مشکل برخوردم
توی خود پنل پیامک یه مقدار نمونه کد گذاشته بود که جواب نمیداد
تیکت هم که میذارم خودشون هم گویا خیلی بلد نیستن :لبخند:
کلا تو سایت های مختلف که نگاه کردم همشون یه کدی رو گذاشتن
نمیدونم از کجا کش رفتن :قهقهه:
حالا میخواستم ببینم از دوستان کسی تا حالا با ای پی آی پنل های پیامک کار کرده ؟
یه کم لطفا منو راهنمایی کنین
خیلی ممنون

Master_Power
جمعه 26 تیر 1394, 11:43 صبح
سلام
من کار کردم
بفرمایید

sina7650
شنبه 27 تیر 1394, 00:18 صبح
خب من یه div توی صفحه م دارم که میخوام متن پیامک هایی که برام اومده رو داخلش لیست کنم
نمونه کدی که گذاشتن اینه
<?php
ini_set("soap.wsdl_cache_enabled", "0");
$sms_client = new SoapClient('http://87.107.121.54/post/Receive.asmx?wsdl', array('encoding'=>'UTF-8'));
$parameters['username'] = "";
$parameters['password'] = "";
$parameters['location'] = 1;
$parameters['from'] = "";
$parameters['index'] = 0;
$parameters['count'] =10;
echo $sms_client->GetMessageStr($parameters)->GetMessageStrResult;
?>

یوزر نیم و پسورد رو هم جایگزین کردم ولی چیزی خروجی نمیگیرم
کلا میخواستم ببینم باید چی کار کنم
ممنون

sina7650
یک شنبه 28 تیر 1394, 00:56 صبح
آقای مستر پاور من پروژم گیره
لطفا یه کم سریع تر پاسخ بدین
ممنون

Keramatifar
یک شنبه 28 تیر 1394, 05:21 صبح
دوست عزیز
کد شما مشکل خاصی نداره
اگر کلا چیزی دیده نمیشه با استفاده از کد زیر در خط اول برنامه، خطاها رو نمایش دهید تا ببنید مشکل از چیه

ini_set('display_errors','On');
احتمالا مشکل می تونه از سمت سرویس دهنده باشه
اگر مشکلتون حل نشد
یک پیامک حاوی متن PHP-SMS و Email خودتون، به شماره 5000282930 ارسال نمایید تا یک پنل تستی به همراه کدهای نمونه براتون ارسال بشه

Master_Power
یک شنبه 28 تیر 1394, 09:38 صبح
آقای مستر پاور من پروژم گیره
لطفا یه کم سریع تر پاسخ بدین
ممنون
سلام
اول اینکه حتما طرف خوابه که جواب نمیده
بابا ما هم کار و زندگی داریما

همون جوابی که آقای Keramatifar (http://barnamenevis.org/member.php?3349-Keramatifar) عزیز گفتن را انجام بدید
یعنی display_errors را on کنید و خطا را بررسی کنید

اگه مشکلی بود در خدمتم

sina7650
یک شنبه 28 تیر 1394, 09:56 صبح
ممنون آقای کرامتی فر از پاسختون
یک دامین برای تست ساختم www.3tap.tk با یک فایل ایندکس دات پی اچ پی
من توی بخش انتقال ترافیک پنل این url رو وارد کردم
http://www.3tap.tk/index.php?to=$TO$&body=$TEXT$&from=$FROM$
توی فایل ایندکس هم این کد رو گذاشتم
<?php
ini_set('display_errors','On');
ini_set("soap.wsdl_cache_enabled", "0");
$sms_client = new SoapClient('http://www.3tap.tk/post/Receive.asmx?wsdl', array('encoding'=>'UTF-8'));
$parameters['username'] = "یوزر";
$parameters['password'] = "پسورد";
$parameters['location'] = -1;
$parameters['from'] = "";
$parameters['index'] = 0;
$parameters['count'] =10;
echo $sms_client->GetMessageStr($parameters)->GetMessageStrResult;
?>

اروری هم که نشون میده اینه :
Fatal error: Uncaught SoapFault exception: [WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from 'http://www.3tap.tk/post/Receive.asmx?wsdl' : failed to load external entity "http://www.3tap.tk/post/Receive.asmx?wsdl" in /home/alirezar/public_html/3tap.tk/index.php:4 Stack trace: #0 /home/alirezar/public_html/3tap.tk/index.php(4): SoapClient->SoapClient('http://www.3tap...', Array) #1 {main} thrown in /home/alirezar/public_html/3tap.tk/index.php on line 4

حالا میخواستم ببینم باید چی کار کنم
تشکر

Master_Power
یک شنبه 28 تیر 1394, 10:08 صبح
آقا این فایل که رو سیستمتون نیست
http://www.3tap.tk/post/Receive.asmx?wsdl

بعدشم مگه شما از یه سرویس دهنده پیامک سرویس نمیگیرین ؟
خب باید ادرس API URL اون سایت را بزنید

sina7650
یک شنبه 28 تیر 1394, 10:27 صبح
توی پی دی اف شون نوشتن این آدرس هست
http://api.payamak-panel.com/post/receive.asmx?wsdl
توی نمونه کدی که گذاشتن این آدرس هست
http://87.107.121.54/post/Receive.asmx?wsdl

Master_Power
یک شنبه 28 تیر 1394, 10:31 صبح
توی پی دی اف شون نوشتن این آدرس هست
http://api.payamak-panel.com/post/receive.asmx?wsdl
توی نمونه کدی که گذاشتن این آدرس هست
http://87.107.121.54/post/Receive.asmx?wsdl

چیزی که تو نمونه کد زدن را وارد کنید

sina7650
یک شنبه 28 تیر 1394, 11:03 صبح
هیچ کدوم جواب نمیده
اصلا فایل اکس ام ال وجود نداره

Master_Power
یک شنبه 28 تیر 1394, 11:06 صبح
هیچ کدوم جواب نمیده
اصلا فایل اکس ام ال وجود نداره

یه تماس با سرویس دهنده پیامکیت بگیر

sina7650
یک شنبه 28 تیر 1394, 11:24 صبح
تیکت قبلا گذاشتم
خودشون خیلی اطلاعی ندارن
شما خودتون قبلا از ای پی آی های پنل های پیامک استفاده کردین روال کارتون به چه صورت بوده ؟

Master_Power
یک شنبه 28 تیر 1394, 11:48 صبح
این نمونه کدی هست که من برای سستم خودمون نوشتم

<?php



if (isset($_POST['sms_send'])){
$s_u=$_POST['sms_u'];
$s_p=$_POST['sms_p'];
$s_n=$_POST['sms_n'];
$to=$_POST['to'];
$text=$_POST['text'];
echo $a=sendsms($s_u,$s_p,$to,$text);
if($a)
{echo"پیام فرستاده شد";}
}

function sendsms($s_u,$s_p,$to,$text){

$host="newsms.ir";
$path="/API/SendSMS.aspx";
$site=$_SERVER['HTTP_HOST'];
$sitefu=$_SERVER['REQUEST_URI'];
$data_to_send="username=$s_u&password=$s_p&to=$to&text=".urlencode($text);

$fp = fsockopen($host,80);
$outp="POST $path HTTP/1.1\n";
$outp.="Host: $host\n";
$outp.="Content-type: application/x-www-form-urlencoded\n";
$outp.="Content-length: ".strlen($data_to_send)."\n";
$outp.="Connection: close\n\n";
$outp.=$data_to_send;
fputs($fp,$outp);
fclose($fp);
}


?>

sina7650
دوشنبه 29 تیر 1394, 01:22 صبح
بعد شما توی خود پنل هم تنظیمات خاصی انجام دادین ؟
الان این sms_u و sms_p و . . . از طریق کدوم فرم post شدن ؟
کد شما خیلی با نمونه کدی که خودشون گذاشتن فرق میکنه
البته من واسه دریافت پیام ها میخوام
این مستنداتی هست که خودشون ارائه دادن

http://sms.webone.ir/files/SamplePHP.rar

http://sms.webone.ir/Files/webservice-Receive.pdf

اگر ممکنه یه نگاهی بندازین ببینین من الان باید دقیقا چی کار کنم
شرمنده زیاد سوال پرسیدم
ایشالا که با کمک شما هر چه زودتر این مسئله هم حل بشه
ممنون

Master_Power
دوشنبه 29 تیر 1394, 01:49 صبح
کد را اصلاح کردم

این کد درسته

<form action="" method="get">
<label for="1">نام کاربری</label>
<input type="text" id="1" name="username">
<br>
<label for="2">پسورد</label>
<input type="text" id="2" name="password">
<br>
<label for="3">شماره گیرنده</label>
<input type="text" id="3" name="to">
<br>
<label for="4">شماره ارسال کننده</label>
<input type="text" id="4" name="from">
<br>
<label for="5">متن پیام</label>
<textarea name="text" id="5"></textarea>
<input type="submit" name="sms_send" value="ارسال">
</form>

<?php
if (isset($_POST['sms_send']))
{
$sms_username=$_POST['username'];
$sms_password=$_POST['password'];
$sms_to=$_POST['to'];
$sms_from=$_POST['from'];
$sms_text=$_POST['text'];

// turn off the WSDL cache

ini_set("soap.wsdl_cache_enabled", "0");
$sms_client = new SoapClient('http://87.107.121.54/post/send.asmx?wsdl', array('encoding'=>'UTF-8'));

$parameters['username'] = '$sms_username';
$parameters['password'] = '$sms_password';
$parameters['to'] = '$sms_to';
$parameters['from'] = '$sms_from';
$parameters['text'] = '$sms_text';
$parameters['isflash'] =false;

echo $sms_client->SendSimpleSMS2($parameters)->SendSimpleSMS2Result;
if($sms_client)
echo "پیام ارسال شد";
}
?>

sina7650
دوشنبه 29 تیر 1394, 02:09 صبح
خب این واسه ارسال هست
دریافتش رو من میخوام
راستی الان این http://87.107.121.54/post/send.asmx?wsdl توی فایرفاکس من چیزی رو نمیاره :متفکر:

Master_Power
دوشنبه 29 تیر 1394, 08:53 صبح
اینم کد دریافت

<?php
ini_set("soap.wsdl_cache_enabled", "0");
$sms_client = new SoapClient('http://87.107.121.54/post/Receive.asmx?wsdl', array('encoding'=>'UTF-8'));
$parameters['username'] = "username";
$parameters['password'] = "password";
$parameters['location'] = 1;
$parameters['from'] = "";
$parameters['index'] = 0;
$parameters['count'] =10;
echo $sms_client->GetMessageStr($parameters)->GetMessageStrResult;
?>

sina7650
دوشنبه 29 تیر 1394, 11:05 صبح
بله من دقیقا همین کد رو گذاشتم توی صفحه فقط یوزر و پسورد ورود به پنل رو جایگزین کلمه های username , password کردم
اما صفحه سفید میاره
:ناراحت:
تازه اینو هم اولش گذاشتم
ini_set('display_errors','On');
اما چیزی نشون نمیده :
www.3tap.tk

Master_Power
دوشنبه 29 تیر 1394, 11:40 صبح
دوست عزیز این کد نمونه هست
همینجوری که کار نمیکنه

باید براش آرایه بنویسی و دریافتی ها را بریزی توش

sina7650
دوشنبه 29 تیر 1394, 13:59 عصر
اینو آخرش اضافه کردم


$result = array() ;
$result = $sms_client->GetMessageStr($parameters)->GetMessageStrResult ;
var_dump($result) ;

اروری که میده میگه فایل xml وجود نداره

sina7650
سه شنبه 30 تیر 1394, 17:12 عصر
آقای مستر پاور لطفا کد کاملش رو بذارین یعنی همون آرایه و . . . که فرمودین :متفکر:

sina7650
چهارشنبه 31 تیر 1394, 21:12 عصر
آقای کرامتی فر شما پاسخی نمیدین ؟

sina7650
یک شنبه 04 مرداد 1394, 00:26 صبح
چرا هیچکس جواب نمیده ؟ :ناراحت: