Versión web de la API de WeChat, incluida la versión terminal de WeChat y el robot WeChat
Para garantizar que los scripts de muestra se ejecuten correctamente, instale los paquetes de terceros necesarios.
pip install -r requirements.txt
Nota: Es posible que las imágenes y funciones que se muestran a continuación no sean las más recientes; consulte el código fuente para obtener más detalles.
Siga las instrucciones para escanear el código QR en WeChat de su teléfono móvil e inicie sesión. Puede elegir si desea activar el modo de respuesta automática.
Después de activar el modo de respuesta automática, si se recibe un mensaje de texto, responderá automáticamente, incluidos los mensajes grupales.
Tarjetas de presentación, enlaces, emoticones animados y mensajes de ubicación de direcciones.
Actualmente se admiten básicamente todas las funciones de la versión web.
+--------------+ +---------------+ +---------------+
| | | | | |
| Get UUID | | Get Contact | | Status Notify |
| | | | | |
+-------+------+ +-------^-------+ +-------^-------+
| | |
| +-------+ +--------+
| | |
+-------v------+ +-----+--+------+ +--------------+
| | | | | |
| Get QRCode | | Weixin Init +------> Sync Check <----+
| | | | | | |
+-------+------+ +-------^-------+ +-------+------+ |
| | | |
| | +-----------+
| | |
+-------v------+ +-------+--------+ +-------v-------+
| | Confirm Login | | | |
+------> Login +---------------> New Login Page | | Weixin Sync |
| | | | | | |
| +------+-------+ +----------------+ +---------------+
| |
|QRCode Scaned|
+-------------+
API | Obtener UUID |
---|---|
URL | https://login.weixin.qq.com/jslogin |
método | CORREO |
datos | Codificación de URL |
parámetros | appid :应用ID diversión : nuevo 应用类型 idioma : 语言 zh_CN_ : 时间戳 |
Datos devueltos (Cadena):
window.QRLogin.code = 200; window.QRLogin.uuid = "xxx"
Nota: El appid aquí es el AppID de la aplicación registrada en la plataforma abierta WeChat. La versión web de WeChat tiene dos AppID. El anterior era
wx782c26e4c19acffb
y el nombre de la aplicación se mostraba comoWeb微信
en el cliente WeChat. El actual eswxeb7ec651dd0aefa9
y el nombre mostrado es微信网页版
.
API | Vincular inicio de sesión (webwxpushloginurl) |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxpushloginurl |
método | CONSEGUIR |
parámetros | uino :xxx |
Datos devueltos (Cadena):
{'msg': 'all ok', 'uuid': 'xxx', 'ret': '0'}
通过这种方式可以省掉扫二维码这步操作,更加方便
API | Generar código QR |
---|---|
URL | uuid |
método | CONSEGUIR |
API | Escanea el código QR para iniciar sesión |
---|---|
URL | https://login.weixin.qq.com/cgi-bin/mmwebwx-bin/login |
método | CONSEGUIR |
parámetros | consejo : 1未扫描 0已扫描 UUID :xxx _ : 时间戳 |
Datos devueltos (Cadena):
window.code=xxx;
xxx:
408 登陆超时
201 扫描成功
200 确认登录
当返回200时,还会有
window.redirect_uri="https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage?ticket=xxx&uuid=xxx&lang=xxx&scan=xxx";
API | webwxnuevapágina de inicio de sesión |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxnewloginpage |
método | CONSEGUIR |
parámetros | billete : xxx UUID :xxx idioma : 语言 zh_CNescanear :xxx divertido : nuevo |
Datos devueltos (XML):
<error>
<ret>0</ret>
<message>OK</message>
<skey>xxx</skey>
<wxsid>xxx</wxsid>
<wxuin>xxx</wxuin>
<pass_ticket>xxx</pass_ticket>
<isgrayscale>1</isgrayscale>
</error>
API | webwxinit |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxinit?pass_ticket=xxx&skey=xxx&r=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { Solicitud base: { Uin: xxx, Sid: xxx, Clave: xxx, ID del dispositivo: xxx, } } |
Datos devueltos (JSON):
{
"BaseResponse": {
"Ret": 0,
"ErrMsg": ""
},
"Count": 11,
"ContactList": [...],
"SyncKey": {
"Count": 4,
"List": [
{
"Key": 1,
"Val": 635705559
},
...
]
},
"User": {
"Uin": xxx,
"UserName": xxx,
"NickName": xxx,
"HeadImgUrl": xxx,
"RemarkName": "",
"PYInitial": "",
"PYQuanPin": "",
"RemarkPYInitial": "",
"RemarkPYQuanPin": "",
"HideInputBarFlag": 0,
"StarFriend": 0,
"Sex": 1,
"Signature": "Apt-get install B",
"AppAccountFlag": 0,
"VerifyFlag": 0,
"ContactFlag": 0,
"WebWxPluginSwitch": 0,
"HeadImgFlag": 1,
"SnsFlag": 17
},
"ChatSet": xxx,
"SKey": xxx,
"ClientVersion": 369297683,
"SystemTime": 1453124908,
"GrayScale": 1,
"InviteStartCount": 40,
"MPSubscribeMsgCount": 2,
"MPSubscribeMsgList": [...],
"ClickReportInterval": 600000
}
API | webwxstatusnotificar |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxstatusnotify?lang=zh_CN&pass_ticket=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: { Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx }, Código: 3, De nombre de usuario: 自己ID ,ToUserName: 自己ID ,ClientMsgId: 时间戳 } |
Datos devueltos (JSON):
{
"BaseResponse": {
"Ret": 0,
"ErrMsg": ""
},
...
}
API | webwxgetcontact |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin//webwxgetcontact?pass_ticket=xxx&skey=xxx&r=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
Datos devueltos (JSON):
{
"BaseResponse": {
"Ret": 0,
"ErrMsg": ""
},
"MemberCount": 334,
"MemberList": [
{
"Uin": 0,
"UserName": xxx,
"NickName": "Urinx",
"HeadImgUrl": xxx,
"ContactFlag": 3,
"MemberCount": 0,
"MemberList": [],
"RemarkName": "",
"HideInputBarFlag": 0,
"Sex": 0,
"Signature": "你好,我们是地球三体组织。在这里,你将感受到不一样的思维模式,以及颠覆常规的世界观。而我们的目标,就是以三体人的智慧,引领人类未来科学技术500年。",
"VerifyFlag": 8,
"OwnerUin": 0,
"PYInitial": "URINX",
"PYQuanPin": "Urinx",
"RemarkPYInitial": "",
"RemarkPYQuanPin": "",
"StarFriend": 0,
"AppAccountFlag": 0,
"Statues": 0,
"AttrStatus": 0,
"Province": "",
"City": "",
"Alias": "Urinxs",
"SnsFlag": 0,
"UniFriend": 0,
"DisplayName": "",
"ChatRoomId": 0,
"KeyWord": "gh_",
"EncryChatRoomId": ""
},
...
],
"Seq": 0
}
API | webwxbatchgetcontact |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxbatchgetcontact?type=ex&r=xxx&pass_ticket=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: { Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx }, Recuento: 群数量 ,Lista: [ {Nombre de usuario: 群ID , EncryChatRoomId: "" },... ], } |
Datos de retorno (JSON) iguales que los anteriores
API | verificación de sincronización |
---|---|
protocolo | https |
anfitrión | webpush.weixin.qq.com webpush.wx2.qq.com webpush.wx8.qq.com webpush.wx.qq.com webpush.web2.wechat.com webpush.web.wechat.com |
camino | /cgi-bin/mmwebwx-bin/synccheck |
método | CONSEGUIR |
datos | Codificación de URL |
parámetros | r :时间戳 sid :xxx uino :xxx clave : xxx ID del dispositivo : xxx sincronización :xxx _ : 时间戳 |
Datos devueltos (Cadena):
window.synccheck={retcode:"xxx",selector:"xxx"}
retcode:
0 正常
1100 失败/登出微信
selector:
0 正常
2 新的消息
7 进入/离开聊天界面
API | webwxsync |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxsync?sid=xxx&skey=xxx&pass_ticket=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: { Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx }, Clave de sincronización: xxx, rr: 时间戳取反 } |
Datos devueltos (JSON):
{
'BaseResponse': {'ErrMsg': '', 'Ret': 0},
'SyncKey': {
'Count': 7,
'List': [
{'Val': 636214192, 'Key': 1},
...
]
},
'ContinueFlag': 0,
'AddMsgCount': 1,
'AddMsgList': [
{
'FromUserName': '',
'PlayLength': 0,
'RecommendInfo': {...},
'Content': "",
'StatusNotifyUserName': '',
'StatusNotifyCode': 5,
'Status': 3,
'VoiceLength': 0,
'ToUserName': '',
'ForwardFlag': 0,
'AppMsgType': 0,
'AppInfo': {'Type': 0, 'AppID': ''},
'Url': '',
'ImgStatus': 1,
'MsgType': 51,
'ImgHeight': 0,
'MediaId': '',
'FileName': '',
'FileSize': '',
...
},
...
],
'ModChatRoomMemberCount': 0,
'ModContactList': [],
'DelContactList': [],
'ModChatRoomMemberList': [],
'DelContactCount': 0,
...
}
API | webwxsendmsg |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxsendmsg?pass_ticket=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: {Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx}, Mensaje: { Tipo: 1 文字消息 ,Contenido: 要发送的消息 ,De nombre de usuario: 自己ID ,Para nombre de usuario: 好友ID ,LocalID: 与clientMsgId相同 ,ClientMsgId: 时间戳左移4位随后补上4位随机数 } } |
Datos devueltos (JSON):
{
"BaseResponse": {
"Ret": 0,
"ErrMsg": ""
},
...
}
API | webwxrevokemsg |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxrevokemsg |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: { Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx }, SvrMsgId: msg_id, Para nombre de usuario: ID_usuario, ClientMsgId: local_msg_id } |
Datos devueltos (JSON):
{
"BaseResponse": {
"Ret": 0,
"ErrMsg": ""
}
}
API | webwxsendmsgemotion |
---|---|
URL | https://wx2.qq.com/cgi-bin/mmwebwx-bin/webwxsendemoticon?fun=sys&f=json&pass_ticket=xxx |
método | CORREO |
datos | JSON |
encabezamiento | Tipo de contenido: aplicación/json; conjunto de caracteres=UTF-8 |
parámetros | { BaseRequest: {Uin: xxx, Sid: xxx, Skey: xxx, DeviceID: xxx}, Mensaje: { Tipo: 47 emoji消息 ,Bandera Emoji: 2, MediaId: 表情上传后的媒体ID ,De nombre de usuario: 自己ID ,Para nombre de usuario: 好友ID ,LocalID: 与clientMsgId相同 ,ClientMsgId: 时间戳左移4位随后补上4位随机数 } } |
API | webwxgeticon |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgeticon |
método | CONSEGUIR |
parámetros | seq :数字,可为空 nombre de usuario : ID clave : xxx |
API | webwxgetheadimg |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgetheadimg |
método | CONSEGUIR |
parámetros | seq :数字,可为空 nombre de usuario : 群ID clave : xxx |
API | webwxgetmsgimg |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgetmsgimg |
método | CONSEGUIR |
parámetros | MsgID :消息ID escriba : 略缩图 esclava o为空时加载原图 clave : xxx |
API | webwxgetvideo |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgetvideo |
método | CONSEGUIR |
parámetros | msgstr :消息ID clave : xxx |
API | webwxgetvoice |
---|---|
URL | https://wx.qq.com/cgi-bin/mmwebwx-bin/webwxgetvoice |
método | CONSEGUIR |
parámetros | msgstr :消息ID clave : xxx |
tipo | ilustrar |
---|---|
cuenta personal | Comience con @ , por ejemplo: @xxx |
chat grupal | Comience con @@ , por ejemplo: @@xxx |
Cuenta pública/cuenta de servicio | Comienza con @ pero tiene VerifyFlag & 8! = 0VerifyFlag :Cuenta pública personal general/cuenta de servicio: 8 Número de atención general empresarial: 24 Cuenta oficial de WeChat 微信团队 : 56 |
cuenta especial | Las cuentas como File Transfer Assistant tienen identificaciones especiales. Las conocidas actualmente son:filehelper , newsapp , fmessage , weibo , qqmail , tmessage , qmessage , qqsync , floatbottle , lbsapp , shakeapp , medianote , qqfriend , readerapp , blogapp , facebookapp , masssendapp , meishiapp , feedsapp , voip , blogappweixin , weixin , brandsessionholder , weixinreminder , officialaccounts , notification_messages , wxitil , userexperience_alarm , notification_messages |
Formato general del mensaje:
{
"FromUserName": "",
"ToUserName": "",
"Content": "",
"StatusNotifyUserName": "",
"ImgWidth": 0,
"PlayLength": 0,
"RecommendInfo": {...},
"StatusNotifyCode": 4,
"NewMsgId": "",
"Status": 3,
"VoiceLength": 0,
"ForwardFlag": 0,
"AppMsgType": 0,
"Ticket": "",
"AppInfo": {...},
"Url": "",
"ImgStatus": 1,
"MsgType": 1,
"ImgHeight": 0,
"MediaId": "",
"MsgId": "",
"FileName": "",
"HasProductId": 0,
"FileSize": "",
"CreateTime": 1454602196,
"SubMsgType": 0
}
Tipo de mensaje | ilustrar |
---|---|
1 | mensaje de texto |
3 | Mensaje con imagen |
34 | mensaje de voz |
37 | Mensaje de confirmación de amigo |
40 | POSIBLEAMIGA_MSG |
42 | compartir tarjeta de visita |
43 | mensaje de vídeo |
47 | emoticones animados |
48 | mensaje de ubicación |
49 | compartir enlace |
50 | VOIPMSG |
51 | Mensaje de inicialización de WeChat |
52 | VOIPNOTIFICAR |
53 | VOIPINVITACIÓN |
62 | vídeo corto |
9999 | AVISO DE SISTEMA |
10000 | Mensajes del sistema |
10002 | Retirar mensaje |
Mensaje de inicialización de WeChat
MsgType: 51
FromUserName: 自己ID
ToUserName: 自己ID
StatusNotifyUserName: 最近联系的联系人ID
Content:
< msg >
< op id =' 4 ' >
< username >
// 最近联系的联系人
filehelper,xxx@chatroom,wxid_xxx,xxx,...
</ username >
< unreadchatlist >
< chat >
< username >
// 朋友圈
MomentsUnreadMsgStatus
</ username >
< lastreadtime >
1454502365
</ lastreadtime >
</ chat >
</ unreadchatlist >
< unreadfunctionlist >
// 未读的功能账号消息,群发助手,漂流瓶等
</ unreadfunctionlist >
</ op >
</ msg >
mensaje de texto
MsgType: 1
FromUserName: 发送方ID
ToUserName: 接收方ID
Content: 消息内容
Mensaje con imagen
MsgType: 3
FromUserName: 发送方ID
ToUserName: 接收方ID
MsgId: 用于获取图片
Content:
< msg >
< img length =" 6503 " hdlength =" 0 " />
< commenturl > </ commenturl >
</ msg >
Pequeño mensaje de vídeo
MsgType: 62
FromUserName: 发送方ID
ToUserName: 接收方ID
MsgId: 用于获取小视频
Content:
< msg >
< img length =" 6503 " hdlength =" 0 " />
< commenturl > </ commenturl >
</ msg >
mensaje de geolocalización
MsgType: 1
FromUserName: 发送方ID
ToUserName: 接收方ID
Content: http://weixin.qq.com/cgi-bin/redirectforward?args=xxx
// 属于文本消息,只不过内容是一个跳转到地图的链接
mensaje de tarjeta de visita
MsgType: 42
FromUserName: 发送方ID
ToUserName: 接收方ID
Content :
< ? xml version = "1.0" ? >
< msg bigheadimgurl = "" smallheadimgurl = "" username = "" nickname = "" shortpy = "" alias = "" imagestatus = "3" scene = "17" province = "" city = "" sign = "" sex = "1" certflag = "0" certinfo = "" brandIconUrl = "" brandHomeUrl = "" brandSubscriptConfigUrl = "" brandFlags = "0" regionCode = "" />
RecommendInfo:
{
"UserName" : "xxx" , // ID
"Province" : "xxx" ,
"City" : "xxx" ,
"Scene" : 17 ,
"QQNum" : 0 ,
"Content" : "" ,
"Alias" : "xxx" , // 微信号
"OpCode" : 0 ,
"Signature" : "" ,
"Ticket" : "" ,
"Sex" : 0 , // 1:男, 2:女
"NickName" : "xxx" , // 昵称
"AttrStatus" : 4293221 ,
"VerifyFlag" : 0
}
mensaje de voz
MsgType: 34
FromUserName: 发送方ID
ToUserName: 接收方ID
MsgId: 用于获取语音
Content:
< msg >
< voicemsg endflag =" 1 " cancelflag =" 0 " forwardflag =" 0 " voiceformat =" 4 " voicelength =" 1580 " length =" 2026 " bufid =" 216825389722501519 " clientmsgid =" 49efec63a9774a65a932a4e5fcd4e923filehelper174_1454602489 " fromusername ="" />
</ msg >
emoticones animados
MsgType: 47
FromUserName: 发送方ID
ToUserName: 接收方ID
Content:
< msg >
< emoji fromusername = "" tousername = "" type =" 2 " idbuffer =" media:0_0 " md5 =" e68363487d8f0519c4e1047de403b2e7 " len = " 86235 " productid =" com.tencent.xin.emoticon.bilibili " androidmd5 =" e68363487d8f0519c4e1047de403b2e7 " androidlen =" 86235 " s60v3md5 = " e68363487d8f0519c4e1047de403b2e7 " s60v3len =" 86235 " s60v5md5 = " e68363487d8f0519c4e1047de403b2e7 " s60v5len =" 86235 " cdnurl = " http://emoji.qpic.cn/wx_emoji/eFygWtxcoMF8M0oCCsksMA0gplXAFQNpiaqsmOicbXl1OC4Tyx18SGsQ/ " designerid = "" thumburl = " http://mmbiz.qpic.cn/mmemoticon/dx4Y70y9XctRJf6tKsy7FwWosxd4DAtItSfhKS0Czr56A70p8U5O8g/0 " encrypturl = " http://emoji.qpic.cn/wx_emoji/UyYVK8GMlq5VnJ56a4GkKHAiaC266Y0me0KtW6JN2FAZcXiaFKccRevA/ " aeskey = " a911cc2ec96ddb781b5ca85d24143642 " > </ emoji >
< gameext type =" 0 " content =" 0 " > </ gameext >
</ msg >
Enlace común o mensaje para compartir aplicaciones
MsgType: 49
AppMsgType: 5
FromUserName: 发送方ID
ToUserName: 接收方ID
Url: 链接地址
FileName: 链接标题
Content:
< msg >
< appmsg appid ="" sdkver =" 0 " >
< title > </ title >
< des > </ des >
< type > 5 </ type >
< content > </ content >
< url > </ url >
< thumburl > </ thumburl >
...
</ appmsg >
< appinfo >
< version > </ version >
< appname > </ appname >
</ appinfo >
</ msg >
mensaje de enlace de música
MsgType: 49
AppMsgType: 3
FromUserName: 发送方ID
ToUserName: 接收方ID
Url: 链接地址
FileName: 音乐名
AppInfo: // 分享链接的应用
{
Type: 0,
AppID: wx485a97c844086dc9
}
Content:
< msg >
< appmsg appid =" wx485a97c844086dc9 " sdkver =" 0 " >
< title > </ title >
< des > </ des >
< action > </ action >
< type > 3 </ type >
< showtype > 0 </ showtype >
< mediatagname > </ mediatagname >
< messageext > </ messageext >
< messageaction > </ messageaction >
< content > </ content >
< contentattr > 0 </ contentattr >
< url > </ url >
< lowurl > </ lowurl >
< dataurl >
http://ws.stream.qqmusic.qq.com/C100003i9hMt1bgui0.m4a?vkey=6867EF99F3684&guid=ffffffffc104ea2964a111cf3ff3edaf&fromtag=46
</ dataurl >
< lowdataurl >
http://ws.stream.qqmusic.qq.com/C100003i9hMt1bgui0.m4a?vkey=6867EF99F3684&guid=ffffffffc104ea2964a111cf3ff3edaf&fromtag=46
</ lowdataurl >
< appattach >
< totallen > 0 </ totallen >
< attachid > </ attachid >
< emoticonmd5 > </ emoticonmd5 >
< fileext > </ fileext >
</ appattach >
< extinfo > </ extinfo >
< sourceusername > </ sourceusername >
< sourcedisplayname > </ sourcedisplayname >
< commenturl > </ commenturl >
< thumburl >
http://imgcache.qq.com/music/photo/album/63/180_albumpic_143163_0.jpg
</ thumburl >
< md5 > </ md5 >
</ appmsg >
< fromusername > </ fromusername >
< scene > 0 </ scene >
< appinfo >
< version > 29 </ version >
< appname >摇一摇搜歌</ appname >
</ appinfo >
< commenturl > </ commenturl >
</ msg >
mensaje grupal
MsgType: 1
FromUserName: @@xxx
ToUserName: @xxx
Content:
@xxx:<br/>xxx
Noticias sobre rojo
MsgType: 49
AppMsgType: 2001
FromUserName: 发送方ID
ToUserName: 接收方ID
Content: 未知
Nota: Según el código de la versión web, se puede ver que puede admitir la visualización de mensajes de sobre rojo en el futuro, pero actualmente utiliza mensajes del sistema, ver más abajo.
Mensajes del sistema
MsgType: 10000
FromUserName: 发送方ID
ToUserName: 自己ID
Content:
"你已添加了 xxx ,现在可以开始聊天了。"
"如果陌生人主动添加你为朋友,请谨慎核实对方身份。"
"收到红包,请在手机上查看"
Si desea comunicarse con otros desarrolladores de WeixinBot, o tiene alguna pregunta o sugerencia, puede unirse al grupo WeChat [Los jóvenes alimentaron al perro] para debatir. Escanee el código QR a continuación para agregar al robot como amigo y responda a [Aidog] para obtener el enlace para unirse al grupo.
Nota: Este no es el código QR del grupo. Es un robot que te atrae al grupo. Recuerda responder al robot [Aidog]~ (código secreto: Aidog).