نقل قول:
نوشته اصلي بوسيله Siavash
راه درست كردن اين كار استفاده از <like> هست. من توي ورژن بعدي اين قابليت رو اضافه مي كنم. چون اگر بخوايم در Request "يا" رو اضافه كنيم Query ها بسيار سنگين ميشن چون نياز به استفاده از Wildcard ها هست.
تگ <like> به اين صورت خواهد بود كه مثلاً شما hi رو با جوابش تعيين مي كنيد. بعد ركورد ديگه اي به نام hello كه تعريف مي كنيد Response اون رو به جاي اينكه دوباره با جواب پر كنيد داخل اون مي نويسيد <like>hi</like>.
در اين صورت اگر جواب hi رو تغيير بديد جواب hello هم تغيير مي كنه.
خوبي ديگرش اين هست كه مي تونيد دو يا چند تا <like> به همراه يك متن اضافه داشته باشيد. مثلا:
كد:
Bah bah, <like>hi</like>. <like>khoobi</like>
اين كد به ابتداي جواب Bah bah, اضافه مي كنه بعد جواب hi رو اضافه مي كنه و بعد . و سپس جواب خوبي رو اضافه مي كنه. هر كدوم از جواب هاي hi و khoobi عوض بشن بعداً اينجا هم بروز مي شن.
فكر مي كنم اين كار بهتر از اضافه كردن or در بخش Request باشه. براي قوي تر شدن Request يك مدل جديد بعداً ارائه مي كنم كه خيلي انتخاب جواب توسط بات رو هوشمندانه تر خواهد كرد.
|
فکر جالبیه ولی به نظر خیلی سنگین میکنه برنامه رو . اگه هر کلمه رو تشخیص بده و جوابش رو از دیتابیس بگیره و همراه با یه کلمه ی اضافه مثل "و" بچسبونه به هم جالب تر باید باشه .
نقل قول:
نوشته اصلي بوسيله r-co
) می خواستم بدونم که یه Table تو دیتابیس ایجاد کرد مثلا Message2 که اینجا 3 پاسخ باشه و به هنگام در خواست از روبات هر سه رو همزمان بفرسته یعنی سه Response باشه Res..1 Res..2 Res..3
حالا این سه جوابو کنار هم در یک پیغام جا بده و رنگ هاشو خودش اوتوماتیک بزاره یعنی نیاز نباشه ما تک تک برای جوابا رنگ تعیین کنیم .
----------------------------------------------------------------------------------------------------
2) چطوری باید یه دستور نوشت که بجای / مثلا از \ استفاده کرد و اگه بعد از \ هر چیزی بنویسیم بیاد از تو دیتابیس کلمه ای که بعد از \ باشه از تو Table مثلا از تو Message3 بگرده و جوابشو بفرسته؟ یعنی همون کاری که وقتی ما به روبات PM میدیم میاد از تو Message میاد جوابو میفرسته تو اینجا بیاد کلمه ی بعد از \ رو بگیره و جوابشو پیدا کمه؟
نمی خوام \ قبل از Request باشه؟
|
1 رو نمیتونم درست توضیح بدم ولی با این کدهایی که توی سورس هست میشه دقیقآ اینکار رو کرد .
برای 2 باید توی ماژول modFunctions یه Function مثل getResponse ایجاد کنی بعد توی frmMain یه کدی شبیه این بذاری :
نقل قول:
If Left(Message, 5) = "/XXXX" Then
Response = shabihe-get-response("<XXXX>", PersonId)
End If
|
که به جای shabihe-get-response باید اون Function که ساختی رو بذاری ! و بعد اگه توی Table مورد نظر <XXXX> باشه جوابشو برمیداره و پی ام میکنه !