Проблема с публикацией бота - PullRequest
0 голосов

Когда вы пытаетесь отправить бота на проверку для публикации в консоли браузера, вы получаете следующую ошибку:

error

в чем может быть причина?

Текст ошибки, который я вижу только в консоли, публичная часть останавливается здесь навсегда enter image description here

а также «имя издателя» и «язык» в виде сброса их значений.

P.S. Хм, ошибки при публикации в консоли браузера, похоже, больше не исправлены, спасибо всем за помощь!

1 Ответ

0 голосов
/ 19 июня 2019

Я не знаком с битриксом, поэтому не могу вам помочь, но, скорее всего, проблема в том, как Skype пытается «протестировать» вашего бота. У них достаточно строгий процесс утверждения ботов, и один шаг - бот должен ответить на событие «PING». Единственная проблема с этим заключается в том, что PING был событием v3, устарел и вообще был удален из v4. Вам нужно будет написать собственную логику для ответа, если Skype отправляет событие ping. Например, вот как я написал несколько месяцев назад, чтобы справиться с этим:

public async Task OnTurnAsync(ITurnContext turnContext, CancellationToken cancellationToken)
    {
        if (turnContext == null) { BOT CODE FOR ERRORS }
        if (turnContext.Activity.Type == ActivityTypes.Message) { BOT CODE FOR TALKING }  
        else if (turnContext.Activity.Type == ActivityTypes.ConversationUpdate) { BOT CODE FOR WELCOME IN NON-SKYPE }
        else if (turnContext.Activity.Type == ActivityTypes.ContactRelationUpdate) { BOT CODE FOR WELCOME IN SKYPE}

        //HERE'S WHERE IT WENT GOOGLY.
        else if (turnContext.Activity.Type == ActivityTypes.Event)
        {
            if (turnContext.Activity.ChannelId == "facebook")
            {
                //handle ALL OTHER channel specific events here
                await turnContext.SendActivityAsync($"{turnContext.Activity.Type} event detected", cancellationToken: cancellationToken);
            }
            else
            {
                //handle skype with empty, because skype freaks out if you detect it's channel on the ping
            }
        }
        else
        {
            await turnContext.SendActivityAsync($"{turnContext.Activity.Type} event detected", cancellationToken: cancellationToken);
        }

Здесь - это проблема Github, из-за которой вышеприведенный код.

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