|
|
|
|
![]() ![]() |
Jan 17 2007, 08:44 PM
Post
#1
|
|
|
Premium Member Group: [HOSTED] Posts: 392 Joined: 16-February 06 From: Kolkata, India Member No.: 11,322 |
This post is a part of the Work in Progress guide for Pika Bot. I would appreciate any help in the making of this guide (Criticism and Ideas are extremely welcome). Please note, that this guide is meant to target begginers and the not so begginers alike. If you want to try your hands on Pika Bot, navigate here http://ntek.astahost.com/products/pikabot
What is Pika Bot? Pika Bot is a Yahoo! Messenger Protocol based client which can automate your session on Yahoo! Non-Greek Definition Basically, its a chatter bot What can I do with Pika Bot? The most common use of the bot is to respond to Instant & Chat messages. But, with the power of the CEVT mechanism, you can do much more complex operations. You can make the bot leave a room in response to a message 'Say Bye Bot' or make the bot notify about the status changes of your buddies or yourself. These are just some examples. You can find out more by experimenting with the Bot Maker. The CEVT Mechanism Short for Conditions, Effects, Variables & Triggers, the CEVT mechanims is what gives Pika Bot the real flexibility. Think of it in the sense, if something happens, I'll do this. Every action that is to be done, follows the same basic principle, where we take an action (an Effect) in response to an event (a Condition). Take a look at the following lines:-
If somebody sends me a message Hello, I'll say Hi. If Brad sends me a message containing Hello, I'll say Sup Brad?. Let us examine the first line: "If somebody sends me a message" is the condition here and "I'll say Hi" is the effect. We can break the conditions and effects to further simplify the working of the CEVT mechanism. When we ask questions such as, who sends me a message, we get the answer 'somebody'. This somebody is the value for our condition parameter 'Who Sends Message'. Similarily, the effect part is composed of what message I'll send, 'Hi' which accounts for the effect parameter 'Message'. Simple enough, lets take a look on the second line. Here we have an added parameter to the condition, Message = Hello. Notice, how in the first case this parameter could be read as Message = Anything. In the third line, there's a specific answer to the Who sends message question, Brad. Again, the earlier lines could be thought of as Sender = Anybody. This was just meant for imparting a general idea on the Condition & Effect method of doing things. You maybe wondering what the Trigger part does. The trigger is what actually links conditions and effects together. To comprehend its actual benefits, think of the scenario when you have multiple Conditions attributing to an effect or Multiple effects being run in response to a Condition. Simple One to One relation between Conditions & Effects can't aid this problem. The trigger mechanism also allows reusability of existing conditions and effects, as the same condition or effect can be used in multiple triggers. The chaining of two conditions or two effects is done with either of the operator 'AND', 'OR'. Notice how the operators work differently for the two. While, two conditions joined with an 'AND' will run an effect only when both the conditions are TRUE, two effects joined by 'AND' imply that both will be run when the condition is TRUE. In case of the 'OR' operator, an effect will be run when either of the two conditions is set to TRUE, on the other hand, two effects joined by 'OR' will result in either of them (based on randomization) being executed. Variables Variables act as storage vaults for values. Any String inside the %s is considered a variable, for example %ChatRoomName%. Using variables inside the parameters, will result in their values replacing their place. For example:- A message, "Welcome to %ChatRoomName%", will be sent as Welcome to Macintosh:1 when the user is in the room Macintosh:1. Pika Bot has a lot of global variables, whose values are updated throughout the application runtime and support for custom variables of types, Integer, String & Boolean. QUOTE The following is the list of the Conditions, Effects and system variables supported by Pika Bot in its current release. Conditions:- Buddy Attributes Comes Online -> Fired when one of your buddy signs in. Goes Offline -> Fired when one of your buddy signs out. Status Changes -> Fired when the status of one of your buddies changes. Self Attributes Come Online -> Fired when you sign in. Go Offline -> Fired when you go offline. Join Room -> Fired when you join a room. Leave Room -> Fired when you leave a room. Before I Leave Room -> Fired just before you exit a room. Status Changes -> Fired when your status message changes. Chat Attributes Some one Joins Room -> Fired when a user joins a chat room. Someone Leaves Room -> Fired when a user leaves a chat room Someone Sends a Normal Chat Message -> Fired when a user send a Normal (i.e non Emotes and Think Text). Someone Sends a Think Text Chat Message -> Fired when a Think Text is sent in a chat room. Someone Sends a Emote Chat Message -> Fired when a user sends an Emote Chat Message. Someone Sends a Chat Message -> Fired when either of the above three is true User In Chat Room -> Fired as long as a user is in the room. Private Message Attributes New PM Arrives from Buddy -> Fired when one of your contacts sends a PM. New PM Arrives from Non Buddy -> Fired when someone not in your buddy list sends you a PM. New PM Arrives from Ignored User -> Fired when an Ignored User tries to PM you. New PM Arrives from Non Ignored User -> Fired when a Non-Ignored user PMs you. New PM Arrives -> Fired when anyone sends u a PM. I Send PM -> Fired when you send someone a PM Variable Attributes Value Equals -> Fired when a variable equals the specified value. QUOTE Effects General Effects Pause -> Pauses the Bot Engine for the specified no. of seconds. Chat Room Effects Join Room -> Joins the specified chat room. Leave Room -> Leaves the current room. Send Chat Message -> Send a Chat Message. Private Message Effects Send PM -> Send a PM to the specified user. Variable Effects Set Value -> Set the value of the variable. Increment -> Increments the value of an Integer Variable. Decrement -> Decrements the value of an Integer Variable. Inverse -> Toggles the state of a boolean variable (True/False) QUOTE System Variables ChatRoomName ChatUserCount MyUserID MyNickName MyStatus Month Year Day Hour Minute Second LastPMer LastCMer Date Time OnOffBuddy StatusChangedBuddy BuddyStatus JoinUserName JoinUserNick LeftUserName LeftUserNick User Defined Variables Pika Bot also supports creation, manupulation & validation of user defined variables of types(Integer, String & Boolean). QUOTE System Function Random Number -> Generates a Random Number in the specified range. QUOTE Besides, being a Yahoo! Bot, Pika Bot includes quite a few of the basic Yahoo! Features. Full feature listing is given below:- Log In to Yahoo! Messenger Protocol v 12 Send / Receive Private Message Join Yahoo! Public Rooms Send / Receive Chat Messages Ignore / Un Ignore Yahoo IDs Add / Remove Buddies Deny Buddies / Others Filter Room Join Messages Font / Color Formatting Fade / Alternate Color Text (GUI for fade color development not employed) Smileys (All Yahoo! Smileys (Default + Hidden) + few extra smileys) Inbuilt Browser using IE Active X Component View Profiles Display Profiles in chat Rooms Events, Trigger, Condition based response engine Online /Offline Buddy Notification Buddy Status Display Block Add Requests Block Messages (Private) from Friends/ Non-Friends/All Prefetched Yahoo Chat Room Listing (US, Germany, France, India etc) Bot Maker Online Update (Now can be done even when Offline) Automatic Server Selection |
|
|
|
![]() ![]() |
Similar Topics
|
Lo-Fi Version | Time is now: 13th October 2008 - 04:23 PM |