BinaryChat ISAPI WebChannel Documentation ----------------------------------------------------------------------------- Document authored by Spht ============================================================================= Supporting WebChannel ----------------------------------------------------------------------------- First of all, your bot will need to support the BotNet server. The BotNet protocol specification document can be found here: http://www.valhallalegends.com/files/BotNetProtocol.txt For supporting WebChannel, your BotNet support must be developed to the extent that you can log on to an account on BotNet and send private messages to a specific account. Make sure you are identifying the account as the UNIQUE ACCOUNT, not bot name. ----------------------------------------------------------------------------- General Information ----------------------------------------------------------------------------- The account on BotNet that you will be reporting your channel information to is WebChannel. WebChannel is hosted on the Valhalla Legends server and is designed specifically for taking inputted information and presenting it online as HTML standard. Once you have a BotNet account, you will need to ask Skywing, Grok, Spht, or Yoni to give your account access to the WebChannel so that it will accept your messages. ----------------------------------------------------------------------------- WebChannel Messages ----------------------------------------------------------------------------- There are two messages currently supported that are sent to WebChannel. One is URL and the other is EVENT. URL reports to WebChannel the unique sub address where the framework layout of your channel information page will be displayed. EVENT defines the SID_CHATEVENT (0x0f) message that you received from Battle.net. URL
This is the link that will appear on the available channels page for your channel. Idealy, you'll want to use BinaryChatISAPI.dll?channeltextex= or BinaryChatISAPI.dll?channeltextstream=. http://www.valhallalegends.com/skywing/isapi/BinaryChatISAPI.dll?channeltextex=botaccountname This page will display chat activity in the channel. http://www.valhallalegends.com/skywing/isapi/BinaryChatISAPI.dll?channeltextstream=botaccountname This page will display chat activity in the channel and will auto-update any new messages in the chat screen while the page is open. http://www.valhallalegends.com/skywing/isapi/BinaryChatISAPI.dll?channellistex=botaccountname This page will display the list of users in the channel along with their product, flags, and latency bars. http://www.valhallalegends.com/skywing/isapi/BinaryChatISAPI.dll?channelnameex=botaccountname This page will display the channel name and how many users are in the channel. botaccountname is the account that you are logged on with. Add #endoftext at the end of the URL address if you want the browser to display at the bottom of the site instead of at the top which is default. Only use this for channeltextex! The % hex notation should be used in bot account name because some browsers do not accept characters like [ and ]. So %5b, %5d, etc, should be used as a subsitute. EVENT For every combined packet you receive from Battle.net, you should send this message to WebChannel. The eventid, flags, ping, and timestamp are in hex. This is the eventid, flags, ping, user, text that is in the received SID_CHATEVENT message. The timestamp is your local time as a ctime representation of other languages. Use eventid 0 if it's the bot sending a message. ----------------------------------------------------------------------------- WebChat ----------------------------------------------------------------------------- WebChannel also supports chatting through a web browser. To activate WebChat, send CHATON to the WebChannel account. To disable WebChat, send CHATOFF. When someone attempts to send a message through a web browser, WebChannel will send the client the following over BotNet: CHAT . If the password matches the local password that the client has set for WebChat, then the client should process and/or send the message to Battle.net. ----------------------------------------------------------------------------- =============================================================================