با همون Whcms هست که شما ماژول جدید دارین براش تعریف میکنید ؟
نمایش نسخه قابل چاپ
با همون Whcms هست که شما ماژول جدید دارین براش تعریف میکنید ؟
مساله یکم پیچیدست بله....
والا مشکل اینه که هیچکس در رابطه با این پروژه من هیچ مطالعه ای نکرده والاه انگشتام ساییده شد ازبس تایپ کردم !
بحث اصلا به اسکریپت نویسی ربطی ندارد بحث از پروژه تحت دسکتاپ هستش که لازمه از سیستم هایی مثل WHMCS برای هماهنگی استفاده کنیم...
در رابطه با پروژه : سرور الایت (Serverelite) چیست ؟ - درباره پروژه - انجمن های اولین سیستم مدیریت عملیات تحت تکنولوژی ابری
لیست Function هایش که در همان لینک قبلی که خدمت تون دادم وجود داره ولی همانطور که قبلا هم به شما گفته بودم، در صورت ناقص بودن سیستم API خود WHMCS شما می توانید API را خودتان بنویسید. به این معنا که یک اسکریپت (ترجیحا بصورت ماژول) در سیستم WHMCS قرار داده می شود و بصورت واسطه دسترسی به اطلاعات و یا تغییر در آن را بر عهده می گیرد، فرمت ورودی خروجی اش را نیز خودتان می توانید تعیین نمایید.
ضمنا دوست عزیز کلا فکر اتصال مستقیم به دیتابیس رو از ذهنت خارج کن! :) استاندارد نیست، احتمال بروز خطا و مشکل در سیستم وجود دارد و نیز کاربر ناچار به باز کردن دسترسی Remote برای دیتابیس MySQL خود می شود که در برخی Provider ها این امکان وجود ندارد.
دوستان بنده نمیتونم برای Whmcs بیام از ۰ یک API بنویسم و هماهنگش کنم اصلا با ساختارش آشنا نیستم تنها روشی که به زهنم میرسه روش اتصال به دیتابیس و در دست گرفتن مدیریت جامعش هست ولی این روش رو دوستان میگن اصولی نیست...اگر گسی میتونه بیاد API بنویسه برای این مورد بسم الله بیاد شروع کنیم :) اگر نه باید طبق اقبال زمان و پیش دستی علاقه مندان این هماهنگی رو ایجاد کنم.
پس قضیه هماهنگ سازی با WHMCS زمانی صورت میگیرد که یکی آشنا با سیستم API ها رو توسعه داده و این هماهنگ سازی را با من همکاری کند.
امیدوارم انجام بگیرد.
من این API هارو بررسی کردم ... سیستم WHMCS واقعا مزخرفترین ساختاری رو داره نه یه XML نه یه Jason ... تنها روش اتصال به این سیستم ۲ مدله که ارتباط مستقیم با دیتابیس رو به خاطر محدودیت حذف میکنیم میمونه ارتباط از طریق API های PHP حالا با توجه به اینکه Serverelite از PHP هم پشتیبانی میکنه مایلم این ارتباط رو با استفاده از API های PHP انجام بدم.
تنها خواسته من یک مثال از نوحه ی اتصال و ایجاد یک تیکت هستش این قسمت رو چک بفرمایید : API:Open Ticket - WHMCS Documentation
زیاد وقت نکردم با دقت بررسیش کنم ولی لطفا یکی این رو در یک کلاس همراه با تابع اجراء کننده ایجاد کنه تا با نحوه فراخوانی و درست اجراء شدنش آشنا بشم.
مثلا استفاده از External یا Internal دقیقا نمیدونم چی به چیه...
خوشحالم که به این موضوع پی بردید !
External برای دسترسی به API از خارج از فایل های whmcs هست و Internal هم دسترسی برای داخل هست مثلا برای ماژول هاش ... ؛ به جای این که بیاد کلاس تعریف کنه تا توسعه راحت تر باشه این مسخره بازی هارو در اورده .
این رو هم نگاه کنید مثال زده :
API:Example Usage - WHMCS Documentation
در افتضاح بودن API این سیستم و همچنین خودش شکی نیست . برای همین تلاش برای خارج کردن استفاده کنندگان از این سیستم ، توسعه ی اون به حساب نمیاد ... .
واویلا... این واقعا مزخرفترین حالت و سبک کد نویسی هست ! (این کد ها نشانگر این هستند که سیستم کاملا دیمییییی نوشته شده و هدف فقط به فروش رسوندنش هست :| )
زیاد با این سبک آشنا نیستم شاید از نظر شما خوب و مورد استفاده باشه ولی از نظر من برای استفاده باید این کد ها به صورت Class و Function در بیاد...
درضمن هماهنگ سازی با سیستم WHMCS کار درستی نیست و ارزش وقت گذاشتن نداره...ولی خب برای اینکه سیستم خودمون رو توسعه بدیم مجبوریم قابلیت هایی بزاریم مانند (SYNC) برای Convert کردن اطلاعات برای کاربرای علاقهمند به WHMCS...
کد PHP:
<?php $url = "http://www.yourdomain.com/whmcs/includes/api.php"; # URL to WHMCS API file $username = "Admin"; # Admin username goes here $password = "demo"; # Admin password goes here $postfields["username"] = $username; $postfields["password"] = md5($password); $postfields["action"] = "addinvoicepayment"; #action performed by the [[API:Functions]] $postfields["invoiceid"] = "1"; $postfields["transid"] = "TEST"; $postfields["gateway"] = "mailin"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_TIMEOUT, 100); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); $data = curl_exec($ch); curl_close($ch); $data = explode(";",$data); foreach ($data AS $temp) { $temp = explode("=",$temp); $results[$temp[0]] = $temp[1]; } if ($results["result"]=="success") { # Result was OK! } else { # An error occured echo "The following error occured: ".$results["message"]; } ?>
اینم آخرین وضعیت از ماژول WHM , cPanel
نظرتون چیه ؟
کسی میتونه در فارسی سازیشم کمک کنه ؟
در رابطه با طرح و قالب بندی سیستم هم نظر بدین حتما... در سایت رسمی :)
قسمت عملیات و اکشن های رایج WHM
http://www.webhostingtalk.ir/attachm...%D8%AF-whm-jpg
قابلیت افزودن چندین سرور برای اعمال عملیات (ویژه سرورالایت)
http://www.webhostingtalk.ir/attachm...D8%AF-whm2-jpg
استفاده از سرور های مورد نظر برای عملیات Multi Tasking (ویژه سرورالایت)
http://www.webhostingtalk.ir/attachm...D8%AF-whm3-jpg
اعمال عملیات ... در حال ارسال اطلاعات به صورت آنلاین
http://www.webhostingtalk.ir/attachm...D8%AF-save-jpg
اینم نتیجه .... که واضح هست :)
http://www.webhostingtalk.ir/attachm...%AF-result-jpg
این بخش ها فقط برای اعمال ارسال اطلاعات به سرور هست مونده هوط کلرمون با ماژول WHM ... پکیج بندی و دیگر عملیات مهم...