poisons
@poisons

Как правильно отправлять нотификашки в облачной версии bitrix24?

Добрый день, столкнулся с довольно странной ситуацией, у меня в упор не хотят работать нотификашки, хотя другие части API вполне себе работают, как пример у меня успешно создаются таски, работают запросы к карточке клиента и т.п.
Дано:
1. Облачная bitrix24.
2. bitrix24-rest 1.1.1
3. Доку брал тут и тут

Пример кода, который у меня работает ожидаемым образом
from bitrix24 import *
import datetime

sendString = ['Attention! Bla-bla-bla']
bx24 = Bitrix24('https://bla.bitrix24.com/rest/4/bla/profile/')

bx24.callMethod('tasks.task.add', fields={'TITLE': 'Test',
                                          'DESCRIPTION' : sendString[0],
                                          'DEADLINE' : datetime.datetime.now() + datetime.timedelta(days=7),
                                          'AUDITORS': {'1':'10'},
                                          'RESPONSIBLE_ID' : '4',
                                          'CREATED_BY': '1',
                                          'DESCRIPTION_IN_BBCODE' : 'Yes'
                                           })

На выходе создается таска, все нужные поля подпихиваются и все хорошо.
Ну и вот таки конструкции работают ожидаемым образом
bx24.callMethod('crm.contact.list',
                                     filter={'UF_CRM_1571409252888': date},
                                     select=['ID', 'NAME', 'LAST_NAME', 'EMAIL', 'PHONE']
                                     )


Но странная вещь просходит с нотификашками.
Читаем доку по первой ссылке, там предлагают делать так:
BX24.callMethod('im.notify', {to: user.id, message: 'Привет, '+user.name+'!'});

Ну окей, делаем:
bx24.callMethod('im.notify', fields={'TO': '4', 'MESSAGE': 'Bla-bla-bla'})

и ловим
in callMethod
    raise BitrixError(r)
bitrix24.exceptions.BitrixError: User ID can't be empty

Окей, идем по второй ссылке, там описывается несколько иначе и предлагается дергать im.message.add, делаем
bx24.callMethod('im.message.add', fields={'DIALOG_ID': '4', 'MESSAGE': 'Bla-bla-bla'})

И теперь уже ловим
bitrix24.exceptions.BitrixError: Message can't be empty


Что я делаю не так?
  • Вопрос задан
  • 66 просмотров
Пригласить эксперта
Ответы на вопрос 2
Ramapriya
@Ramapriya
битриксоид-интроверт
У im.notify параметры в нижнем регистре пишутся

bx24.callMethod('im.notify', fields={'to': '4', 'message': 'Bla-bla-bla'})
Ответ написан
@LAV59
буквально сегодня столкнулся с той же ситуацией. CRM api работает, но при нотификации и работе с чатом возврат ошибки "ИД не может быть пустым". Пробовал и так и так, не вышло ни как.
Ответ написан
Ваш ответ на вопрос

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

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