Vk messages не работает

Как правильно написать код, чтобы бот ЧИТАЛ и ОТВЕЧАЛ на сообщения В БЕСЕДЕ?

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

Это из-за VkLongPoll .

В документации указано, что это модуль для пользователей.
Так как Вы авторизуетесь с ключом сообщества, Вам требуется VkBotLongPoll .

Обратите внимание на то, что он находится в другом модуле, а именно в vk_api.bot_longpoll

Пример:

from vk_api import VkApi from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType from vk_api.utils import get_random_id vk_session = VkApi(token='[access_token]’) longpoll = VkBotLongPoll(vk_session, ‘[group_id]’) vk = vk_session.get_api() def main(): for event in longpoll.listen(): if event.type == VkBotEventType.MESSAGE_NEW and event.from_chat: vk.messages.send( random_id=get_random_id(), peer_id=event.obj[‘peer_id’], message=’Test message’, ) if __name__ == ‘__main__’: main()

Источник: husl.ru

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

не работают сообщения в беседе #259

Не получается получитьотправить сообщение в беседу. В лс работает без проблем, а вот в беседах нет.
vk.messages.send( #Отправляем сообщение
user_id=event.user_id,
message=’Ваш текст’,
random_id=random.randint(-2147483648, +2147483648)
)
работает, а вот беседы нет:
send_message(vk_session, ‘chat_id’, event.chat_id, message=’Держите котиков!’, attachment=None)
def send_message(vk_session, id_type, id, message=None, attachment=None, keyboard=None):
vk_session.method(‘messages.send’,)

The text was updated successfully, but these errors were encountered:

Giikuzawa commented Jun 13, 2019 •
edited by python273

import vk_api import random from vk_api.longpoll import VkLongPoll, VkEventType def write_msg(user_id, message): vk.method(‘messages.send’, ‘user_id’: user_id, ‘message’: message, ‘random_id’:10>) # API-ключ созданный ранее token = «токен» vk_session = vk_api.

VkApi(token=token) longpoll = VkLongPoll(vk_session) # Авторизуемся как сообщество vk = vk_session.get_api() # Основной цикл for event in longpoll.listen(): if event.type == VkEventType.MESSAGE_NEW and event.

to_me and event.text: #Слушаем longpoll, если пришло сообщение то: if event.text == ‘1’ or event.text == ‘Второй вариант фразы’: #Если написали заданную фразу if event.from_user: #Если написали в ЛС vk.

Еще по теме:  Как напугать мошенника в ВК

messages.send( #Отправляем сообщение user_id=event.user_id, message=’Ваш текст’, random_id=random.randint(-2147483648, +2147483648) ) elif event.from_chat: #Если написали в Беседе vk.messages.

send( #Отправляем собщение chat_id=event.chat_id, message=’Ваш текст’ )

В лс отвечает без проблем

Giikuzawa commented Jun 13, 2019

ищу сейчас какие-то варианты решения этого — ничего толкового не нашел. Может быть ошибка в правах сообщества, но не думаю. У токена есть все права, в беседе бот админ

Contributor
ALEXREDX commented Jun 14, 2019

Не работает ВК Не отправляется сообщение Неизвестная ошибка


elif event.from_chat: #Если написали в Беседе vk.messages.send( #Отправляем собщение chat_id=event.chat_id, message=’Ваш текст’ )

Источник: github.com

VK ограничит доступ к методу секции Messages в API

Сегодня в группе ВК ВКонтакте API сообщили что с февраля этого года, будет ограниченный доступ к методу «Messages» тем самым большинство приложений и ботов перестанут работать, доступ к методу можно будет получить только через модерацию.

С февраля 2019 мы ограничиваем доступ к методам секции Messages с ключом доступа пользователя.

Для разработки мессенджера на базе ВКонтакте необходимо будет получить тестовый доступ для администраторов приложения. Расширенный доступ для всех пользователей Вашего приложения можно будет получить после прохождения модерации.

Данное ограничение вступает в силу 15 февраля, ровно через месяц. Цитата из Roadmap:

Ожидаемая дата изменений: 15 февраля 2019 года.

Одна из первостепенных задач для нашей команды — сохранить в безопасности личную информацию каждого пользователя. В прошлом году мы подробно рассказали о принципах защиты данных и о том, какую информацию могут использовать сервисы ВКонтакте: https://vk.com/data_protection

Наша команда не прекращает работу по усилению защиты персональной информации многомиллионной аудитории ВКонтакте. При этом, конечно, одни из самых чувствительных данных — это личные сообщения. Мы хотим не только дать людям больше уверенности в том, что их информация находится под защитой, но и предотвратить любые намеренные или случайные злоупотребления со стороны тех владельцев сторонних приложений, которые не могут обеспечить приемлемый уровень безопасности и не работают по стандартам нашей команды.

Еще по теме:  Как удалить граффити в ВК

Стремясь предоставить наиболее высокий уровень защиты приватности и хранения личной переписки, с 15 февраля мы ограничиваем сторонним разработчикам доступ к API сообщений пользователей.

Это изменение не затронет бот-платформу в сообществах, пользователей веб-версии vk.com и официальных мобильных приложений ВКонтакте.

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

С 15 февраля 2019 года методы секции messages по умолчанию будут доступны для вызова только с ключом доступа сообщества.

Ожидается, что с 15 февраля, большое количество мобильных приложений, в том числе VK Coffee, VK MOD MP3 и прочие, перестанут работать, если они не пройдут модерацию.

Вместе с ними и пропадут боты на профилях, шанс пройти модерацию равен нулю, так-как скорее всего поддержка ВКонтакте предложит перейти на сообщества. Больше всего пострадают приложения, а так же различные программы.

  • Сергей Котов
  • 15.01.2019
  • 6 029
  • 0
  • 7

Источник: kotoff.net

Рейтинг
( Пока оценок нет )
Загрузка ...