Add skype bot to a group - botframework

I have created a Skype bot using the Microsoft Bot Framework and published it with Azure bot channel registration. I can chat with the bot and it works fine.
But I'm not able to add this bot to any group conversation.
I've made sure that Enable adding to a group option is selected for this bot in the Skype channel config section.
EDIT:
A day passed and now I can add bot to groups and see its avatar from Skype PC client. But I have the same issue when working from Mac / iPad client.
Per Skype tech support, the Bots support functionality will be discontinued.
But according to Azure channels documentation:
As of October 31, 2019 the Skype channel no longer accepts new Bot publishing requests. This means that you can continue to develop bots using the Skype channel, but your bot will be limited to 100 users. You will not be able to publish your bot to a larger audience. Current Skype bots will continue to run uninterrupted
I'm ok with my bot being limited to 100 users, I just want it to work and behave correctly on all platforms.
EDIT 2:
Now bot works fine on all the platforms I have. Not sure if this was a caching issue on Skype side or if recent app updates fixed that.

You might be interested in this answer: Add bot to existing Skype group chat
If you use the Add bots button in the group profile you will only be
able to look up published bots:
However, if you use the Add to Group button in the upper right corner
(not available in the mobile client), you can find your bots that are
still in preview:
As you can see, this currently only works in the desktop client. If you are getting undesired behavior in other clients, the only thing anyone can do on Stack Overflow is recommend workarounds or tell you to report the bug. Since Skype bots are mostly deprecated, I do not expect this bug to be fixed but you can try to report it anyway. My recommended workaround is to stop using deprecated channels if you would like a better experience. Microsoft Teams is great for corporate communications. If you want personal communication then you may have to use a third-party channel like Slack or Telegram.

Related

Registration of new bots for skype

I need to create a Skype bot, but registration of new bots was terminated.
In this regard, I have several questions:
Will an alternative technology for automatically sending messages to classic skype (No skype for business) be provided?
will registration of new bots be renewed, if so how soon?
is it possible to register a bot as an exception? Since it is extremely important for the further development of our software product.
As per the documentation
As of October 31, 2019 the Skype channel no longer accepts new Bot publishing requests. This means that you can continue to develop bots using the Skype channel, but your bot will be limited to 100 users. You will not be able to publish your bot to a larger audience. Current Skype bots will continue to run uninterrupted. Learn more
You are still able to develop Skype bot but they will be limited to 100 users.
I think they are more focusing on Microsoft Teams instead.

Interact with slack bot without a public accessible server

For some security reasons that I can't have a public accessible server to receive data from slack.
So, this is what I'm planning to do:
Inbound message from slack: using RTM API
Outbound message to slack: using RTM API or Web API
Questions:
Any better alternatives?
Any restrictions? (AFAIK, buttons and drop downs can't work)
If Web API reach rate limit, can I use incoming webhook as a backup plan?
RTM only approach
Yes, that would work. With only the RTM API you are limited to:
receiving and responding to messages
Other RTM events.
You can't use any interactive functionality like:
Interactive components (buttons, menus, datepickers)
Dialogs
Rate limit on message posting
Using the webhook as "backup" to circumvent the rate limit is not an option, since the rate limit of posting max 1 message per second applies to all form of message posting.
From the documentation:
In general, apps may post no more than one message per second per
channel, whether a message is posted via chat.postMessage, an incoming
webhook, or one of the many other ways to send messages in to Slack.
Alternatives
You did not give any details about the reasons why your app can't expose an endpoint to the public Internet. But you might want to consider using a VPN tunnel like ngrok.
Yes! Socket Mode
There is a new alternative from slack, Socket Mode, which doesn't require a publicly accessible server.
Note: this is only for private apps.
With Socket Mode you have an API token and your server uses it to communicate with Slack's servers and create a two way socket connection. This means your Slack Bot's code can run on a machine behind a firewall and not require any inbound ports to be opened.
Slack message delivery requires an acknowledgement once you get the message, or else they may retry to deliver it.
Limitations
Socket Mode has two main limitations:
Apps using Socket Mode are not currently allowed in the public Slack App Directory.
Socket Mode is only available for apps using new, granular permissions. If you created your app on or after December of 2019, good news: your app already uses the new permissions. Otherwise, you may have to migrate your classic Slack app to use granular permissions before turning on Socket Mode.

Skype for business channel will be working after 6/30/2019?

I want to do a chatbot for skype for business, but the docs:
https://learn.microsoft.com/en-us/skype-sdk/skype-for-business-bot-framework/docs/overview
says: "This channel will not be supported after 6/30/2019"
Does this means that my chatbot will stop working in the future or that It will be still working but it will not have support for issues?
Thanks
Skype for Business bots will continue to work, they will just be not be supported. Additionally, you will not be able to create any new SfB connections/channels to your bots. Finally, any bots connected to SfB will stop working after October 31 2019.
Please see here for more info:
https://learn.microsoft.com/en-us/azure/bot-service/bot-service-channel-connect-skypeforbusiness?view=azure-bot-service-4.0

C# Bot Framework Registration

I am trying to determine if all .NET Framework bots need to be registered on https://dev.botframework.com? Do all convesations actually travel through dev.botframework.com? My company would have a bear with this.
You can use the Bot Framework Emulator and develop a bot using node or .net without registering. However, if you want to connect to a channel (Facebook Messenger, Skype, Telegram, Direct Line, etc) then you will need to register the bot on Azure. Azure hosts the channel connectors that translate messages from native channel format to the Activity Schema used by the Bot Framework.
That said, there are some community efforts towards enabling bot communication without registering: https://www.npmjs.com/package/offline-directline There are many limitations though.

Direct Line API - Bot Framework

"You can enable communication between your bot and your own client application by using the Direct Line API."
The way I see, Bot (created using botframework) itself is an endpoint. Why can't we use Bot's API directly to communicate with the bot?
Why do we need Direct Line?
The Bot Framework provides tools and services to help you build, deploy, and publish bots, including the BotBuilder SDK for .NET and Node.js, the Bot Developer Portal, and the Bot Connector.
The Direct Line protocol is provided so you can connect your bot to a custom chat interface, aka WebChat, or to a custom web or mobile app.
You don't need to use the Direct Line API if you only want to communicate with your bot via the supported channels such as Skype, Bing, Slack, MS Teams, Telegram, Twilio SMS, and more.
While the bot is a type of API application, it does not exist in isolation, and requires the Bot Framework channel connector service in order to relay your bot's messages to the various connected channels such as Skype or Slack. If you sent messages directly to your Bot's API without having it connected to the rest of the ecosystem, the bot wouldn't know where to direct the respective messages.
Bot Framework Architectural Overview
For more information on Bot Framework architecture, see: How the Bot Framework works.

Resources