[All] Classic Chat API Alpha v1 [Edit: 05/20]

General Discussion
1 2 3 11 Next
Chat Channels are a defining aspect of the legacy Battle.net experience. Modernization efforts have or will limit functions the community has created over the years. That's not acceptable, so Classic Games is excited to debut our official Chat API Alpha.

Mark 1 of CAPI is now available for testing on the PTR. This first iteration allows for interactive bots. With your help and support we will expand the feature set over time.

Specific Changes & Improvements
  • Ability to chat and whisper across all classic games
  • A valid legacy account with registered email is required to register a bot - see instructions below for more details
  • Only one bot per Op or Clan channel

Known
  • Only USWest is enabled

How To
CAPI specifications and registration instructions:
https://d8un0y0mnd29o.cloudfront.net/public/Chat+Bot+API+Alpha+v1.pdf

Test web app and stub server:
https://d8un0y0mnd29o.cloudfront.net/public/Chat+Bot+Demo+Alpha+v1.zip

Edit: V2 is available with Ban/UnBan/Kick
https://d8un0y0mnd29o.cloudfront.net/public/Chat+Bot+API+Alpha+v2.pdf

Will be some downtime as i update the server today (05/20) and will send invites as soon as it is all ready for USWest, USEast, EUR
Woot!

As the owner of bnetdocs.org, I look forward to adding this to our documentation.
Interesting.
Fantastic! Looking forward to seeing how this develops as features are added.
Very exciting!!
Will you allow appear offline? My biggest worry is when Classic Games gets bundled with Battle.net app, I hate that we are always online on that thing
Nice to see an official API, though I'm curious how all of the old bot programs (Stealthbot for example) worked with Battle.net. Anyone have any info?
05/01/2017 04:26 PMPosted by BlackTurtle
Nice to see an official API, though I'm curious how all of the old bot programs (Stealthbot for example) worked with Battle.net. Anyone have any info?


The current chatbot programs at least post 2005 emulate the official game clients to the degree that they can login to chat. With the exception of starcraft 1.18+ the classic games are fairly well documented from a network perspective as far as they relate to chat channels (there's some documentation available for the in-game network protocols but there's little legitimate use for that so I won't discuss such places). While chatbots emulated games before 2005 too, historically Blizzard offered pure text based chat connections w/o a game client. While they didn't offer support for this method of connecting they provided it with the intent that it would be used to build chatbots for guilds and clans (much like this API). In any case, https://bnetdocs.org/ maintained by jailout2000 (above) documents the information used to build chatbots like stealthbot. This information is obtained through a process called reverse engineering which is expressly forbidden by the Battle.net terms of use agreement. Historically Blizzard has turned a blind eye to this process as it relates to the chat channels as long as bots created for chat purposes are not used for malicious activities or flooding/spamming and such bots do not interfere with people playing the games.
This is awesome news!
I'm giddy. #BNU`Bot days~
Will this be expanded to offer a way for legacy Bnet and current Bnet users to chat with each other? As in, will it be possible to write a plugin for CAPI for this?
05/01/2017 07:42 PMPosted by Stan
Will this be expanded to offer a way for legacy Bnet and current Bnet users to chat with each other? As in, will it be possible to write a plugin for CAPI for this?


Will work for all classic games but not Bnet users.
Blizzard HYPE!!
I would love to contribute some ideas to further extend this!

First things first though, how do I get into the classic PTR?
(p.s. I'm sure i'm not the only one wondering)
It looks nice. Greetings from Europe!
I presume we can request features. Off the top of my head here're the features I'd like to see in order to implement the sort of chatbots we use for guild management and clans atm. If anyone can think of something i missed lmk. These sections don't cover all the functionality the games provide in said sections but it's imo what is needed for many popular types of bots:

moderation functionality:
ban, kick, unban, designate, resign (channel moderation bots use these)

friends list functionality:
add, remove, notification of game join for mutual friends (community organization bots use these, like the baal channel project script).

clan functionality(Wc3):
add, remove, promote, demote, set motd, lock and unlock channel. it'd be cool if we got notification of game join for wc3 for clan members. (clan moderation bots use these)

chat functionality:
emotes are frequently used on bots. These display as different color chat and can be more readable when chat is active. (many types of bots use these)

modification suggestions:
Regarding the user update event, I'm not sure wins should be in the same section. There are many player statistics, win/lost records for many game types in many different games, character level in Diablo II etc. perhaps this should be moved to its own statistics message?

in the future:
request/modify profile data and/or clan data might be a useful feature. Most bots end up modifying their profiles but this is probably lower priority than above.
My request for that API is to have a larger Friendlist I think 100/200 entries should be enough.

Players used more chatbots to have a larger friendlist so the bots could respond to status commands of certain player to see his gamestatus.

This information is obtained through a process called reverse engineering which is expressly forbidden by the Battle.net terms of use agreement.


That's only partially true. D2mods formerly known as Phrozenkeep stated they were allowed to mod and 1.10 made D2 modding simpler. An outline rule was "No Packetdiscussion", "No network related code" and "No server emulation".

You are right that Blizzard turned a blind eye towards chatbots though.
Signed up! Already made simple backend with nodejs. When you will start giving API keys?
05/02/2017 07:41 AMPosted by Kaylin
I presume we can request features. Off the top of my head here're the features I'd like to see in order to implement the sort of chatbots we use for guild management and clans atm. If anyone can think of something i missed lmk. These sections don't cover all the functionality the games provide in said sections but it's imo what is needed for many popular types of bots:

moderation functionality:
ban, kick, unban, designate, resign (channel moderation bots use these)

friends list functionality:
add, remove, notification of game join for mutual friends (community organization bots use these, like the baal channel project script).

clan functionality(Wc3):
add, remove, promote, demote, set motd, lock and unlock channel. it'd be cool if we got notification of game join for wc3 for clan members. (clan moderation bots use these)

chat functionality:
emotes are frequently used on bots. These display as different color chat and can be more readable when chat is active. (many types of bots use these)

modification suggestions:
Regarding the user update event, I'm not sure wins should be in the same section. There are many player statistics, win/lost records for many game types in many different games, character level in Diablo II etc. perhaps this should be moved to its own statistics message?

in the future:
request/modify profile data and/or clan data might be a useful feature. Most bots end up modifying their profiles but this is probably lower priority than above.

i assume a lot of this functionality can be accessed with / commands like /friend add, /ban, /kick, etcetc
Stoked to see some updates
Looking forward to this!

Join the Conversation

Return to Forum