Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MessagesCategory.DeleteAsync #1607

Open
1 of 3 tasks
pvarets00101 opened this issue Jan 25, 2024 · 1 comment
Open
1 of 3 tasks

MessagesCategory.DeleteAsync #1607

pvarets00101 opened this issue Jan 25, 2024 · 1 comment
Milestone

Comments

@pvarets00101
Copy link

pvarets00101 commented Jan 25, 2024

Перед созданием нового бага, пожалуйста попробуйте использовать последнюю версию из nuget.
Если проблема продолжает воспроизводиться, то для создания нового бага отразите краткую суть проблемы в заголовке и заполните следующие пункты:

  1. Target для .NET используемый в проекте: (Официально поддерживаем , .net 4.5, NETStandard2.0) (поставьте 'x' в квадратных скобках)
  • .net 4.5
  • NETStandard2.0
  • другое. Указать строкой ниже.
    - [x] .NET 7
  1. Класс и метод в котором возникла проблема:
    Класс: MessagesCategory ,
    Метод: public Task<IDictionary<ulong, bool>> DeleteAsync(
    IEnumerable messageIds,
    bool? spam = null,
    ulong? groupId = null,
    bool? deleteForAll = null)

  2. Пример кода для воспроизведения проблемы, пожалуйста указавыйте конкретные значения параметров запроса:

!!!на 1 скрине id = 56, но в ответе приходит ["41" : 1], наверное в этом проблема
image
image

  Параметры Delete()Х
IEnumerable<ulong> messageIds = [56],
bool? spam = null,
ulong? groupId = 223856532
bool? deleteForAll = true
  1. JSON ответа. Для удобства сбора этих данных подключите логи (https://github.com/vknet/vk/wiki/Logging):

ответ такой
image

Проверил на последней версии нугета, не работает. На данный момент версия 1.62.0.

  1. Если в примере не указаны конкретные значения параметров запроса укажите их здесь:

  2. PS Если у вас появился вопрос по работе функциональности, то обратитесь за помощью в Telegram Chat, или напишите мне, не нужно плодить задачи типа как работает ф-я X, в противном случае буду закрывать без объяснения причины. После разбора проблемы будем дополнять документацию более полными примерами

@inyutin-maxim inyutin-maxim modified the milestones: v1.78.0, v1.79.0 Jan 27, 2024
@CaCTuCaTu4ECKuu
Copy link
Member

Проблему я определил
ID который возвращает ВК при выполнении это внутренний ID сообщения в пределах диалога (cmids вроде который), в котором было удаление, а передаете вы ID сообщения в пределах своего аккаунта, если я правильно понимаю, поэтому при поиске в ответе его не находит и результат, соответственно, false

В моем понимании глобальные ID сообщений в пределах аккаунта это неправильно и видимо ВК решили так же и требуют использовать peerId + cmid что вполне логичку

Я короче измению методы, полагаю надо полностью убирать старые и менять их на новые, но единственный вариант который я вижу для удаление по глобальному ID это возвращать результат в виде словаря <long, bool> с cmids и чтобы проверить что сообщения были удалены нужно отдельно иметь их id в пределах удаляемого диалога и если ты его не знаешь то нужно получить его, ну или просто доверять что сообщение было удалено

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants