Skip to content

Commit

Permalink
fixes #133 - whatsapp broadcast messages to use sender as chat id
Browse files Browse the repository at this point in the history
  • Loading branch information
d99kris committed Oct 7, 2023
1 parent eaa357c commit 9532232
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 10 deletions.
2 changes: 1 addition & 1 deletion lib/common/src/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@

#pragma once

#define NCHAT_VERSION "3.79"
#define NCHAT_VERSION "3.80"
24 changes: 16 additions & 8 deletions lib/wmchat/go/gowm.go
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,14 @@ func JidToStr(jid types.JID) string {
return jid.User + "@" + jid.Server
}

func GetChatId(chatJid types.JID, senderJid types.JID) string {
if chatJid.Server != "broadcast" {
return JidToStr(chatJid)
} else {
return JidToStr(senderJid)
}
}

func ParseWebMessageInfo(selfJid types.JID, chatJid types.JID, webMsg *waProto.WebMessageInfo) *types.MessageInfo {
info := types.MessageInfo{
MessageSource: types.MessageSource{
Expand Down Expand Up @@ -825,7 +833,7 @@ func (handler *WmEventHandler) HandleTextMessage(messageInfo types.MessageInfo,
LOG_TRACE(fmt.Sprintf("TextMessage"))

connId := handler.connId
chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
text := ""

Expand Down Expand Up @@ -892,7 +900,7 @@ func (handler *WmEventHandler) HandleImageMessage(messageInfo types.MessageInfo,
fileId := DownloadableMessageToFileId(client, img, filePath)
fileStatus := FileStatusNotDownloaded

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -943,7 +951,7 @@ func (handler *WmEventHandler) HandleVideoMessage(messageInfo types.MessageInfo,
fileId := DownloadableMessageToFileId(client, vid, filePath)
fileStatus := FileStatusNotDownloaded

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -994,7 +1002,7 @@ func (handler *WmEventHandler) HandleAudioMessage(messageInfo types.MessageInfo,
fileId := DownloadableMessageToFileId(client, aud, filePath)
fileStatus := FileStatusNotDownloaded

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -1038,7 +1046,7 @@ func (handler *WmEventHandler) HandleDocumentMessage(messageInfo types.MessageIn
fileId := DownloadableMessageToFileId(client, doc, filePath)
fileStatus := FileStatusNotDownloaded

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -1089,7 +1097,7 @@ func (handler *WmEventHandler) HandleStickerMessage(messageInfo types.MessageInf
fileId := DownloadableMessageToFileId(client, sticker, filePath)
fileStatus := FileStatusNotDownloaded

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -1178,7 +1186,7 @@ func (handler *WmEventHandler) HandleTemplateMessage(messageInfo types.MessageIn
quotedId = ci.GetStanzaId()
}

chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
fromMe := messageInfo.IsFromMe
senderId := JidToStr(messageInfo.Sender)
Expand Down Expand Up @@ -1373,7 +1381,7 @@ func (handler *WmEventHandler) HandleUnsupportedMessage(messageInfo types.Messag
}

connId := handler.connId
chatId := JidToStr(messageInfo.Chat)
chatId := GetChatId(messageInfo.Chat, messageInfo.Sender)
msgId := messageInfo.ID
text := "[" + msgType + "]"

Expand Down
2 changes: 1 addition & 1 deletion src/nchat.1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.\" DO NOT MODIFY THIS FILE! It was generated by help2man.
.TH NCHAT "1" "September 2023" "nchat v3.79" "User Commands"
.TH NCHAT "1" "October 2023" "nchat v3.80" "User Commands"
.SH NAME
nchat \- ncurses chat
.SH SYNOPSIS
Expand Down

0 comments on commit 9532232

Please sign in to comment.