How to record audio & video of user in skype real time media calling? - botframework

I want to ask questions to the user and record his response, like a IVR bot but I want to record both audio and video of the user. Is it possible to do that with real time media calling?
I had gone through the samples, but I did not understand on how to specify when to record the audio/video.

IVR bots are audio-only, they do not support video. Video is supported with a real-time media bot.
A real-time media bot can record the audio and video streams (and, ideally, notify the Skype caller that it may be recording the call). We do not provide a full sample showing this scenario. There is an answer for similar question on the GitHub site:
In a 1:1 Skype video call with your real-time media bot, the bot has
access to the Skype caller's audio and video. The Huebot sample shows
a bot receiving the audio and video of the Skype caller. To create a
recording, the bot could save the contents of audio and video media
buffers to disk and use a tool like ffmpeg to process them into an MP4
file, for example. But there's no specific recording sample. Also note
that the bot cannot control what resolution it receives of the Skype
caller's video, and will likely get a low resolution such as 240p.
Hope this help!!

Related

join webRTC with listen audio user only . not need Access granted to audio or video

i use this code
https://github.com/anoek/webrtc-group-chat-example/blob/master/client.html
But I want when the visitor enters, he can hear only others
if i stop and video getUserMedia This is not allowed
navigator.mediaDevices.getUserMedia({"audio":USE_AUDIO, "video":USE_VIDEO})
What is the solution

Create transcription from 'UnmixedMeetingAudio' buffer as soon as those are received - bot with application hosted media

I have created a bot using bot framework (.net) with application hosted media using the sample provided here. Bot attends any incoming peer to peer or group calls in Microsoft Teams. While in the meeting I am able to receive audio buffers as participants speak up in AudioMediaReceived event handler inside CallHandler.cs class provided in the samples. Now I want to generate transcript out of it. I want some guidance about:
Can this be done at the end of the meeting, I am confused as it's stated on a number of places (1)(2) that
"You may not use this SDK to record or otherwise persist media content
from calls or meetings that your bot accesses"
.
In which scenario this fits? Is it possible to generate wave(.wav) file out of the byte array (UnmixedAudioBuffer data) received and use that for transcription at the end of the meeting?
Since we receive audio frames at a very quick pace (50 frames per second), If I am to generate the transcript asynchronously and real time, how should I do it. Is it about converting buffer data to .wav or in memory stream and using some cloud speech service/API?
There's a speech service provided by Microsoft as well as speech to text resource provided by Google cloud.
your guidance is highly appreciated.
It's a bad idea to try to get a bot to transcribe meetings for you for the reasons you've already seen. However, you're in luck because Microsoft already transcribes meetings automatically.
You can record a meeting in Teams by following the instructions here: https://support.microsoft.com/en-us/office/record-a-meeting-in-teams-34dfbe7f-b07d-4a27-b4c6-de62f1348c24
If you save the recorded meeting to Microsoft Stream then you can even edit the transcript. If you save the meeting to OneDrive and SharePoint then this page implies the feature should be available in the future: https://support.microsoft.com/en-us/office/edit-the-transcript-of-a-meeting-recording-in-teams-2f461386-e39a-4444-b9e2-5787da1da11b

MS Teams Bot to manipulate audio stream from user

I wanted to build a small Bot for MS Teams who can remove noise from incoming users audio Stream. The edited audio stream should then be passed on to the call participants.
I already searched the Bot documentation on Microsoft but didn't find a definite yes or no.
Can someone please elaborate?
Thank you so much in advance!
You can get the call information using calling bot. Calling bot is used to call and join the meetings, You will receive an event when bot joins the call there you can perform the required actions. Here is the document for calling Bot and Example

Play an audio sound to a specific speaker group on my Alexa when pressing a button

I am trying to get Alexa to play an audio sound to a specific speaker group on a button press. I have a doorbell button which is hooked up to my Raspberry Pi. I can detect when the button is physically pressed on the Pi so from here I want to some how issue a command to Alexa to play an mp3 file to a pre-configured speaker group (everywhere). Is this possible?
The Pi has node-red and MQTT installed so REST Requests are no problem!
The simple answer is no. The interaction with Alexa is user initiative most of the time. That means, user starts a conversation and then Alexa speaks or plays an audio. The only times that Alexa wakes up on its own is when there is a reminder or a notification (Proactive Events API). The Proactive Events API allows you to send notifications to users of your skill. When your skill successfully sends a notification to a user’s Alexa device, the user hears a chime sound that indicates a notification has arrived. The user can then say, “Alexa, read my notifications” and hear the details.
So, for your use case, it is not possible to wake Alexa to play the mp3 file as result of pressing a button.

Trigger event on completion of video in videocard - MS Bot Framework

Greetings of the day!
I have a situation for chat bot. I have a video which i am showing to user through a video card. Is there a way to add a piece of script in botchat.js so that I can trigger an event like posting a data to a api when the video will be completly played.
Thanks in advance.

Resources