Using pre-recorded audio instead of text-to-speech along with Watson Conversation bot - text-to-speech

I built a conversation bot with text-to-speech, but no matter how well I tune it, the voice sounds robotic.
I think it would be simpler to have the conversation bot pick a pre-recorded audio and stream it back to the user.
Does anyone see issues with this?
Is there already an example of this so I don't reinvent the wheel?

This functionality needs to be implemented on the client side of the application. Watson Conversation Service can return a text answer and for example an index of the audio record you want to play.
This index then needs to be picked up by the client application communicating with Watson Conversation Service (e.g. a web page in node.js) and the audio record can be played to the user.
As for some examples...in Conversation Service docs there are links to github projects that integrate Watson Conversation Service with node.js web applications - these can be extended by adding the audio records and functionality that will play those records to the user.

Related

How To Play Specified Google Play Music Resources (Albums) via Sonos API

I have ~300 vinyl records which I want to attach RFID tags to so I can place one on an RFID reader and trigger playback of the album on my home Sonos (using Google Play Music).
Is there a way to load a specified resource from a service into a group? I was able to follow through the Postman tutorial, and was maybe thinking that I could set up each album as a Sonos Favorite and load that, but I'm looking around and see that there is a (very low) limit on how many favorites you can have, so this doesn't seem like a workable solution anymore. I've been digging around the APIs and can't quite find what I'm looking for in the Control API.
Ideally I'd have each RFID tag contain something along the lines of artist name, album name, and some Google-Play-Music-specific album ID, which I can use to load the album into a fixed Sonos Group queue. If there's a better approach, however, I'm also all ears.
The Sonos API doesn't offer a way to load and play content from another service (other than commands in the favorites namespace) unless that service provides an interface to get the Sonos IDs without authentication. An alternative is to host your own files and build a SMAPI server or use a mediaUrl to your audio file in the track.
See the SMAPI sample server and Tracks in the cloud queue in Play audio (cloud queue) for details.

Voice call connection routing React-Native

I am trying to build an application which works this way: I as a user want to start a call with another user. The way I want the connection be made is by random. So it will connect to one of the many clients out there by random. Also when other clients try to make a call, it should connect to another random client and so on. I want those phone calls be made via application(such as WhatsApp) not as a phone call.
Now, the question is; is Twilio a good approach for this purpose?
If yes can you tell me which of their feature would fit my app the best?
Thanks for any suggestions!
Twilio developer evangelist here.
I can answer that Twilio would be a good approach for you to do this within your own application. I'd recommend using Twilio Video to build this as it allows cross platform communication via audio or video (in your case, you may not need the video, but this will give you the best audio quality).
As an example, my colleague Dominik built a video roulette application. It is the case that the interface was built in JavaScript for the web, but the idea would be the same for a native app. The code for the server side part of the application should give some insight into how to connect random pairings.
It's also possible to integrate Twilio Video with CallKit and Connection Services so that you can make outbound calls to other devices that ring like a real incoming call.

Sonos Cloud API Queues

I want to develop a Sonos Controller that is capable of:
Playing a playlist or album now, or next (after currently playing song) or by appending it to the end of the queue.
However I can't see a way to control how the playlist is added to a queue. The documentation at https://developer.sonos.com/reference/control-api/playlists/loadplaylist/ doesn't suggest that it is possible,but there is a reference to the queue in the description for the shuffle playmode "Play the tracks in the queue in a randomly shuffled order."
There is documentation for "Cloud Queues" but this seems to be targeted at Music Services.
Is it possible to create a Cloud Queue that just holds references to tracks in other services?
Not that I would really want to implement that, I would rather just access the queue that is on the players.
The Sonos Control API does not currently allow for direct access to the player queue. Third party integrations can get content on to the queue via the playlists and favorites namespaces, but they can't touch the queue directly.
As you noted, the Cloud Queue API is intended for Content Partners. It is not directly possible to reference third party content in personal CQs, there are authentication issues involved.
This squares with my user experience of the Sonos queue being very basic and unintelligent. There have been a number of times I've been forced to clear the queue and start over, rather than being able to reorder items, etc. FWIW, the closest thing I've seen in their documentation to what it sounds like you're looking for, is under a different API. Sonos Music API > reorderContainer as documented here: https://developer.sonos.com/reference/sonos-music-api/reordercontainer/
I don't see any similar functionality documented in the Sonos Cloud Queue API. With regard to random order, I believe that's on playback, not anything that modifies the queue.

API Whatsapp to send messages from an external application

I want to implement Whatsapp
to send information from an external application. The idea is to use this
external application to send information throughout Whatsapp.
If you can help me about the terms and
conditions and if this query is possible to develop.
There is a way through which you can send WhatsApp message from your self created application. Use this link Chat API.
But it only provides 3 days trail period and after that you have to purchase it.
The process in that is, you have to register with your google account, then scan the QR code provided(which changes after every 45 seconds). and you are set to go, they will provide you the API for : PHP, Node.JS, Jquery, CURL.
One thing more you always have to keep your phone connected with the internet everytime.
Also I found a drawback in that, i.e. they also provide API to read messages, but it is too slow, as in my condition I can see my messages of yesterday but not of today.

MS Bot Framework recording audio in group conversation in Skype for Business

i have few questions that are very related to each other.
The general task in to record audio in conference in Skype for Business, ideally having audios separated for each of participants.
So the question consists of:
1) Does ms bot framework support Skype for Business, if not out of the box, maybe there some workarounds? I've also found some 3rd party libs: https://www.mindlinksoft.com/blog/mindlink-api-bot-framework and https://github.com/tahazayed/BotConnectorSkypeForBusiness but its not yet clear if they can do audio recording.
2)Does Skype for business \ Ms Bot framework supports processing of audio in group calls? From docs it seems like it only support audio in 1:1 call and also seems like bots process messages when only bot mentioned as a target, it doesn process all conversation in group chat.
Thank you
Skype for Business is not a supported channel for MS Bot Framework.