Internet connection change in Unity - unity3d

Is there an event sent by Unity that notifies about internet connection changes?
Android has a BroadcastReceiver for that as detailed in this link.
In Unity I only found examples of manual connectivity tests, but I'm looking for something similar to Android.

As far as I'm aware, it is possible. I found a thread here on Unity answers.

I know this is old, most of the suggested solutions online are not really reliable nor correct. Pinging google is not allowed (By google itself) and Unity's Application.internetReachability does not always work as it was not designed for that puprose (as stated in the docs).
The proper way is to implement a technique called Captive Portal Detection, which is what all the major OS's use for their internet status detection. If implemented correctly, it can even detect when the network is restricted (hotels or airports) as it relies on HTTP requests of known content. Therefore it is far more reliable.
It is not that hard to implement. You need to make an HTTP request to a known "check page", and check whether the right content were returned.
However, if you want a complete, ready-to-use solution, you can check the asset Eazy NetChecker which I created for this purpose. It also has events and a custom editor. It is not free, but it is super cheap!

Related

Send transcribed, spoken text from smart speakers/displays to server after Conversational Action shutdown?

If I need to explain how insanely important and useful this functionality is, please let me know. However, I suspect this is obvious to everyone except Google.
Please, please tell me there is another way to accomplish this.
I need to do all speech parsing, processing, and responses on my own. And from a smart speaker/display. Conversational Actions allowed for this. As far as I have been able to tell, there is no alternative way to accomplish this. I'm shocked and severely disappointed. You're literally crippling your smart speakers and displays. I have one in every room right now and will be selling them after the shutdown unless something changes. I sure hope you reverse course on this.
We noted your ask here and will continue to monitor for other similar requests involving the Conversational Actions in our support channels. We do collect these requests, share with the teams involved in the planning process, and try to get them in our feature development timeline.
Unfortunately there are no features readily available to replace the capability you mentioned above, but our teams are constantly working towards providing a better Google Smart Home Ecosystem. When we have any updates on these features, we will update our public documentation.

DialogFlow knowlege articles not responding in Slack

I have enabled new feature of DialogFlow Knowledge (beta) and gave FAQ page link. Everything was setup correctly and its working fine in DialogFlow console.
I have also integrated my agent with Slack, where these FAQ are not being captured at all. Everything is going to Default Fallback Intent.
Is there any other step which I am missing to enable it for integrated clients?
You can control how much Dialogflow prefers Knowledge Base answer vs. intent answers with Knowledge bases setting slider. Sliding toward the "stronger" (right) side will make it more likely to match Knowledge based answer instead of intent based responses: https://dialogflow.com/docs/knowledge-connectors#knowledge_connector_settings
Also, have you added a response in the Knowledge section? If not go to
Knowledge > Knowledge Base > Responses
and click and enter $Knowledge.Answer[1] in the response where you'd like to the Knowledge answer to appear
Note: you can also add platform specific messages here so make sure you have a response for you intended platform (e.g. Slack)

soundcloud: Is api-v2 allowed to be used and is there documentation on it?

yea, the title pretty much sums it up. Is it allowed for an app to access ressources on api-v2.soundcloud.com?
Is there any documentation for it?
Relevant since I'm currently working on a soundcloud app and I just recognized that most of the calls on the websites itself are done with api-v2. The responses from the server would be extremly helpful to build some kind of infinite streaming which is the feature I like most about soundcloud.com.
I cant speak for SoundCloud, but gryzzly (a former SoundCloud engineer) stated in a previous answer:
Letting you know, that using undocumented APIs is not going in line with the our developers’ Terms of Use.

Real time web page

