Sending commands to google assistant using script instead of mic - raspberry-pi3

I have configured Google Assistant SDK in Raspberry Pi 3 and demo application is working fine. Is there any way to send “OK Google, Example Command” to Google Assistant SDK using Python script? Or it will only take input from Mic?
I am planning to write tiny mobile application which will send commands to my Raspberry Pi google assistant application.

UPDATE: even if it is an old question, here is the latest update.
It is now possible using the v1alpha2 version. The gRPC message AssistConfig is defined as an union where you can choose between an audio out config or a text query.
If you are using the python library, see the AssistConfig. Here is an example of config using a text query (adapted from the pushtotalk.py sample, line 183):
config = embedded_assistant_pb2.AssistConfig(
# instead of audio_in_config
# note: no need to use 'OK google'
text_query = "who are you ?",
audio_out_config=embedded_assistant_pb2.AudioOutConfig(
encoding='LINEAR16',
sample_rate_hertz=self.conversation_stream.sample_rate,
volume_percentage=self.conversation_stream.volume_percentage,
),
dialog_state_in=dialog_state_in,
device_config=embedded_assistant_pb2.DeviceConfig(
device_id=self.device_id,
device_model_id=self.device_model_id,
)
)
If you are using golang, here is the link to the godoc.

The current release of the Assistant SDK (Alpha v1) only supports sending and receiving audio. This is a frequent request, however, and we'll see what they provide in future updates.

Related

azure media service for xamarin?

I have created a console application with azure media service.
in the app i am using the plugin
windowsazure.mediaservices
the way i am doing is
static IAsset CreateAssetAndUploadSingleFile(string filePath, string assetName, AssetCreationOptions options)
{
IAsset asset = _context.Assets.Create(assetName, options);
var assetFile = asset.AssetFiles.Create(Path.GetFileName(filePath));
assetFile.Upload(filePath);
return asset;
}
so i just want to know whether this plugin will work on xamarin(i am not a xamarin devoloper) as its a portable project.
if its not do we have any alternative plugin?
my basic purpose is upload and encode.
That package is for our current .NET SDK
https://www.nuget.org/packages/windowsazure.mediaservices
It does not support .NET Core. See the dependencies.
It's not compiled for Xamarin though, so I don't believe that it works in Xamarin, but i'm not a Xamarin expert at all.
What is your scenario exactly? Why would you want to call the Media Services account directly from Xamarin anyways? You would only need to do that if you are creating a management application for the account Administrator. Otherwise, dont put Media Services directly into any client code! You should hide it in your middle-tier, and only pass Streaming URLs or SAS locators to the client application to upload content to.
For the upload from phone scenario, middle tier should create an Asset, get a writable SAS Locator for the Asset, hand that to the client side. Client can then use Azure Storage APIs to upload the content to that SAS URL directly (it ends up in an Azure storage container then.)
I believe that Xamarin has client side support for the Azure Storage APIs available.
As john answered, you don't do this stuff on a client, you will need to use SaS tokens and what not. I could explain everything here, but there are some nice guides and examples online.
Build 2018 video explaining how it works (including Azure Functions): https://www.youtube.com/watch?v=dEZkQNNpSIQ&feature=youtu.be&rel=0
The github example of this video: https://github.com/Azure-Samples/xamarin-azure-businessreview
To understand it better, I recommend this guide, it is old but it does cover the entire process, just make sure to combine new documentation with this old one.
Old docu: https://learn.microsoft.com/en-us/previous-versions/msp-n-p/dn735912(v%3dpandp.10)
Official current documentation: https://learn.microsoft.com/en-us/azure/media-services/previous/media-services-dotnet-upload-files#upload-multiple-files-with-media-services-net-sdk
Probably useful for new readers.

Is there a way to translate a Fusion 360 model to Inventor without creating an App?

