summaryrefslogtreecommitdiffstats
path: root/bridge/whatsapp/whatsapp.go
diff options
context:
space:
mode:
Diffstat (limited to 'bridge/whatsapp/whatsapp.go')
-rw-r--r--bridge/whatsapp/whatsapp.go12
1 files changed, 12 insertions, 0 deletions
diff --git a/bridge/whatsapp/whatsapp.go b/bridge/whatsapp/whatsapp.go
index 85df6a8d..ae634d6a 100644
--- a/bridge/whatsapp/whatsapp.go
+++ b/bridge/whatsapp/whatsapp.go
@@ -113,6 +113,12 @@ func (b *Bwhatsapp) Connect() error {
return fmt.Errorf("error on update of contacts: %v", err)
}
+ // see https://github.com/Rhymen/go-whatsapp/issues/137#issuecomment-480316013
+ for len(b.conn.Store.Contacts) == 0 {
+ b.conn.Contacts() // nolint:errcheck
+ <-time.After(1 * time.Second)
+ }
+
// map all the users
for id, contact := range b.conn.Store.Contacts {
if !isGroupJid(id) && id != "status@broadcast" {
@@ -192,6 +198,12 @@ func isGroupJid(identifier string) bool {
func (b *Bwhatsapp) JoinChannel(channel config.ChannelInfo) error {
byJid := isGroupJid(channel.Name)
+ // see https://github.com/Rhymen/go-whatsapp/issues/137#issuecomment-480316013
+ for len(b.conn.Store.Contacts) == 0 {
+ b.conn.Contacts() // nolint:errcheck
+ <-time.After(1 * time.Second)
+ }
+
// verify if we are member of the given group
if byJid {
// channel.Name specifies static group jID, not the name