ipatov_dn
@ipatov_dn

Как решить проблему, бот для ВК после получения данных от сервера шлет их 12 раз и только в одну группу, а не по не скольким?

есть 3 масива в которых номера групп вк и соответственно 3 ключевых слова находя которые бот рассылает текст и вложения в предложить новость сообществу, введя в беседе 3 ключевых слова получается что бот по 12 раз присылает это сообщение только в группы по первому ключевому слову, а остальные игнорирует, как сделать чтобы остальные тоже получили это сообщение и только один раз?
бот на flask, функциональная часть:

if auto in data['object']['text']:
            attachments = data['object']['attachments']
            if len(attachments) != 0:
                for i in attachments:
                    p_type = i['type']
                    p_owner_id = i[p_type]['owner_id']
                    p_media_id = i[p_type]['id']
        
                    attachments_list.append(p_type + str(p_owner_id) + '_' + str(p_media_id))
                a_list = ','.join(attachments_list)
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'], attachments=a_list)
                    time.sleep(10)
                    return 'ok'
                return 'ok'
            else:
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'])
                    time.sleep(10)
                return 'ok'
            return 'ok'        
        
        elif animal in data['object']['text']:
            attachments = data['object']['attachments']
            if len(attachments) != 0:
                for i in attachments:
                    p_type = i['type']
                    p_owner_id = i[p_type]['owner_id']
                    p_media_id = i[p_type]['id']
        
                    attachments_list.append(p_type + str(p_owner_id) + '_' + str(p_media_id))
                a_list = ','.join(attachments_list)
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'], attachments=a_list)
                    time.sleep(10)
                    return 'ok'
                return 'ok'
            else:
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'])
                    time.sleep(10)
                return 'ok'
            return 'ok'        
        
        elif learn in data['object']['text']:
            attachments = data['object']['attachments']
            if len(attachments) != 0:
                for i in attachments:
                    p_type = i['type']
                    p_owner_id = i[p_type]['owner_id']
                    p_media_id = i[p_type]['id']
        
                    attachments_list.append(p_type + str(p_owner_id) + '_' + str(p_media_id))
                a_list = ','.join(attachments_list)
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'], attachments=a_list)
                    time.sleep(10)
                    return 'ok'
                return 'ok'
            else:
                for n in auto_group:
                    vk_api_p.wall.post(owner_id=n, message=data['object']['text'])
                    time.sleep(10)
                return 'ok'
            return 'ok'        
        return 'ok'
    return 'ok'
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
ipatov_dn
@ipatov_dn Автор вопроса
Впрос решил убрав все ретурны кроме ключевого последнего
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы