How to use the wechaty-puppet.ContactType.Official function in wechaty-puppet

To help you get started, we’ve selected a few wechaty-puppet examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github wechaty / wechaty-puppet-padplus / src / pure-function-helpers / contact-raw-payload-parser.ts View on Github external
*  status: 0,
     *  stranger: '',
     *  ticket: '',
     *  user_name: '' }
     */
    // console.log(rawPayload)
    throw Error('cannot get user_name from raw payload: ' + JSON.stringify(rawPayload))
  }

  if (isRoomId(rawPayload.userName)) {
    throw Error('Room Object instead of Contact!')
  }

  let contactType = ContactType.Unknown
  if (isContactOfficialId(rawPayload.userName) || rawPayload.verifyFlag !== 0) {
    contactType = ContactType.Official
  } else {
    contactType = ContactType.Personal
  }
  let friend = false
  if (rawPayload.stranger && rawPayload.stranger !== '0' && rawPayload.verifyFlag === 0) {
    friend = true
  }
  const payload: ContactPayload = {
    alias     : rawPayload.remark,
    avatar    : rawPayload.bigHeadUrl,
    city      : rawPayload.city,
    friend,
    gender    : rawPayload.sex,
    id        : rawPayload.userName,
    name      : rawPayload.nickName,
    province  : rawPayload.province,
github wechaty / wechaty / src / puppet-padchat / pure-function-helpers / contact-raw-payload-parser.ts View on Github external
*  status: 0,
     *  stranger: '',
     *  ticket: '',
     *  user_name: '' }
     */
    // console.log(rawPayload)
    throw Error('cannot get user_name from raw payload: ' + JSON.stringify(rawPayload))
  }

  if (isRoomId(rawPayload.user_name)) {
    throw Error('Room Object instead of Contact!')
  }

  let contactType = ContactType.Unknown
  if (isContactOfficialId(rawPayload.user_name)) {
    contactType = ContactType.Official
  } else {
    contactType = ContactType.Personal
  }

  const payload: ContactPayload = {
    alias     : rawPayload.remark,
    avatar    : rawPayload.big_head,
    city      : rawPayload.city,
    gender    : rawPayload.sex,
    id        : rawPayload.user_name,
    name      : rawPayload.nick_name,
    province  : rawPayload.provincia,
    signature : (rawPayload.signature).replace('+', ' '),          // Stay+Foolish
    type      : contactType,
  }
github wechaty / wechaty / src / puppet-padchat / pure-function-helpers / contact-raw-payload-parser.spec.ts View on Github external
const EXPECTED_CONTACT_PAYLOAD_PERSONAL: ContactPayload = {
    id        : 'mengjunjun001',
    gender    : ContactGender.Female,
    type      : ContactType.Personal,
    alias     : '女儿',
    avatar    : 'http://wx.qlogo.cn/mmhead/ver_1/xfCMmibHH74xGLoyeDFJadrZXX3eOEznPefiaCa3iczxZGMwPtDuSbRQKx3Xdm18un303mf0NFia3USY2nO2VEYILw/0',
    city      : 'Haidian',
    name      : '梦君君',
    province  : 'Beijing',
    signature : 'Stay Foolish',
  }

  const EXPECTED_CONTACT_PAYLOAD_OFFICIAL: ContactPayload = {
    id        : 'gh_59d7c8ad720c',
    gender    : ContactGender.Unknown,
    type      : ContactType.Official,
    alias     : '',
    avatar    : 'http://wx.qlogo.cn/mmhead/ver_1/TR8EDh3MgMsu20pxjrDPBpaGySuEAGf3MUuoeUOV2LiaqvZxeMqb1U7hgiciaQZBC8LYN0boVLCKOIYg71pxdl1fQabiaxsn7CnNeGWVrK3jSIY/0',
    city      : 'Haidian',
    name      : '李卓桓',
    province  : 'Beijing',
    signature : 'CARPE DIEM+-+if+not+us,+who?+if+not+now,+when?',
  }

  const resultPersonal = contactRawPayloadParser(PADCHAT_CONTACT_PAYLOAD_PERSONAL)
  t.deepEqual(resultPersonal, EXPECTED_CONTACT_PAYLOAD_PERSONAL, 'should parse ContactPayload for personal account payload')

  const resultOfficial = contactRawPayloadParser(PADCHAT_CONTACT_PAYLOAD_OFFICIAL)
  t.deepEqual(resultOfficial, EXPECTED_CONTACT_PAYLOAD_OFFICIAL, 'should parse ContactPayload for official account payload')

  t.throws(() => contactRawPayloadParser({} as any), 'should throw exception for invalid object')
  t.throws(() => contactRawPayloadParser(undefined as any), 'should throw exception for undifined')