I want to build simple web based app, where users, for example, could push the spacebar button, and then do something further, like answer a question, and while other users at the same time only sees that this question is not available any more for answer. When user submits answer, everyone see it.
All right, here is an example. I have seen TV shows, where four players have one button, if one or two of them know answer, they hit a button, and one lamp turns on and the first is allowed to answer, while other keeps their mouths shut. I want to build the same idea, but in the web.
But problem is that, I don't know where to start, what keywords I should search for help on google and so on. I see, that it might work on HTML5, maybe JavaScript and so on.
I have idea using Ajax, but request it every second to get latest actions made seems rubbish. Also I found one service called Pusher, but it has limited users in one time, which doesn't fit my needs.
I need just ideas. Thanks.
Before you read the rest, a disclaimer: I work for Realtime.co but I do believe I can help here so I'm not trying to "pitch a sale".
You can check out Realtime (www.realtime.co). It's basically a set of tools for developers to use real time technologies on their projects. It uses websockets but does fallback to whatever the user's browser supports (such as long polling, for example).
Behind Realtime you have a one-to-one/one-to-many/many-to-many messaging system that will transport your messages to and from your users.
There's also a plus which is the fact that the Realtime framework is actually cross-platform. This means that you can even have your web users communicate with iPhone users, Android, users, Windows Phone, desktop applications, server applications, etc..
You can learn about the JavaScript API here: http://docs.xrtml.org/getting_started/hello_message.html#javascript.
You only need to register at Realtime.co as a developer and start using the free license.
I really hope that helps.
Okey, I think I will go with node.js.
Writing all this previous post, made me think in right way :)

SMB/samba support on iOS?

I check iOS document and also google it for a while and get the impression that iOS does not support samba (although there is a samba app for jailbreak iPhone).
But then how do the app FileBrowser achieves that? Does that mean they implemented samba support by their own ?
I also find there is an open source library called tango that provides limited support for samba. So my question is that the best samba support I can get ?
I spent quite some time in implementing my own SMB client so I would like to share some experience here.
First do not use tango in your production code because once you become familiar with SMB you will realize that its implementation is problematic, e.g. it does not support unicode and in some several cases it is not correctly padding so you can't access the folder. And I also heard people said they can't connect window 7 with it.
Second, to summarize my experience I find jcifs guys had said the best: "anyone who wants to implement the CIFS needs to know one very important thing - the "official" CIFS documentation is not accurate
and does not reflect reality. There is NO specification. Do not believe anything you read in the IETF draft or the SNIA document (same document different formatting). Use it only as a hint. The definitive reference is whatever you see on the wire.
WireShark Rules!
... look at JCIFS for design inspiration such as how it puts the request and response into a map by MID and encodes and decodes frames.
Then implement the following commands:
SMB_COM_NEGOTIATE
SMB_COM_SESSION_SETUP_ANDX
SMB_COM_TREE_CONNECT_ANDX
SMB_COM_NT_CREATE_ANDX
SMB_COM_READ_ANDX
SMB_COM_WRITE_ANDX
SMB_COM_CLOSE
all responses for above
"
The only thing I can add is that , you also need to implement TRANS2_FIND_FIRST2 request/response to query the files inside a folder and if you want to find out how many shared folders the server exposes you need to implement NetShareEnum Request/Response.
I used libsmbclient from samba package (http://www.samba.org) for SMB operations on iOS.
You can look on my project https://github.com/kolyvan/kxsmb (objective-c wrapper on libsmbclient). For now it supports a limited set of SMB operations. It mostly was designed for browsing local net and retrieving files from SMB shares.
iOS doesn't give you access to a filesystem that you may be used to. You can read and write files inside your own App's private area, but that's all. You could potentially implement another file system in your application, but you won't be able to use normal file operations.
I'd bet FileBrowser implements the protocol inside their app and implements a file system like layer on top of that for access. I'd guess you could either try to port an existing samba library or roll your own.
iOS does not have any APIs to work with SMB. However, SMB is currently documented by Microsoft and implementing it is not impossible (although not easy too). I've created a freeware project which contains most of what you need to handle SMB. See
https://sourceforge.net/projects/smb4ios/