2

Well, in the beginning I have to describe that kind of case I want implement:

I implementing a skype bot that will be create and send conversation link to users as basic card with button. I need to create invitation link into a conversation for users. The bot does not have to be a participant in the conversation.

What I write for it:

BasicCard basicCard = new BasicCard()
        .withTitle("Title")
        .withButtons(Collections.singletonList(new CardAction()
                .withType(ActionTypes.OPEN_URL)
                .withTitle("Button text")
                .withValue("skype:28:long-id-separated-hyphen-bot;29:long-id-separated-hyphen-user1;29:long-id-separated-hyphen-user2?chat&topic=Conv%20Name")
        ));

Attachment attachment = new Attachment()
        .withContentType("application/vnd.microsoft.card.hero")
        .withContent(basicCard);

Activity activity = new Activity()
        .withType(ActivityTypes.MESSAGE)
        .withFrom(botAccount)
        .withRecipient(account1)
        .withAttachments(Collections.singletonList(attachment));

connector.get().conversations().sendToConversation("29:long-id-separated-hyphen-user1", activity);

And send it to the user1, but link doesn`t work.

I use https://learn.microsoft.com/en-us/skype-sdk/skypeuris/skypeuriapireference and in this documentation, was written what I need just create link like this skype:28:long-id-separated-hyphen-bot;29:long-id-separated-hyphen-user1;29:long-id-separated-hyphen-user2?chat&topic=Conv%20Name, but it doesn`t work..

May be I don`t understand what the link should look like for creating and adding users to the conversation.

If I can`t create link for invitation users into conversation, how can I create group conversation and invite some peoples to that conversation? (All users has conversation with bot and I know theirs ids(29:long-id-separated-hyphen-user) and live ids(8:user-id))

Can anyone explain?

  • To be clear, are you talking about Skype or Skype for Business? – Kyle Delaney Aug 22 '19 at 18:59
  • I'm talking about Skype. – Nikita Kovaleov Aug 24 '19 at 07:42
  • Does it work when you construct the link manually and paste it into a browser bar? – Kyle Delaney Aug 26 '19 at 21:08
  • There are a few problems with what you're trying to do. I don't think Skype allows group conversations with bots to be automatically created. Can you explain more about what kind of conversations you're trying to create and why you're trying to create them? Can you just link to your bot's https://join.skype.com/bot/ page instead? – Kyle Delaney Aug 26 '19 at 21:24
  • I try create link without bot https://join.skype.com/skype:29:long-id-separated-hyphen-user1;29:long-id-separated-hyphen-user2;29:long-id-separated-hyphen-user3?chat&topic=Conv%20Name% Also I try to create the link like https://join.skype.com/28:long-id-separated-hyphen-bot And always I see same message "There was a problem opening this link, please try again later" – Nikita Kovaleov Aug 27 '19 at 05:40
  • Your link needs to include /bot/ in its path. The correct link can be found when you click on "Skype" in the channels blade of your bot resource in Azure. What happens when you try that? – Kyle Delaney Aug 29 '19 at 02:26
  • @KyleDelaney, I create link like https://join.skype.com/bot/long-id-separated-hyphen-user1;long-id-separated-hyphen-user2;long-id-separated-hyphen-user3?chat&topic=Conv%20Name, https://join.skype.com/29:long-id-separated-hyphen-user1;29:long-id-separated-hyphen-user2;29:long-id-separated-hyphen-user3?chat&topic=Conv%20Name, https://join.skype.com/long-id-separated-hyphen-user1;long-id-separated-hyphen-user2;long-id-separated-hyphen-user3?chat&topic=Conv%20Name, – Nikita Kovaleov Aug 29 '19 at 05:42
  • https://join.skype.com/bot/29:long-id-separated-hyphen-user1;29:long-id-separated-hyphen-user2;29:long-id-separated-hyphen-user3?chat&topic=Conv%20Name and I get same message that my link is incorrect. I need to create invitation link into a conversation for users as I write above. I forgot to write that the bot does not have to be a participant in the conversation. And also I update the question. – Nikita Kovaleov Aug 29 '19 at 05:42
  • You still haven't answered this question: "Can you explain more about what kind of conversations you're trying to create and why you're trying to create them?" Why are you trying to have a bot invite a user to join a conversation with other users? What is the purpose of this bot? – Kyle Delaney Aug 29 '19 at 15:45
  • 1
    I want to create birthday bot that will be create a conversation(or send link to conversation) to user. I have a group of users who have registered with this bot using specific commands. Further, the data of the registered user is saved on a certain day (user’s birthday), the bot creates a dialog or sends a link to registered users for a dialog. I did most of the processing, storage, and so on, but the part remained with sending invitations to users in the created group. – Nikita Kovaleov Aug 29 '19 at 15:52

1 Answers1

0

After some more testing, I've found that Skype URI's do not support multi chats. Even if they did, you're trying to use ID's from the Bot Framework, which would be incompatible. Skype hides a user's real ID from the bot, so there's no way to exchange the ID's you have for usable ID's. Furthermore, Skype bots are becoming deprecated. I feel like what you're trying to do just isn't possible.

You can create a link to join a group conversation manually using the UI, but that seems to be the only way. Skype has been heavily limiting its API so many things cannot be automated.

This documentation seems to be outdated. However, you can see in the caveats that the problem always existed on Android:

Android recognizes the initial participant only; multi chats are not supported.

The Android behavior now appears to be true for all platforms. You can test this yourself by entering Skype URI's into your browser bar. skype:asdf?chat and skype:asdf;qwer?chat will both open a conversation only with asdf. Multi chats from a URI are apparently not supported on any platform.

Kyle Delaney
  • 11,616
  • 6
  • 39
  • 66
  • So you want to say, that I can`t create invitation link to group conversation using skype bot? But why then in the official documentation how to do this? https://learn.microsoft.com/en-us/skype-sdk/skypeuris/skypeuriapireference Why have an instruction that doesn't work? – Nikita Kovaleov Aug 29 '19 at 17:19
  • I just need to create invitation link for conversation, that I create automatically(conversation), and send it to users. – Nikita Kovaleov Aug 29 '19 at 17:24
  • I edited the answer. How are you creating a conversation? Are you just using the Bot Framework API? Have you actually seen a conversation that you've created that way or are you just assuming it's getting created? – Kyle Delaney Aug 29 '19 at 22:17
  • I thought that by creating the necessary link, the dialogue will be created automatically by Skype. I just need to somehow create a dialogue in which I can invite users. – Nikita Kovaleov Aug 30 '19 at 03:16
  • why no one will correct the outdated documentation, because it misleads the developers? – Nikita Kovaleov Aug 30 '19 at 03:18
  • Maybe I can create link, for adding users to current dialog with me and bot and send it. After I will remove them? Can I do something like this? – Nikita Kovaleov Aug 30 '19 at 03:28
  • You can absolutely do it through the Skype UI, but you cannot do it programmatically – Kyle Delaney Sep 05 '19 at 20:15
  • Dwindling Skype support apparently also includes Skype platform documentation – Kyle Delaney Sep 05 '19 at 20:16