UNPKG

wechaty-puppet-wechat4u

Version:
49 lines 2.36 kB
import * as PUPPET from 'wechaty-puppet'; import { plainText } from '../utils/xml.js'; import { log } from 'wechaty-puppet'; export function wechat4uContactToWechaty(rawPayload) { log.silly('PuppetWechat4u', 'contactParseRawPayload(Object.keys(payload).length=%d)', Object.keys(rawPayload).length); if (!Object.keys(rawPayload).length) { log.error('PuppetWechat4u', 'contactParseRawPayload(Object.keys(payload).length=%d)', Object.keys(rawPayload).length); log.error('PuppetWechat4u', 'contactParseRawPayload() got empty rawPayload!'); throw new Error('empty raw payload'); // return { // gender: Gender.Unknown, // type: Contact.Type.Unknown, // } } // this.id = rawPayload.UserName // MMActualSender??? MMPeerUserName??? // `getUserContact(message.MMActualSender,message.MMPeerUserName).HeadImgUrl` // uin: rawPayload.Uin, // stable id: 4763975 || getCookie("wxuin") return { address: rawPayload.Alias, alias: plainText(rawPayload.RemarkName), avatar: rawPayload.HeadImgUrl, city: rawPayload.City, friend: !!(rawPayload.ContactFlag & 1), gender: rawPayload.Sex, id: rawPayload.UserName, name: plainText(rawPayload.NickName) || '', phone: [], province: rawPayload.Province, signature: rawPayload.Signature, star: !!rawPayload.StarFriend, weixin: rawPayload.Alias, // tslint:disable:max-line-length /** * @see 1. https://github.com/Chatie/webwx-app-tracker/blob/7c59d35c6ea0cff38426a4c5c912a086c4c512b2/formatted/webwxApp.js#L3243 * @see 2. https://github.com/Urinx/WeixinBot/blob/master/README.md * @ignore */ // eslint-disable-next-line sort-keys type: (!!rawPayload.UserName && !rawPayload.UserName.startsWith('@@') && !!(rawPayload.VerifyFlag & 8)) ? PUPPET.types.Contact.Official : PUPPET.types.Contact.Individual, /** * @see 1. https://github.com/Chatie/webwx-app-tracker/blob/7c59d35c6ea0cff38426a4c5c912a086c4c512b2/formatted/webwxApp.js#L3246 * @ignore */ // special: specialContactList.indexOf(rawPayload.UserName) > -1 || /@qqim$/.test(rawPayload.UserName), }; } //# sourceMappingURL=contact.js.map