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 Автор вопроса
Впрос решил убрав все ретурны кроме ключевого последнего
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
29 мар. 2024, в 17:04
5000 руб./за проект
29 мар. 2024, в 17:03
3000 руб./за проект
29 мар. 2024, в 16:58
3000 руб./за проект