بسمه تعالی

وبسرویس شارژ و خدمات آفتاب گستر

www.aftabgostar.ir

 

نسخه 1.0

دی ماه 1393

نویسنده : علی ارخودی قلعه نوئی

Aliarkhodi.ir


شرح وبسرویس :
وبسرویس تشکیل شده از تعدادی تابع که با استفاده از این توابع می توانید عملیات مورد نظر خود را از سرور آفتاب گستر درخواست کنید .
بدیهی است ابتدا باید در پرتال نمایندگان آفتاب گستر عضو شوید  و اعتبار خریداری کنید .
نام کاربری و رمز عبور وبسرویس که همه متد ها مورد نیاز می باشد همان نام کاربری و رمز عبور شما در پرتال نمایندگان می باشد . تغییر نام کاربری در پرتال امکان پذیر نمی باشد ولی امکان تغییر رمز وجود دارد توجه نمائید در صورتی که رمز خود را در وبسرویس تغییر دادید باید رمز جدید را در کدهای وبسرویس نیز اعمال کنید  .
برای ثبت نام به این آدرس مراجعه کنید :
http://www.aftabgostar.ir/portal/reg.php
سپس وارد پرتال شده و از منوی وبسرویس (webservic ) اطلاعات مربوط به وبسرویس را مشاهده نمائید .
اعتبار وبسرویس جهت انجام خرید همان اعتبار پرتال میباشد لذا برای استفاده از وبسرویس باید در پرتال کاربری اعتبار خریداری نمائید .
آدرس وبسرویس :
http://www.aftabgostar.ir/webservice/server.php?wsdl
برای استفاده از وبسرویس ابتدا باید کتابخانه nusoap   را فراخوانی کنید بنابراین نیاز هست که این کتابخانه را دانلود کنید و در ابتدای فایل خود اینکلود کنید . کتابخانه را می توانید از آدرس زیر دانلود کنید.
http://sourceforge.net/projects/nusoap /
تذکرها :
کلیه خطا های سیستم طبق جدول شماره یک می باشد دقت داشته باشید شماره خطا ها با اعداد منفی نمایش داده می شود
و اعداد مثبت مربوط به پاسخ متد ها می باشد .
کلیه مبالغ به کار رفته در وبسرویس به ریال می باشد.


شرح متد ها :
متد Get_credit :
این متد برای استعلام موجود شما نزد آفتاب گستر می باشد .
این تابع به این شکل می باشد :                       Get_credit ($auth);
متغییر $auth یک آرایه است که عناصر آن نام کاربری و رمز عبور می باشد .


نام ورودی

کارکرد

نوع

مثال

$username

نام کاربری در آفتاب گستر

رشته

array('gateway_user' => 'demo')

$password

روز عبور در آفتاب گستر

رشته

array('gateway_pass' => 'demo')

خروجی این تابع مبلغ اعتبار شما نزد آفتاب گستر به ریال می باشد . چنانچه خطایی رخ داده باشد مقدار برگشتی تابع شماره خطا می باشد .
مثال :

 

تابع : Topup
این تابع برای شارژ مستقیم سیم کارت استفاده می شود (برای همه اپراتورها)
شکل کلی این متد به این صورت می باشد :
Topup ($username , $password, $number, $amount , $op, $type, $prid , $extid , $text , $server)


نام ورودی

کارکرد

نوع

مثال

$username

نام کاربری در آفتاب گستر

رشته

array('gateway_user' => 'demo')

$password

روز عبور در آفتاب گستر

رشته

array('gateway_pass' => 'demo')

$number

شماره موبایل

رشته

09399286861

$amount

مبلغ به ریال

int

ایرانسل و رایتل از 5000 تا 500000 ریال و همراه اول 10و20و50و100و200 هزار ریال

$op

اپراتور

int

همراه اول = 1  و ایرانسل =2  و رایتل = 3  و تالیا=4

$type

نوع سیم کارت

Int

دائمی = 2    و   اعتباری =1

$prid

نوع شارژ

int

ایرانسل=>         معمولی= 20 ؛ شگفت انگیز=19 و بسته های اینترنت=43
همراه اول =>    معمولی=20

$extid

شماره تراکنش ارسالی از سمت کلاینت

رشته

QWee5646e4f6e5f
در هر تراکنش باید یک رشته یونیکد تولید کنید و در این متغییر ارسال کنید

$text

متن داخل اس ام اس

رشته

این متن فقط حروف و اعداد انگلیسی بدون هیچ کاراکتر اضافه ای حتی فاصله و حداکثر 35 کاراکتر باید باشد در غیر این صورت شارژ انجام نمی شود

$server

انتخاب سرور

Int

در حالت عادی برای همراه اول عدد 1 و ایرانسل عدد 2 ارسال شود
برای شرایط خاص پارامتر های لازم به شما اعلام می شود

