Check errors of GetProfilePicThumb

When a request for GetProfilePicThumb fails, WhatsApp sends an JSON object
containing a status field: `{"status":404}`. In my tests, it did send the
codes 401 and 404 which might correspond to the HTTP status codes. At
least, we don't have data to update the avatar and should stop doing so.
This commit is contained in:
Jörg Sommer 2018-12-05 10:30:07 +01:00
parent abe73684d0
commit 95c8c01450
2 changed files with 8 additions and 0 deletions

View file

@ -258,6 +258,12 @@ func (portal *Portal) UpdateAvatar(user *User, avatar *whatsappExt.ProfilePicInf
}
}
if avatar.Status != 0 {
// 401: ???
// 404: ???
return false
}
if portal.Avatar == avatar.Tag {
return false
}

View file

@ -95,6 +95,8 @@ func (ext *ExtendedConn) GetGroupMetaData(jid string) (*GroupInfo, error) {
type ProfilePicInfo struct {
URL string `json:"eurl"`
Tag string `json:"tag"`
Status int16 `json:"status"`
}
func (ppi *ProfilePicInfo) Download() (io.ReadCloser, error) {