Получить разрешение на отправку сообщений ботом от имени сообщества ВК

Пишу Бота для ВК Сообщества на Python.

У меня есть файлы пользователей, в которых хранится их информация для Бота.

Мне нужно, чтобы этим пользователям отправлялась рассылка в 00:00.

Я получил имена их файлов, получил таким образом их id, занёс в список, но ВК пишет, что:

Нельзя отправить сообщение без права/разрешения

Можете помочь?

UPD:

Прочитав документацию, я использовал метод: showAllowMessagesFromCommunityBox для получения разрешения, но после указания group_id в методе, мне выдало:

int object has no attribute 'copy'

                            group_id = 1234567890

                            #Код

                            if msg_lower == 'вкл рассылку' or msg_lower == 'включить рассылку' or msg_lower ==  'рассылка вкл' or msg_lower == 'вкл рассылка':
                                answered = True

                                way = 'Data/Users/'+str(id)+'.dat'

                                time.sleep(0.5)
                                if newsletter_summerDay == 'Включена':
                                    sender(id, 'Рассылка и так включена!', '')
                                if newsletter_summerDay == 'Выключена':
                                    sender(id, 'Для включения рассылки нажмите "OK" в появившемся окне', '')
                                    vk_session.method("showAllowMessagesFromCommunityBox", group_id)

                                    if event.onAllowMessagesFromCommunityCancel:
                                        time.sleep(0.5)
                                        sender(id, 'Вы отменили включение рассылки', '')
                                    elif event.onAllowMessagesFromCommunity:
                                        time.sleep(0.5)
                                        sender(id, 'Включаю рассылку...', '')
                                        path = pathlib.Path(way); path.write_text(path.read_text().replace('Рассылка (Какой день лета): Выключена', 'Рассылка (Какой день лета): Включена'))
                                        time.sleep(0.5)
                                        sender(id, 'Рассылка включена!', '')

Сообщение Для включения рассылки нажмите "OK" в появившемся окне отправляется, но после вк метода ничего не работает.


Ответы (1 шт):

Автор решения: Violet

Чтобы Вы могли отправлять пользователю сообщения от имени сообщества, пользователь должен разрешить их получение.

Если пользователь написал сообщение сообществу первым, это приравнивается к согласию на получение ответных сообщений (без ограничений по времени, если пользователь не запретил сообщения вручную).

Чтобы запросить у пользователя разрешение на отправку сообщений, используйте:

В Callback API и Bots Longpoll API события message_allow и message_deny помогут отслеживать факт разрешения и запрета сообщений от сообщества.

Обратите внимание, получить список всех пользователей, разрешивших сообщения сообществу, через API нельзя, необходимо хранить и синхронизировать этот список на своей стороне.

Источник

→ Ссылка