Add support for contacts array (#384)

* Add support for contacts array

* Remove contactsArray logs from Example.ts

* Undid prettier formatting of example.js
This commit is contained in:
Omri Dagan
2021-03-06 22:33:47 +02:00
committed by GitHub
parent d469fdb3bd
commit e670ff003e
3 changed files with 10 additions and 4 deletions

View File

@@ -150,4 +150,4 @@ async function example() {
))
}
example().catch((err) => console.log(`encountered error: ${err}`))
example().catch((err) => console.log(`encountered error: ${err}`))

View File

@@ -8,6 +8,7 @@ import {
MediaPathMap,
WALocationMessage,
WAContactMessage,
WAContactsArrayMessage,
WATextMessage,
WAMessageContent, WAMetric, WAFlag, WAMessage, BaileysError, WA_MESSAGE_STATUS_TYPE, WAMessageProto, MediaConnInfo, MessageTypeProto, URL_REGEX, WAUrlInfo, WA_DEFAULT_EPHEMERAL, WAMediaUpload
} from './Constants'
@@ -25,7 +26,7 @@ export class WAConnection extends Base {
*/
async sendMessage(
id: string,
message: string | WATextMessage | WALocationMessage | WAContactMessage | WAMediaUpload,
message: string | WATextMessage | WALocationMessage | WAContactMessage | WAContactsArrayMessage | WAMediaUpload,
type: MessageType,
options: MessageOptions = {},
) {
@@ -36,7 +37,7 @@ export class WAConnection extends Base {
/** Prepares a message for sending via sendWAMessage () */
async prepareMessage(
id: string,
message: string | WATextMessage | WALocationMessage | WAContactMessage | WAMediaUpload,
message: string | WATextMessage | WALocationMessage | WAContactMessage | WAContactsArrayMessage | WAMediaUpload,
type: MessageType,
options: MessageOptions = {},
) {
@@ -65,7 +66,7 @@ export class WAConnection extends Base {
return message
}
/** Prepares the message content */
async prepareMessageContent (message: string | WATextMessage | WALocationMessage | WAContactMessage | WAMediaUpload, type: MessageType, options: MessageOptions) {
async prepareMessageContent (message: string | WATextMessage | WALocationMessage | WAContactMessage | WAContactsArrayMessage | WAMediaUpload, type: MessageType, options: MessageOptions) {
let m: WAMessageContent = {}
switch (type) {
case MessageType.text:
@@ -92,6 +93,9 @@ export class WAConnection extends Base {
case MessageType.contact:
m.contactMessage = WAMessageProto.ContactMessage.fromObject(message as any)
break
case MessageType.contactsArray:
m.contactsArrayMessage = WAMessageProto.ContactsArrayMessage.fromObject(message as any)
break
case MessageType.image:
case MessageType.sticker:
case MessageType.document:

View File

@@ -16,6 +16,7 @@ export type WANode = WA.Node
export type WAMessage = proto.WebMessageInfo
export type WAMessageContent = proto.IMessage
export type WAContactMessage = proto.ContactMessage
export type WAContactsArrayMessage = proto.ContactsArrayMessage
export type WAMessageKey = proto.IMessageKey
export type WATextMessage = proto.ExtendedTextMessage
export type WAContextInfo = proto.IContextInfo
@@ -295,6 +296,7 @@ export enum MessageType {
text = 'conversation',
extendedText = 'extendedTextMessage',
contact = 'contactMessage',
contactsArray = 'contactsArrayMessage',
location = 'locationMessage',
liveLocation = 'liveLocationMessage',