From Translate a Source File into OBJ Format:
Before You Begin
Register an app
Successfully acquire an OAuth token with the data:write and data:read scopes.
Upload a source file to OSS, as described in the Create an App-Managed Bucket and Upload a File tutorial, and note the source URN.
I assume that the above steps are to be followed to translate a Fusion 360 model to an Inventor model.
I find it very inconvenient to create an App for the sole purpose of translating a Fusion 360 model to Inventor. I would like to avoid creating such an App.
Is there a way to translate/export a Fusion 360 model to Inventor without creating an App or without using the interactive web interface? If there is, can you please answer with the steps and/or point to a place where I can find that information?
Unfortunately, converting a Fusion 360 model to Inventor file format is only possible interactively on the A360 website at the moment.
Fusion 360 does have an API (see ExportManager object) but it only exposes those file formats which the desktop app can convert to directly, and are available through File >> Export:
Converting from Fusion 360 to Inventor file format might be possible through the Forge API's later on, but still, you'd have to register an App on the Forge developer site in order to use it.
There is a confusion here - the Autodesk Forge API is not meant to translate from Fusion360 to Inventor today (as August 22nd, 2016). We may add this possibility later, but Fusion360 can import from/export to Inventor native. Checkout this post for more details, it contains a lot of details on how to import or export as well as the format supported. Hope that helps,

Is there any way to get a non-iOS tablet's geolocation using FileMaker?

FileMaker Go has Location and LocationValues functions available for getting geolocation data. I have a client who is using FileMaker Pro on Microsoft Surface tablets, and would like to find some way to get this same data, basically latitude and longitude, into FileMaker.
I've looked for plugins without success, but perhaps someone else here knows of one that will do the job. Other solutions I've thought of but not yet found specifics for include using Java via the ScriptMaster plugin or using a website via the Insert from URL script step.
HTML5 has built in support for geolocation, so you could get this with a web viewer and return the result to FileMaker via an FMP url.
The geolocation function is documented here:
http://www.w3schools.com/html/html5_geolocation.asp

Access parse current user from Apple Watch

I am making an application for the Apple Watch.
I successfully linked my watch extension to parse. However, I can't access parse data stored on the phone.(In my case PFUser.currentuser() )
What would be the best way to get my current user?
Parse SDK 1.7.2 is out right now and I feel this is exactly what you are looking for.
It brings full support for sharing data with App Extensions and Apple Watch Apps.
Read more in this blog post http://blog.parse.com/announcements/introducing-local-data-sharing-for-apple-watch-and-app-extensions/
Or in the docs on how to set it up: https://parse.com/docs/ios_guide#extensions/iOS

Help me build this tool in windows envoirnment

I made a desktop music application in adobe air.
I want to update the status of some IM clients running EG: Yahoo messenger,Gtalk,AIM,MSN etc.
with the current playing song.
I am not desktop developer.This is first time i am making something for desktop.
SO is there any way in any Programming language that i can make something which will change the Data (Status message) of a running IM client.
Please Just guide me through this problem .
Edit: I dont want to ask for username/password of users IMs accounts , so via API is not a solution in this case .
It will be like Person X running mine music application and also logged to various third party IM clients (YIM,Gtalk etc).
SO if he is playing a song in the music application , then mine app will update presence status message on the IM clients to " Listening to bla bla song ".
So it is like high-jacking/Hacking the data of the running third party IM client.
Have a look at libpurple, it might have the functionality you require.
There is also telepathy, but I think it is related to the former somehow (one uses the other or they do the same thing).
EDIT: for the recent edit: it looks to me like you want something like MSN Messenger displaying the currently playing track in Windows Media Player. This requires a plugin for the messaging client, no way around that.
Perhaps an easier way to get this done would be to develop a plugin for one of the numerous multi-platform IM clients such as GAIM or Trillian. This would let you target stuff across the board without undue effort . . .
I think your only option is to write a plugin for each chat client you want to target, which could take some time.
So let me suggest an alternative: Add last.fm audioscrobbler support to your application. You would simply send the Now Playing info to last.fm via the API (http://www.last.fm/api/submissions), and it will appear on the user's profile page. Most music players already support this method because it's a pretty popular service, and a lot of people link to their last.fm profiles on their blog/facebook/etc.

Resources