خروجی این متد یک آرایه است که مقادیر آن به ترتیب وضعیت تراکنش و شماره تراکنش وبسرویس و نیز شماره تراکنش اپراتور می باشد .
مقدار اول یکی از مقادیر جدول یک را میگیرد که 1 به معنی شارژ موفق , 2 به معنی در حال انجام می باشد (که در این وضعیت باید از متد Check برای گرفتن وضعیت نهایی تراکنش استفاده کنید) و 12- به معنی شارژ ناموفق می باشد .
مثال:

متد Check :
کار این متد استعلام وضعیت شارژ یک تراکنش از سرور آفتاب گستر می باشد
روش نوشتن به این شکل است :
Check ($username , $password, $extid)
خروجی این تابع به این شکل است :                                   توضیح ; عدد
عدد صفر یعنی شارژ ناموفق بوده است
عدد 1 یعنی شارژ موفق بوده است
عدد 2 یعنی شارژ درحال انجام است چند لحظه بعد عمل کنید.
$extid   شماره تراکنشی است که توسط خود شما هنگام درخواست شارژ با متدTopup ارسال شده است

مثال :




متد check_bill :
کار این متد چک کردن وضعیت قبض می باشد که آیا قابل پرداخت می باشد یا نه و همچنین مبلغ و نوع قبض را بر می گرداند .
روش نوشتن این متد به این صورت می باشد :
check_bill($username,$password,$sh_g, $sh_p)
$sh_g شناسه قبض می باشد
$sh_p شناسه پرداخت می باشد
خروجی این تابع به این شکل می باشد :
مبلغ قبض به ریال ; نوع قبض ; توضیح ; عدد
عدد : نشانگر تراکنش بوده و طبق جدول شماره یک می باشد
نوع قبض : یک عدد بوده که طبق جدول شماره دو می باشد
مثال :


متد pay_bill:
این متد برای پرداخت قبض استفاده می شود
روش نوشتن این متد به این صورت می باشد :
pay _bill($username,$password,$sh_g, $sh_p)

$sh_g شناسه قبض می باشد
$sh_p   شناسه پرداخت می باشد
خروجی این تابع به این شکل می باشد :                            توضیح  ;   عدد
که عدد نشانگر وضعیت عملیات می باشد و طبق جدول شماره یک می باشد
مثال :

متذ Order_Pin:

این متد برای سفارش و دریافت پین کد استفاده می شود که روش نوشتن این متد به این صورت می باشد :

$client->call('Order_Pin',$param);

$param=array("username"=>"user","password"=>"pass","Count"=>"12","op"=>"3","amount"=>"10000","extid"=>"sdsdsdsad5464654");

op = اپراتور

اپراتور برای همراه اول عدد یک و ایرانسل عدد دو و نیز رایتل عدد سه می باشد

Count= تعداد پین درخواستی

amount= مبلغ پبن درخواستی

extid= شناسه یکتای ارسالی از سمت شما برای پیگیری های بعدی

مبلغ پین به ریال وارد شود




جدول 1 : لیست خطا ها

شماره خطا

مفهوم

توضیحات

1-

نام کاربری یا رمز عبور اشتباه است

 

2-

موجود شما کافی نیست

اعتبار شما نزد آفتاب گستر کمتر از مبلغ شارژ درخواستی می باشد

3-

حساب کاربری غیر فعال است

با پشتیبانی تماس بگیرید

4-

شماره تراکنش ارسالی شما تکراری است

لطفا قبل از ارسال هر تراکنش آن را در دیتابیس خود جستجو نمائید تا قبلا ارسال نشده باشد .

5-

دسترسی غیر مجاز

 

6-

آی پی غیر مجاز

آی پی ارسالی شما با آی پی ثبت شده در آفتاب گستر متفاوت است با پشتیبانی تماس بگیرید

7-

اپراتور مورد نظر قطع می باشد

 

8-

یکی از متغییر های ورودی خالی است

 

9-

مبلغ وارد شده استاندارد نیست

 

10-

شارژ انتخابی استاندارد نیست

 

11-

اتمام شارژ شرکت نزد اپراتور

در صورت برطرف نشدن ظرف چند دقیقه به پشتیبانی اطلاع دهید

12-

شارژ ناموفق است

در صورتی که شارژ از طرف اپراتور ناموفق اعلام شود

13-

خطا در ثبت اطلاعات در دیتابیس

خطا در کوئری رخ داده است این تراکنش توسط پشتیبانی بررسی می شود

14-

اطلاعات ارسالی اشتباه است

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

15-

شناسه قبض نامعتبر است

قبض قابل پرداخت نمی باشد

16-

شناسه پرداخت نامعتبر است

قبض قابل پرداخت نمی باشد

17-

قبض قبلا پرداخت شده است

قبضی با این اطلاعات قبلا ثبت شده است

0

نتیجه نامشخص

 

1

شارژ باموفقیت انجام شده است (عملیات موفق )

 

2

شارژ درحال انجام است

لطفا بعد از چند ثانیه دوباره استعلام بگیرید می توانید برای وقفه از دستور sleep(10); استفاده کنید تا 10 ثانیه وقفه ایجاد شود.

 

 

 


 

 

بقیه متد ها به زودی فعال می شود :

متد بازیابی پین کد

متذ پرداخت قبض

متد خرید محصولات

متد خرید ایشارژ