diff options
author | Wim <wim@42.be> | 2022-03-20 02:20:54 +0100 |
---|---|---|
committer | Wim <wim@42.be> | 2022-03-20 14:57:48 +0100 |
commit | 496d5b4ec7f5f4afae6199f928675d14d18de015 (patch) | |
tree | 3a649c80a76f0ffc33e6b3a63c0e65e892169cde /vendor/github.com/Rhymen/go-whatsapp/profile.go | |
parent | 2623a412c42a81104b97ae8c81a5f66760fee4b6 (diff) | |
download | matterbridge-msglm-496d5b4ec7f5f4afae6199f928675d14d18de015.tar.gz matterbridge-msglm-496d5b4ec7f5f4afae6199f928675d14d18de015.tar.bz2 matterbridge-msglm-496d5b4ec7f5f4afae6199f928675d14d18de015.zip |
Add whatsappmulti buildflag for whatsapp with multidevice support (whatsapp)
Diffstat (limited to 'vendor/github.com/Rhymen/go-whatsapp/profile.go')
-rw-r--r-- | vendor/github.com/Rhymen/go-whatsapp/profile.go | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/vendor/github.com/Rhymen/go-whatsapp/profile.go b/vendor/github.com/Rhymen/go-whatsapp/profile.go new file mode 100644 index 00000000..5af00f6d --- /dev/null +++ b/vendor/github.com/Rhymen/go-whatsapp/profile.go @@ -0,0 +1,65 @@ +package whatsapp + +import ( + "fmt" + "strconv" + "time" + + "github.com/Rhymen/go-whatsapp/binary" +) + +// Pictures must be JPG 640x640 and 96x96, respectively +func (wac *Conn) UploadProfilePic(image, preview []byte) (<-chan string, error) { + tag := fmt.Sprintf("%d.--%d", time.Now().Unix(), wac.msgCount*19) + n := binary.Node{ + Description: "action", + Attributes: map[string]string{ + "type": "set", + "epoch": strconv.Itoa(wac.msgCount), + }, + Content: []interface{}{ + binary.Node{ + Description: "picture", + Attributes: map[string]string{ + "id": tag, + "jid": wac.Info.Wid, + "type": "set", + }, + Content: []binary.Node{ + { + Description: "image", + Attributes: nil, + Content: image, + }, + { + Description: "preview", + Attributes: nil, + Content: preview, + }, + }, + }, + }, + } + return wac.writeBinary(n, profile, 136, tag) +} + +func (wac *Conn) UpdateProfileName(name string) (<-chan string, error) { + tag := fmt.Sprintf("%d.--%d", time.Now().Unix(), wac.msgCount*19) + n := binary.Node{ + Description: "action", + Attributes: map[string]string{ + "type": "set", + "epoch": strconv.Itoa(wac.msgCount), + }, + Content: []interface{}{ + binary.Node{ + Description: "profile", + Attributes: map[string]string{ + "name": name, + }, + Content: []binary.Node{}, + }, + }, + } + return wac.writeBinary(n, profile, ignore, tag) +} |