شبکه دو سیما آخر شب ها فیلم پخش میکنه ولی قبل از اون به مدت یک ربع یه برنامه ای پخش میکنه که رامبد جوان و امیر حسین صدیق مجری های اون برنامه هستند
بعضی شبها مهمان دعوت میکنن و تا اونجا که جا داره واسه همدیگه نوشابه باز میکنن !!!
موضوع دیشب در مورد لاف زدن بود که انصافا رامبد جوان نمایش خوبی براش اجرا کرد
امشب هم موضوع برنامشون در مورد "وسواس" بود
و چیزی که برام جالب بود سوال نبرد پیامکی برنامشون بود
به نظر شما وسواس چیست ؟
۱) یک نوع بیماری
۲) یک نوع عادت
۳) یک نوع ادا !!!
گزینه سومشون خیلی منو متعجب کرد !
آخه مگه امکان داره کسی واسه ادا اطوار هم که شده خودشو وسواسی نشون بده ؟
من که خودم با گزینه ۱ موافقم
اتفاقا یه روز داشتم پیاده از میرداماد به سمت سیدخندان میرفتم که تو مسیر چیزیو دیدم که عکسشو براتون گذاشتم !
البته من تا به حال فکر میکردم شفا دادن کار خداست (به معنی عام و رایج)
و خبری هم ندارم که اون تو چی کار میکنن، کار پزشکی، خرق عادت یا ترک عادت !!!
ولی فکر میکنم به درد بخور باشه،
چون خودم آدم وسواسی رو از نزدیک دیدم، عملا یه زندگی رو ساقط میکنن !!!
چه خوب میشد اگر به یکباره در نتایج جستجوی گوگل در بالاترین درجه قرار میگرفتیم ! براستی تاکنون به این موضوع فکر کرده اید که ملاک موتورهای جستجو در نمایش نتایج جستجو و قرار دادن یک سایت بالاتر از دیگری در چیست؟ در این قسمت قصد دارم شما را با یکی از این تکنیک ها به نام Google Page Rank و یا بطور اختصار Google PR آشنا کنم. با ما باشید.
بطور خلاصه Page Rank یک سیستم جستجوی مبتنی بر شبکه بهم پیوسته لینک هاست که به هر کدام از اجزای آن(یعنی در حقیقت به هر وب سایت مورد اشاره) یک ارزش وزنی اختصاص میدهد که این خود به تنهائی درجه اهمیت یک سایت را مشخص میکند (هرچه به سایتی بیشتر لینک داده شده است خب حتما مهمتر است دیگر!).
Page Rank بعنوان یک پروژه تحقیقاتی در سال 1995 در دانشگاه استنفورد و توسط Larry Page (که لابد اسمش را هم گذاشته روی پروژه اش) و Sergey Brin آغاز شد و هدفش دستیابی به نسل جدیدی از موتورهای جستجو بود که در سال 1998 بلاخره به یک پروژه عملی تبدیل شد و در آن سال گوگل متولد گردید. چندی بعد Page و Brin شرکت Google Inc را بعنوان شرکت اصلی موتور جستجوی گوگل تاسیس نمودند. ولی هنوز پروژه اولیه منجر به تولد گوگل (Page Rank) را فراموش نکرده و بعنوان یکی از فاکتورهای جستجوی گوگل جهت تعیین مرتبه صفحات ، مورد استفاده قرار میدادند.
گوگل خود درباره Page Rank چنین میگوید : Page Rank یک روش ابتکاری مبتنی بر ساختار دموکراتیک وب است که از شبکه گسترده لینک ها جهت تعیین مرتبه و امتیاز یک صفحه معین استفاده میکند بعنوان مثال تفسیر گوگل از لینک موجود در صفحه A که به صفحه B اشاره میکند ، در واقع نوعی رأی مثبت صفحه A به صفحه B میباشد که البته مبنای امتیاز دهی گوگل صرفا تعداد این رأی ها نیست بلکه صفحه ای هم که این لینک را داده است توسط گوگل بررسی میشود . مسلم است که هر چه رتبه این صفحه اول، خود بالاتر باشد تاثیر مستقیم در رتبه سایت دوم یعنی B دارد. پس هرچه یک سایت مهمتر به صفحه شما لینک داده باشد صفحه شما نیز در رده بندی گوگل بالاتر خواهد ایستاد.
از لحظه ارائه این الگوریتم تاکنون بررسی های متعددی پیرامون روش کار آن و راههای بهبود عملکرد آن ارائه گردیده است. یکی از مشکلاتی که ممکن است در این الگوریتم پیش آید هنگامی است که شخصی جهت بالا بردن درجه اهمیت سایت خود اقدام به تولید لینکهای کاذب به صفحه مورد نظر خود بنماید که با اینکار Page rank را به اشتباه بیاندازد. برای رفع این مشکل گوگل اقدام به تهیه یک کد به صورت rel=nofollow نمود که با قرار دادن این کد قبل از لینک مورد نظر گوگل از آن جهت بررسی در Page Rank صرفنظر میکند.
از دیگر موارد جدید Page Rank قرار دادن باصطلاح Toolbar آن در صفحه مورد نظر است که رتبه صفحه شما را از میان اعداد از یک تا ده نمایش میدهد که عدد بالاتر رتبه بالاتری دارد که البته چون بنا به گفته گوگل این Toolbar هر سه ماه یکبار Update میشود زیاد نمیتوان به آن بعنوان یک ابزار قابل اطمینان جهت تعیین رتبه صفحه مورد نظر تکیه کرد.
همچنین بر همین سیاق میتوان به مورد Google Directory Page Rank اشاره کرد که همانند Toolbar یک ابزار بررسی رتبه سایت میباشد با این تفاوت که در Toolbar با قرار دادن موس بروی آیکن سبزرنگ آن رتبه سایت از بین یک تا ده به نمایش در می آید ولی در مورد Directory رتبه سایت در حالت عادی قابل مشاهده نیست و در اصل یک ابزار نشان دهنده به خود گوگل و Page Rank برای شناسائی این رتبه میباشد.
در یک بررسی دقیقتر Page Rank متشکل از یک جدول توزیع احتمال است که میزان شانس کلیک های احتمالی بصورت تصادفی از صفحات مختلف به مقصد یک صفحه فرضی را بنمایش میگذارد که برای صفحه ای با هر اندازه دلخواه قابل محاسبه است. بطور کلی در اکثر تحقیقات علمی برای شروع عمل محاسبه رتبه سایت با توجه به تعداد سایت های مورد بررسی احتمال اولیه بین آنها تقسیم میشود (مثلا اگر در حال بررسی 5 سایت متفاوت هستیم در ابتدا برای هرکدام شانس 20 درصد را در نظر میگیریم). در عمل Page Rank برای انجام پروسه خود به عملی به نام تکرار (iterations) احتیاج دارد که منظور از آن عمل گشتن در میان لینک های مختلف از سایت های متفاوت است (از یک سایت شروع و همینطور لینکها را دنبال میکند). که در اینجا عددی مابین صفر و یک را به هرصفحه نسبت میدهد مثلا یک صفحه با Rank 0.5 یعنی احتمال اینکه شخصی با فشردن یک لینک بطور تصادفی به این قسمت هدایت شود 50 درصد میباشد.
فکر کنم یک مثال وضعیت پیچیده بالا را کمی روشن کند : فرض کنید در حال بررسی چهار صفحه A،B،C و D هستیم. طبق آنچه که در بالا تشریح کردیم در ابتدا برای هرکدام شانس مساوی و برابر 0.25 را در نظر میگیریم. خب حالا باز فرض کنید که هر سه صفحه B،C و D هرکدام به تنهائی به صفحه A لینک داده اند به همین خاطر Rank صفحه A برابر حاصل جمع Rank صفحات B،C وD میباشد که میشود 0.75 . اگر در این لحظه فرض کنیم که صفحه B علاوه بر A به صفحه C نیز لینک داده است و همچنین صفحه D نیز به تمامی سه صفحه دیگر لینک داده است آنوقت ارزش رأی صفحه ای که به چندین صفحه لینک داده است به تعداد لینک هایش تقسیم میشود مثلا در این مورد ارزش صفحه A عبارت است از:
محاسبه Page Rank بهمراه ضریب تعدیل (Damping Factor):
مکانیزم عملکرد Page Rank در نظر میگیرد که حتی یک User موهومی (که میتواند یک روبات مخصوص کلیک کردن باشد) هم در نهایت به کلیک کردن خود پایان میدهد بهمین خاطر و برای دقیق تر کردن رتبه بندی خود ، Page Rank فاکتوری به نام فاکتور تصحیح یا d را معرفی میکند که عبارت است از احتمال اینکه User (در هر مرحله ای که باشد) به عمل کلیک کردن خود ادامه دهد. این فاکتور تاکنون از روش های متفاوتی محاسبه شده است ولی در عمل برای آن مقداری در حدود 0.85 را در نظر میگیرند که در محاسبه رتبه سایت این فاکتور را از عدد یک کسر کرده و حاصل را با حاصلضرب فاکتور تصحیح و Rank قبلی ، جمع مینمایند بصورت زیر : (عمرا فکر میکردید گوگل به این پیچیدگی باشد؟)
بدین صورت رتبه هر صفحه بطور گسترده ای وابسته به رتبه صفحات دیگری که به آن لینک داده اند میباشد.
گوگل هرگاه که اقدام به Update کردن خود مینماید این Rank ها نیز به روز میشوند و البته با افزایش صفحات موجود در آرشیو گوگل رتبه ابتدائی برای صفحات نیز خود بخود کاهش می یابد (چون بین تعداد بیشتری تقسیم میشود) برای Update شدن این Rank ها گوگل بصورت تصادفی از یک URL (آدرس اینترنتی) آغازکرده و با دنبال کردن لینکهای موجود در آن صفحه به صفحات و صفحات دیگر میرود و این روند را دنبال میکند خب حالا اگر در این میان به صفحه ای بر بخورد که در آن هیچ لینکی موجود نباشد(Sink) آنوقت تکلیف چیست ؟ پاسخ راحت است در آن لحظه یک URL دیگر بطور تصادفی اتنخاب میگردد.
بطور حتم Google Page Rank یکی از چندین راه شناساندن صفحات مهم به جستجو گر Google میباشد که ارزش آن تا به جائی رسیده است که بسیاری از وب سایت ها برای گذاشته شدن لینک صفحه شان در سایتهای معروف مبالغ هنگفتی را پرداخت میکنند که البته این نیز از دید گوگل پنهان نمانده است و به آنها اخطار کرده که در صورت محرز شدن این امر آن لینک ها را نادیده میگیرد.
راستی دوست داشتید که لینک سایت شما درست زیر صفحه معروف جستجوی گوگل می بود؟
برای اینکه با کار روباط در یاهو آشنا بشین این آیدی رو ادد کنید : Robofun
این آیدی { Robofun } نمونه ساخته شده از روباتیست که در ادامه آموزش داده خواهد شد!
دانلود برنامه رویا روبات
پس از دانلود برنامه ،فایل حاوی برنامه و کدهارا از حالت فشرده خارج کرده و عمل نصب را انجام دهید!
برای اینکه روباتی را که خواهید ساخت از توانمندی هوشی بسیار بالا و همچنین امکانات زیاد برخوردار باشد شبکه کامپیوتری فارسی دو فایل با نامهای Sample.inc و Sample.mdb را بصورت فشرده شده در فایلی بنام Tools.zip قرار داده که میتوانید از آنها استفاده کنید.
تنها کافیست که فایلها را جایگزین فایلهای قدیمی در محل نصب رویا نمایید تا روبات شما هوشمند شود!!! !!!
در صورتی که فایلهای موجود در Tools.zip را در محل نصب رویا جایگزین کرده باشید روبات شما دارای امکانات زیر خواهد بود:
robofun: 01. /GF: BaRaYe PeYDA KaRDaNe GF
robofun: 02. /BF: BaRaYe PeYDa KaRDaNe BF
robofun: 03. /doost: BaRaYe PeYDa KarDaNe DooST
robofun: 04. /Sher: Sheraye Golchin Shude ve EshguLaNe
robofun: 08. /TV: BaRaye Tamashaye Zandaye Shabakehaye TeLeVisIoNi
robofun: 06. /Music: BaRa GuSh KarDan Ve DanLode Ahang
robofun: 07. /Program: BaRa DaNloDe BehTarin NaRm AfzaRha
robofun: 05. /FilterShekan: Baz KarDane Sitaye Be AshTebah Filter ShuDe!
robofun: 10. /Ajtemae: Raveshhaye Khube Zandegi Kardan Dar jamae
robofun: 09. /Mazhabi: ShaMale AHaDis Ve RevAyaTe EsLaM
robofun: 11. /jock: ba in DAsToor MaN BeHeT JoCk miGaM
robofun: 13. /TIME: aGe MiKhaY BeDo0Ni Sa@T ChaNDe BeZaN
robofun: 12. /LoVe: aGe aSheG ShoDi BeZaN
robofun: 15. /MATH: MaShiN HeSaBe GaVi
robofun: 16. /learn: YaD DaDaN Be RoBoT
robofun: 14. /DATE: aGe MiKhaY BeDo0Ni eMROZ Chando0Me BeZaN
robofun: 18. /ConTacT: Online Ya Offline Budane Sazandam ID: MihanOnline
robofun: 19. /TEAM: AtTelaAti Dar MoRade TeAme Ma
robofun: 17. /link: LiNk DooNy RoBoT
robofun: 20. /Designer: eRTEBAT Ba SazandAYE Man
نحوه استفاده و آموزشهای اصلی :
تنظیمات و اتصال
بخش تنظیمات شامل پنجره Setting میشود که برای تنظیم اولیه RoYa است ، و قبل از هر کاری اطلاعات آن باید تکمیل شود . این اطلاعات به شرح زیر است :
تب Connection
*Host آدرس Yahoo Messenger به طور پیش فرض scsc.msg.yahoo.com است.
*Port پورت ارتباطی که به طور پپش فرض 5050 است ولی متوانید از پورتهای 21 و 23 هم استفاده کنید.
در مورد Http Proxy و SOCKS Proxy هم به صورت استاندارد هست و با دادن اطلاعات سرور و پورت میتوانید متصل شوید.
تب Login
*Username اسم ID است که قرار است روبات شود .
*Password پسورد ID روبات است.
*Owner اسم یک ID در Yahoo هست که این ID میتواند از راه دور روبات را کنترل کند میتواند اسم ID اصلی خود شما باشد.
Status هر کلمه که در اینجا نوشته شود ، در لحظه اول در Status روبات نمایش داده خواهد شد . و اگر Busy فعال باشد علامت busy در کنار اسم روبات نمایش داده میشود ، البته همه مواردی که در مورد سوئیچ /Status بیان شده در اینجا صدق میکند.
Login under Invisible Mode دقیقا مشابه خود Client Yahoo به صورت پنهانی Login میکند و در لیست نمایش داده نمیشود.
Automatically start RoYa on Windows startup با اینتخاب این گزینه برنامه در اول Windows اجرا خواهد شد .
Minimize on tray icon با انتخاب این گزینه وقتی Minimize کنید به قسمت Tray میرود.
Automatically connect on RoYa startup با انتخاب این گزینه با شروع کار برنامه به Yahoo متصل میشود .
Priority در این قسمت میتوانید پردازش Plugins و Scripts را فعال و یا غیر فعال کنید و همچنین میتوانید مشخص کرد که کدام یک اول اجرا شوند در کنار هر یک از دو گزینه Check box وجود دارد که با علامت زدن آن فعال میشود ، و هر کدام از آیتمها که انتخاب شده باشد پردازش آن اول انجام میشود . لازم به ذکر است که این فقط پردازش کل Plugin و Script را کنترل میکند و برای تک تک Plugin ها و Script ها در قسمتهای بعدی توضیح داده شده !
به صورت پیش فرض هر دو فعال هستند و اولویت با Plugins است.
مواردی که با "*" مشخص شدند ، باید پر شوند.
بعد از وارد کردن اطلاعات خواسته شده در بخش Setting در صورت کامل بودن مشخصات در Log نمایش داده میشود . و از این به بعد هر بار برنامه را اجرا کنید این مشخصات برای نشان دادن کامل بودن اطلاعات نمایش داده میشود . و در این لحظه برنامه آماده است و با زدن دکمه Connect به Yahoo متصل شود. در صورتی که برنامه نتواند به Yahoo متصل شود هر 2 ثانیه سعی میکند این ارتباط را برقرار کند.
For Owner : RoYa loaded.
Date : 24/02/2007 01:29:46
بخش Diagnostic
تب Test ، در این بخش شما میتوانید بدون اتصال به اینترنت Script ها و Plugin ها را بررسی کنید ، و در صورتی اشکالی در Script وجود داشته باشد ، شماره خطی که مشکل دارد نمایش داده میشود.
تب Editor برای ساختن و ویرایش Script ها می باشد ، که استاندارهای در آن رعایت شده ، از جمله میتوان به وجود Find (Ctrl + F) ، Replace (Ctrl + T) ، Bookmark اشاره کرد.
عملکرد برنامه (Log)
RoYa با اولین اجرای خود پوشه در محل نصب خود ایجاد میکند به نام Logs که در این پوشه همه اطلاعاتی که وارد و یا خارج میشود با ذکر زمان دریافت به طور روزانه در فایلهای جداگانه ذخیره میکند ، نام این فایلهای به گونه میباشد که در آن تاریخ ساخت Log ذکر شده بدین صورت : 2007-11-20#RoYa.log و هنگامی که برنامه در حال اجرا باشد و تاریخ سیستم تغییر کند برنامه فایل جدید با تاریخ جدید میسازد و اطلاعات را در آن ذخیره میکند .
[0]2007-02-24 01:28.16 Log system started.
[0]2007-02-24 01:28.18 Plugin , "Math.dll" Initialization
[0]2007-02-24 01:28.19 Script , "Sample.inc" Initialization
[0]2007-02-24 01:28.19
[0]2007-02-24 01:28.19 == Information ========
[0]2007-02-24 01:28.19 Host: scsa.msg.yahoo.com
[0]2007-02-24 01:28.19 Port: 5050
[0]2007-02-24 01:28.19 Username: pzbot
[0]2007-02-24 01:28.19 Owner: robofun
[0]2007-02-24 01:28.19 Status:
[0]2007-02-24 01:28.19 Busy: False
[0]2007-02-24 01:28.19 Invisible: True
[0]2007-02-24 01:28.19 ==================
[0]2007-02-24 01:29.36 Connecting to Yahoo! ...
[0]2007-02-24 01:29.46 Welcom to Yahoo Messenger !
[0]2007-02-24 01:30.02 [P][Robot: pzbot ] [User: robofun ] [Receive: Salam ] [Send: salam aziz ]
[0]2007-02-24 01:31.15 [P][Robot: pzbot ] [User: robofun ] [Receive: salam ] [Send: salam mage doktori? ]
[0]2007-02-24 01:31.15 [P][Robot: pzbot ] [User: robofun ] [Receive: chetoori ? :> ] [Send: Khoobam mer30 , too chetoori ? ]
[0]2007-02-24 01:31.15 [P][Robot: pzbot ] [User: robofun ] [Receive: chetoori ? :> ] [Send: Ads -> Danlod Site Http://www.SOFTDONLOD.Com]
[0]2007-02-24 01:35.46 Ping YM!
[0]2007-02-24 01:41.46 Ping YM!
[0]2007-02-24 01:47.46 Ping YM!
[0]2007-02-24 01:53.46 Ping YM!
[0]2007-02-24 01:59.46 Ping YM!
[0]2007-02-24 02:01.56 Socket disconnected !
[0]2007-02-24 02:01.58 Plugin , "Math.dll" Finalization
[0]2007-02-24 02:01.58 Script , "Sample.inc" Finalization
[0]2007-02-24 02:01.58 Log system closed.
دستورات مدیریتی
RoYa بگونه ای طراحی شده که میتوانید از راه دور آن را کنترل کنید. برای این منظور دستوراتی وجود دارد که فقط Owner مجاز به وارد کردن آنها میباشد . که در زیر به بیان این دستورات میپردازیم :
تمامی فرامین با یک "/" شروع میشود .
/Help نمایش فرامین که در این قسمت وجود دارد.
/Reset در مورادی که احتیاج به بستن و اجرای مجدد برنامه است .
/Send برای فرستادن پیغام از طرف Robot به یک User ، فقط کافیست در پارامتر اول Username و در پارامتر های بعدی پیغامتان را قرار دهید .
/Status برای تغییر محتوای Status بکار میرود. بعد از نوشتن دستور هر جمله نوشته شود در Status نمایش داده میشود. برای Busy کردن جمله ، از عبارت [b] و برای Idle از عبارت [i] ، در جمله استفاده کنید.
همچنین میتوانید از حالتهای پیش فرض Yahoo Messenger استفاده کنید و با دادن کلمات زیر در جلوی دستور حالت مورد نظر نمایش داده میشود. مثلا با قرار دادن #i# حالت Idle نمایش داده میشود. توجه داشته باشید که این قوانین عینا در VarsRoYa.Status هم قابل اجرا است.
#a# I'm Available
#r# Be Right Back
#b# Busy
#h# Not at Home
#d# Not at my Desk
#o# Not in the Office
#p# On the Phone
#v# On Vacation
#l# Out to Lunch
#s# Stepped Out
#n# Invisible
#i# Idle
/Script برای انجام عملیات بر روی Script است با پارامترهای زیر میتوانید دستورات لازم را بدهید :
Init برایInitialization کردن Script
Final برای Finalization کردن Script
Pri اول Script ها پردازش میشوند
ON فعال شدن Script
OFF غیر فعال شدن Script
/Plugin برای انجام عملیات بر روی Plugin است با پارامترهای زیر میتوانید دستورات لازم را بدهید :
Init برایInitialization کردن Plugin
Final برای Finalization کردن Plugin
Pri اول Plugin ها پردازش میشوند
ON فعال شدن Plugin
OFF غیر فعال شدن Plugin
/Suspend این دستور همانطوری که از اسمش پیداست باعث معلق شدن کار برنامه میشود و به طور موقت هیچ پردازشی انجام نمیدهد . و هر پیغامی را Reject میکند . و برای برگشت به حالت عادی باید از دستور Resume استفاده کنید.
/Monitor هر پیغامی که توسط RoYa رد و بدل میشود یک نمونه آن برای Owner ارسال میشود و توصیه میکنم بجز موارد خاص از آن استفاده نکنید. با پارامترهای ON و OFF میتوانید فعال و غیر فعال کنید.
/Uptime این دستور مدت زمان بالا بودن RoYa را نمایش میدهد.
/Sysinfo این دستور مشخصات کامپیوتری که RoYa روی آن نصب است را نمایش میدهد.
/Join برای اتصال به یک ChatRoom با دادن نام Chat Room به عنوان پارامتر میتوانید متصل شوید. در ضمن با اتصال به Chat Room لیست Userها در ListUser قرار میگیرد.
/Left ترک کردن Chat Room
/Speech ارسال یک پیام به Chat Room
/Timer برای تنظیم Timer با پارامترهای ON و OFF میتوانید فعال یا غیر فعال کنید و همچنین با دادن عدد میتوانید مدت زمان Timer را مشخص کنید.
/Sendtime برای تنظیم زمان ارسال پیغامها ، این بدین خاطر است که یاهو محدودیت 4 پیام در یک ثانیه دارد (به طور پیش فرض 300 میلی ثانیه و سعی کنید از این دستور کمتر استفاده کنید)
/Pingtime برای تنظیم زمان Ping به سرور یاهو ، لازم به ذکر است که تمام Client ها که به YM! متصل میشوند باید در زمان مشخصی به سرور یک ping ی را ارسال کنند در غیر این صورت Yahoo آنها را قطع خواهد کرد. (به طور پیش فرض هر 6 دقیقه هست و سعی کنید از این دستور کمتر استفاده کنید)
/Cat برای دریافت لیست Chat Room های یک بخش بکار میرود . با دادن شماره هر بخش به عنوان پارامتر و سعی میکند از یاهو لیست را دریافت کند و بعد از دریافت لیست Chat Room های فعال در ListChat قرار میگیرد و در پارامتر بعد میتوانید مشخص کنید که فقط Chat Room های را دریافت کند که توسط User مشخص شده را انتخاب کند و یا فقط پیش فرض های Yahoo و یا هر دو . به صورت زیر عمل میشود :
User فقط Chat Room های که توسط User ها درست شدند
Yahoo فقط پیش فرض های خود Yahoo
ALL همه موراد را دریافت میکند
در صورت قرار ندادن در پارامتر به صورت پیش فرض User در نظر گرفته میشود.
مثلا : برای اتصال به Asia و لیست شدن Chat Room های که User ها ساختند باید بدین صورت عمل کنید ، /Cat 1600043929 user
علاوه بر موارد فوق این Switch قادر است که شماره یک Category را بدست آورد فقط کافیست در پارامتر به جای شماره از اسم Category و یا قسمتی از اسم آن استفاده شود.
مثلا : /Cat Asia
/Contact برای ارتباط کاربران با Owner از این Switch استفاده میشود . این Switch برای همه قابل دسترس می باشد و میتوانند پیغامهای خود را برای Owner ارسال کنند فقط Owner میتواند با ON یا OFF کردن این امکان را فعال و یا غیر فعال کنند .
برنامه نویسی با Script
تمام Script ها در پوشه Scripts در محلی که برنامه نصب شده است قرار میگیرد و باید پسوند فایل آن Inc باشد . برای برنامه نویسی باید ساختار مشخصی در Script رعایت شود .
خط اول Script نوع زبان برنامه نویسی قرار دارد .مثلا DelphiScript یا VBScript یا JavaScript
3 تابع SInit , SFina , ProcMessage در Script باید وجود داشته باشد .
در همین پوشه (Scripts) فایلی به اسم Sample.Inc وجود دارد که یک نمونه عملی که با DelphiScript نوشته شده ، میتوانید با مشاهد آن از چندوچون کار مطلع شوید.
تابع Sinit در هنگام Initialization شدن Script صدا زده میشود و یک بار در هنگام بالا آمدن برنامه و یا وقتی که دستور Init صادر شود ، صدا زده میشود . در خروجی تابع (Result) با دادن عدد میتوانید اولویت های Script را مشخص کنید. و هر چه عدد کوچیکتر باشد اولویت آن بیشتر است.
در این تابع معمولا میتوانید Database ی که در Script مورد استفاده قرار میگیرد ، را بار کنید .
تابع SFina برای Finalization کردن Script بکار میرود ، و یک بار در هنگام بستن برنامه و یا وقتی که دستور Final صادر میشود ، از طرف برنامه صدا زده میشود . مثلا میتوانید برای بستن Database که قبلا باز کردید استفاده کنید .
تابع ProcMessage تمام عملیاتهای که در مورد ، یک بار این تابع از طرف برنامه صدا زده میشود و با اطلاعاتی که در کلاس VarsRoYa قرار دارد .
اطلاعاتی که در کلاس VarsRoYa به شرح زیر است :
عملیاتی
این تابع ها بصورت متغییر هستند یعنی با وارد کردن رشته در متغییر ، در همان متغییر جواب قرار میگیرد.
FindEmotSing برای در آوردن شکلکها از درون رشته
DelEmotSing حدف همه شکلکهای موجود در رشته
ورودی
Mode متغییری است که نشان میدهد برنامه چه نوع عملیاتی انجام میدهد و Script با توجه به هر یک از وضعیتهای زیر تصمیم گیری میکند :
IS_ERROR در صورت بروز خطا در روند اتصال به Chat و همچنین دریافت Category
IS_START وقتی برنامه به طور کامل به Yahoo متصل میشود.
IS_PM وقتی یک پیام شخصی فرستاده میشود.
IS_CHAT وقتی از طرف Chat Room پیامی ارسال میشود.
IS_ADD وقتی که ID روبات را ADD میکند.
IS_JOINROBOT وقتی که روبات وارد یک Chat Room میشود
IS_JOIN وقتی یک نفر وارد Chat Room میشود
IS_LEFT وقتی یک نفر Chat Room را ترک میکند
IS_TIMER وقتی Timer فعال باشد در مدت زمانی که قبلا مشخص شد ، این حالت را فراخوانی میکند. مثلا هر 30 ثانیه یک بار این وضعیت به Script ارسال میشود.
IS_CATEGORY وقتی لیست Chat Room ها آماده باشد.
ListParam برنامه پیغامهای کاربر را با توجه به Space که بین کلمات وجود دارد تفکیک میکند و در ListParam قرار میدهد و این قابلیت وجود دارد که مطالب که بین گیومه قرار میگیرد به عنوان یک عبارت قرار دهد . تعداد پارامترها در اینجا ListParam.Count قرار دارد.
مثلا اگر عبارت /Learn hi "Hi , How are you ?" را کاربر وارد کند برنامه در ListParam بدین صورت قرار میدهد. (در ListParam.Count مقدار 3 هست )
ListParam.String[0]= /Learn
ListParam.String[1]=Hi
ListParam.String[2]= Hi , How are you ?
PathPRG مسیر اجرای برنامه
Owner نام Owner
IDRobot مشخص میشود که کاربر از کدام ID روبات پیام را ارسال کرده است ، در رویا این امکان وجود دارد که از ID های Profile برای روباتهای چند منظوره استفاده کنید.
UserPM نام کاربری که پیغام را ارسال کرده
StrMsgHTML متن پیغام کاربر به صورت HTML
StrMsgNOHTML متن پیغام کاربر به صورت Text
خروجی
Status در صورت وارد کردن رشته ای در این متغییر Status عوض میشود .
Ban با True شدن ، پیغام برای کاربر ارسال نمیشود .
Category برای دریافت لیست Chat Room های Yahoo با دادن شماره هر قسمت.
SendStr متنی که قرار است بعنوان جواب برای کاربر ارسال شود در این متغییر قرار میگیرد.
در RoYa سه Object وجود دارد به نامهای ADOConnection1 و ADOQuery1 , ADOQuery2 که به وسیله این سه Object میتوانید از طریق ADO به بانک اطلاعاتی(Database) متصل شوید ، مثل (Access ، SQL Server , Oracle) دومین مورد متغییرهای برای استفاده برنامه نویسان در Script در نظر گرفته شده که VarInt01 تا VarInt05 برای متغییر های عددی و از VarStr01 تا VarStr05 برای String است .
در Sample که در پوشه Script قرار دارد تمام موارد به صورت مثال توضیح داده شده است و در این مثال از بانک اطلاعاتی MS-ACCESS استفاده شده که فایل آن در پوشه Data قرار دارد ( فایلی به نام Sample.mdb). در این Sample علاوه بر جواب دادن به پیامها PM و Chat چند مورد جالب قرار گرفته :
Link Dump با وارد کردن/Link لیست لینکهای که قبلا اضافه کردید نمایش داده میشود . Owner میتواند با دادن /Link add "Name" "Link" لینک اضافه کند و با /Link del لینک را با توجه به شماره ای که در لیست شدن قرار میگیرد ، حذف کند. تمام اطلاعات در Table:ADS قرار میگیرد.
تبلیغات ، این امکان وجود دارد که بین مطالبی که Script جواب میدهد به صورت تصادفی لینکهای که قبلا قرار داده ایم به عنوان تبلیغات ، نمایش داده شود. اطلاعات این قسمت در Table:ADS قرار دارد.
ثبت User ها هر کسی که به روبات پیغامی ارسال کند Username آن در Table:User ثبت میشود. (فقط یک بار)
تغییر Status با استفاده از Timer داخلی که در برنامه برای برنامه نویس در نظر گرفته شده جوری برنامه نویسی شده که در مدت زمان مشخص Status را تغییر یابد.
برای اتصال به ChatRoom کافیست Owner مثلا /Cat 1600043929 user وارد کند ، Script به گونه طراحی شده که به طور اتوماتیک با توجه به لیست کل ChatRoom های Asia داخل هر یک از ChatRoom ها میشود و به پیامها جواب میدهد
برنامه نویسی با Plug-in
Plug-in راه دیگری هست برای توسعه برنامه که میتوانید به وسیله یک DLL کارهای را که با Script انجام میدادید را انجام دهید ، تمام Plugin ها در پوشه Plugins در محلی که برنامه نصب شده قرار دارند و باید پسوند فایل آنها DLL باشد . در صورتی که با Delphi برنامه مینویسید باید یونیت PluginsTyp را در DLL اضافه کنید.
در همین پوشه (Plugins) فایلی به اسم Math.DLL وجود دارد (سورس این برنامه با Delphi نوشته شده و در فایل Math.Dpr قرار دارد ) که نمونه عملی از یک ماشین حساب قدرتمند که استفاده از Plugin را نشان میدهد ، با دستور /mathو دادن فرمول ریاضی به صورت پارامتر میتوانید جواب را مشاهد کنید .
مثلا /math 2+3*(sin(67)/23*89)^(125/5)
تمام مواردی که در مورد Script ذکر شده دقیقا در مورد Plugin هم وجود دارد . فقط باید در نظر داشته باشید که در Plugin از کلاس استفاده نشده است و فقط یک Record است. و متغییر ها ورودی و خروجی به صورت پارامتر جابجا میشوند.
در ضمن در Plug-in نمی توانید از ADOConnection1 و ADOQuery1 , ADOQuery2 استفاده کنید.
روح، موجودی مجرد است و جسم و قابل قسمت نیست و حیات و فعالیت اعضای بدن، به او متکی است. واژه روح در قرآن در سورهها و آیات متعددی تکرار شده است و متبادر از آن، همان موجودی است که مبدأ حیات و زندگی است و آن را منحصر به انسان و یا انسان و حیوان ننموده است، بلکه آن را در غیر انسان و حیوان نیز اثبات نموده است مثل آیه مبارکه: "...فَاتَّخَذَتْ مِنْ دُونِهِمْ حِجابا فَأَرْسَلْنا اِلَیها رُوحَنا"1. "..مریم میان خود و آنان حجابی افکند و در این هنگام، ما روح خود را به سوی او فرستادیم".
و آیه مبارکه: "وَ کَذلِکَ أَوْحَینا اِلَیکَ رُوحا مِنْ أَمْرِنا"2. "همانگونه(که بر پیامبران پیشین، وحی فرستادیم) بر تو نیز روحی را به فرمان خود وحی کردیم". و آیات دیگر. پس برای روح، مصداقی در انسان هست و مصداقهای دیگری نیز در برخی موجودات دیگر. این دو آیه و آیات دیگر به صراحت دلالت بر وجود روح در انسان و برخی موجودات دیگر غیر از انسان به معانی مختلف وجود دارد از جمله آیاتی که به صراحت دلالت بر این دارد که مراد از روح، تنها روح انسانی است، آیه مبارکه زیر است:
"یسْئَلُونَکَ عَنِ الرُّوحِ قُلِ الرُّوحُ مِنْ أَمْرِ رَبِّی"3. "از تو (ای پیامبر) راجع به روح میپرسند، بگو روح از کار خدا است و به شما جز اندکی از علم داده نشده است". در این آیه گرچه روح، مطلق آورده شده و لکن از قرائن موجود در آیه، استفاده میشود که مراد از روح مورد سؤال، روح انسانی است که به امر خدا انجام گردیده است. بنابر عقیده بیشتر مفسّران در آیه بالا روح به معنای روان و عامل حیات بهکار رفته است4. مفسّر بزرگ اهل سنت "شیخ ابوالفتوح رازی" در تفسیر "روحالجنان"5. در ضمن بیان اقوالمختلف در مورد مفهوم و معنای روح میگوید: "آنچه در این آیه مورد سؤال قرار گرفته، روح آدمی است که قوام حیات به آن است و آدمی به آن زنده و با فقدان آن انسان زنده نمیماند".
مرحوم شعرانی در حاشیه تفسیر رازی چنین بیان میکند: "تفسیر روح با این مفهوم درستتر به نظر میآید که سؤال از وجود روح و حقیقت آن از دیرباز میان ملل جهان متداول بود، خاصّه یهود و مخصوصا آن جماعت از یهودیان که با فلاسفه آمیخته و از عقاید و اختلافشان درباره روح، اطلاع یافته بودند، تعجّب بشر درباره روح از آن است که میبیند قدرتی است بر خلاف طبیعت و گوئی بر ضدّ آن در نبرد است و گوشت و پوست و استخوان را چون به خود رها کنند زود پوسیده و متعفّن و پراکنده میگردد و روح، او را سالها از فرسودگی و تعفّن، نگاه میدارد و به حرکت و سخن میآورد و تعقّل و ادراک میکند و اینها هیچیک، کار جسم نیست، جسم، سنگین است و سوی پائین میل دارد و روح بر میجهد و جسم را میجهاند.
"حال پس خود روح از چه مبدأ و منشأ است؟ خداوند جواب داد که مبدأ آن از فرمان خدا است و مانند نور خورشید بر ابدان تابیده و اگر فرمان الهی نبود و از ورای عالم طبیعت، دستوری نرسیده و فروغی نتافته بود، همه چیز جامد بود و صامت".
تفسیر آیه "وَ ما اُوتِیتُمْ مِنَ العِلْمِ اِلاّقَلِیلاً". "شما آدمیان جز اندکی که از علم، نصیب ندارند". این است که روح از دیدگاه قرآن، موقعیتی در عالمِ وجود دارد و آثار و خواصی در این عالم، بروز میدهد که بسیار بدیع و عجیب است و شما از آن بیخبرید!
مرحوم "بحرانی" مؤلف تفسیر "برهان" در تفسیر آیه فوق از حضرت امام باقر علیهالسلام نقل میکند که فرمود: "معنای آیه، این است که جز تعداد کمی از بشر؛ از روح، آگاهی ندارند".
استاد معظّم علامه فقید، سید محمد حسین طباطبائی قدسسره در تفسیر "المیزان"6 مینویسد: "کلمه روح به طوری که در لغت معرفی شده، به معنای مبدأ حیات است که جاندار به وسیله آن قادر بر احساس و حرکت ارادی میشود ولی مراد از روح در این آیات همان روح و نفس به نام "نفس ناطقه" میباشد که در کالبد همه افراد انسانهای موجود، وجود دارد. و وجود آن از ناحیه خدا و وابسته به او است". چنانکه در آیه دیگر میفرماید: "..اِنَّما أَمْرُهُ إِذا أَرادَ شَیئا أَنْ یقُولَ لَهُ کُنْ فَیکُونُ"7. "فرمان او چنین است که هرگاه چیزی را اراده کند، تنها به آن میگوید: موجود باش! آن نیز بیدرنگ موجود میشود". از این آیه معلوم میشود که:
1. امر خدا یعنی ایجاد هستی و وجودی است که از ناحیه خداوند به روح متعلّق شده و این موجود، وابسته به خداست و به امر او پیدا شده نه علل و اسباب دیگری.
2. موجودی به نام روح، وجود دارد و به همین مناسبت حضرت مسیح علیهالسلام به عنوان کلمه خدا و روح او شمرده شده، آنجا که میفرماید: "إِنَّما المَسِیحُ عِیسی بْنُ مَرْیمَ رَسُولُ اللّهِ وَ کَلِمَةٌ أَلْقاها إِلی مَرْیمَ وَ رُوحٌ مِنْهُ"8. "مسیح، عیسی بن مریم، فقط پیامبر خدا و کلمه اوست که آن را به مریم القاء کرده است و روحی از جانب او است".
خداوند در برخی از آیات روح و جان موجود در انسانها را متعلّق به خود دانسته یعنی تنها از ناحیه او به انسان، عطاء شده است چنانکه در مورد خلقت حضرت آدم علیهالسلام میفرماید: "فَإِذا سَوَّیتُهُ وَ نَفَخْتُ فِیهِ مِنْ رُوحِی"9. "هنگامی که کار انسان را به پایان رساندم و در او از روح خود (یعنی یک روح شایسته و بزرگ) دمیدم". و در آیه مبارکه دیگر چنین وارد شده است: "ثُمَّ سَوّاهُ وَ نَفَخَ فِیهِ مِنْ رُوحِهِ"10 "سپس اندام انسان را موزون ساخت و از روح خویش در وی دمید".
در این دو آیه روح، متعلّق به انسان ذکر شده و با کلمه "مِن" آورده شده یعنی مبدأ پیدایش او از ناحیه خداست. و نام این ایجاد را "نفخ" یعنی دمیدن نهاده است11 همچنانکه این کلمه در سایر آیات وارده در این باب نشان دهنده همین واقعیت است: "یلْقِی الرُّوحَ مِنْ أَمْرِهِ عَلی مَنْ یشاءُ"12. "وحی را به هر یک از بندگان خویش که بخواهد القاء مینماید". و آیه "ینَزِّلُ المَلائِکَةُ بِالرُّوحِ مِنْ أَمْرِهِ عَلی مَنْ یشاءُ مِنْ عِبادِهِ"13. "فرشتگان را با وحی به هر یک از بندگان خویش که بخواهد میفرستد تا دلهای مرده را به وسیله آن زنده نماید".
و آیه "تَنَزَّلُ المَلائِکَةُ وَ الرُّوحُ فِیها بِإِذْنِ رَبِّهِمْ مِنْ کُلِّ أَمْرٍ"14. "فرود آیند فرشتگان و روح(مراد جبرئیل است) در آن شب به اذن خدا با هر کاری که تقدیر خدا در امور مختلف است". چنانکه خوانندگان ملاحظه میکنند، کلمه "من" در همه این آیات میفهماند که روح از جنس و سنخ امر است و آنگاه امر را بیان میکند و میفرماید:
"إِنَّما أَمْرُهُ إِذا أَرادَ شَیئا أَنْ یقُولَ لَهُ کُنْ فَیکُونُ"15. "فَسُبْحانَ الَّذِی بِیدِهِ مَلَکُوتُ کُلّ شَیءٍ"، "جز این نیست که هرگاه خداوند اراده کند چیزی را، امر کند به او و بگوید باش، پس به وجود میآید".
عالم خلق و عالم امر
به طور کلی در مطالعه آیات قرآنی در جهان آفرینش دو پدیده، جلب توجه مینماید: یکی پدیده "خلق" که در مسیر سلسله علل و اسباب، قرار داشته و بر زمان و مکان، منطبق میگردد و مسیر تکامل را تدریجا میپیماید. دیگری پدیده "امر" که نشان دهنده ارتباط موجودات با خداوند میباشد، در این پدیده، تدریج وجود ندارد و تنها با اراده خداوند بهطور آنی، موجود میگردد و اسباب و وسائل مادّی در آن راه ندارد و در حقیقت پدیده و عالم امر که روح از آن عالم است، عالم موجودات غیر مادی است16.
مرحوم علامه طباطبائی قدسسره در معنای امر در ذیل آیاتی که از تفسیر "المیزان" نقل کردیم، میگوید: امر هر چیز عبارت است از ملکوت آن چیز و برای هر موجودی، ملکوتی و امری است که در آیات 185 و آیه 75 سوره انعام و آیه 4 سوره قدر به آن اشاره شده است. مطابق آیات قرآن هر دو پدیده یعنی پدیده مادی و قابل لمس یعنی "عالم خلق" و پدیدههای امری و مجرد غیر مادی یعنی "امر و خلق" هر دو از جانب خداوند میباشد چنانکه در سوره اعراف آیه 54 میفرماید: "اَلا لَهُ الخَلْقُ وَ الأَمْرُ". "آگاه باشید که آفرینش و تدبیر جهان از آنِ اوست یعنی به فرمان او است".
خداوند این معنی را در آیات دیگر از جمله آیه 59 سوره آل عمران، نیز متذکّر میگردد به این صورت که ابتدا خلقت آدم را ذکر و ارتباط آن را با خاک که یکی از اسباب آن است، بیان، سپس وجود آن را بدون ارتباط به چیزی با تعبیر "کُنْ" یعنی "باش" خاطرنشان میسازد پس کیفیت خلقت آدم به صورت تدریج، انجام پذیرفته ولی نفخ روح به صورت غیر تدریجی و یا پدیده امر به وجود آمده پس روح انسان به امر خداوند موجود گشته است و نظیر این آیه را خوانندگان میتوانند در آیات 12 تا 14 سوره "مؤمنون" مطالعه نمایند.
چنانکه در آیه 59 سوره آل عمران ملاحظه میگردد، قرآن پیدایش پدیده روح را به عنوان کیفیتی متفاوت با مراحل قبلی، معرفی کرده است یعنی جنین در ماههای اول دوره جنینی، دارای حیات و در حال رشد و نموّ میباشد و موقعی که رشد به حدّی رسید که ساختمان قلب، کامل گردید و شروع به طپش نمود و اعضای بدن کامل شد، حیات نباتی جنین تبدیل به حیات عالیتری گردیده، پدیده دیگری به نام روح و نفس، به وجود میآید و از آن تعبیر به کیفیت امری شده است. در روایت وارد از امام سجاد علیهالسلام در تفسیر نورالثقلین17 به این حقیقت اشاره شده که حیات ابتدائی که بیشتر، جنبه نباتی دارد به کیفیت بالاتری که برای تعقّل و زندگی مستقل آماده گردیده، تبدیل میگردد18.
پس؛ از آیات فوق استفاده میشود که روح موجودی محقق و مجرّد از ناحیه پروردگار بوده، جسم نیست زیرا به تعبیر مؤلّف کتاب "رسالةالنفسیة"19 "جسم قسمتپذیر بوده و روح، قسمتپذیر نیست، و روح عَرَض هم نیست زیرا که عَرَض را به خود، قیام نبود و جان، اصل آدمی است و همه اعضاء، تبع وی است، عَرَض چگونه بود...؟"
جالب این است که مؤلّف کتاب "رسالةالنفسیة"، "فضل الله بن حامد حسینی" متوفّای 921هـ.ق. بعد از ذکر مطالب یاد شده، دو بیت شعر فارسی نیز در زمینه مورد بحث چنین سروده است:
سرّی است که جز نهفتنش نیست روان *** دُرّی است نفیس و سفتنش نیست روا
رازی که میان جانِ جانان منست *** دانسته نیست و گفتنش نیست روا