Is there a way to access Homey mDNS - homey

I know there is built in support for mDNS discovery in Homey, but it does not fit my situation with a gateway for several devices.
Is it possible to use/access the Homey mDNS "stack" or node module? I'm trying to use the mdns-js node.js module but that does not seem to work well so I thought that Homey must already have built in support for mDNS somehow and that it would be best to use that.

Related

How to access to a local domain -which is used in a mobile app- from iPhone on testing phase?

I have been working on a NativeScript project that uses an API. The API project is on my MacBook and haven't deployed to anywhere yet. It's based on Laravel and I use Laravel Valet as development environment.
I can't test the mobile app on iPhone because the app can't connect to local API URL. I know Valet has "share" command, but because the API consumes another API -which has IP restrictions-, it doesn't work for me. Sharing a local domain via Valet's share command is something like a proxy as I understand, so the consumed API doesn't work on that proxy.
I also checked articles about how to share Macbook's network with iPhone, but it only shares the same network. I can't access the local API still.
Is there any other way that can resolve my issue? Maybe a Docker based solution? I am not that good at Docker, but I can give a try if it is possible with it.
https://ngrok.com/ will happily expose your local Laravel Valet server.
Looks like there's a bit of a walk through on that here too https://mannyisles.com/using-laravel-valet-and-ngrok/ which may help?

Leshan connect to server and cloud

I have the task of implementing iot device management using Eclipse Leshan. I have difficulty understanding how Eclipse Leshan works in connecting IOT sensors with servers and cloud. Is it true if I declare that Eclipse Leshan does not require a gateway like Eclipse Kura to connect into server and cloud?
Does anyone know where the complete documentation about Eclipse Leshan is? it would be very helpful if there were examples of programs in implementing the eclipse leshan.
Thank you
Eclipse Leshan is a library for implementing applications that use the LWM2M protocol to manage devices. As such, your application can use Leshan's Java API in order to interact with devices that also support LWM2M.
LWM2M does not per se mandate a transport protocol. However, the spec is written assuming that CoAP over UDP is used for that purpose. In fact, the LW in LWM2M stands for Lightweight and as such, using CoAP as the transport protocol makes a lot of sense for managing constrained devices.
Eclipse Leshan itself does not connect to a server or cloud but instead is usually part of an application that is hosted on a server (on the cloud). However, you need to implement that application yourself because Leshan, as indicated above, is just a library. The devices then interact with your LWM2M enabled application. Because CoAP/UDP uses standard IP, this interaction can occur over public internet infrastructure if desirable in your use case, i.e. no gateway is necessarily needed. You can, however, also connect your devices to a local gateway, e.g. Kura, and then connect the gateway to your LWM2M server in the cloud instead. It really depends on your use case and the capabilities of the devices.

Choosing between gRPC with endpoints, or REST in a simple app to work like a BackEnd app deployed in GAE

I'm developing an app deployed in GAE, simple for this moment. This app is the backend of other app.
Internally, this app have a few modules (this is not important here) that they communicate with rest apis (for other reason).
And the question that I'm thinking is: I was beginning to write API (to outside) using gRPC and EndPoints like GAE docs says, when I thought that if I could have really advantages if using gRPC and not REST like internally.
I have been spend a lot of time searching that really advantages that offers gRPC about REST, but I don't find it.
Why Google recommended gRPC? Is faster than REST?, (from my point of view is most simple to write)
You know any test about speed with both technologies?
I will thanking any help.
You can use GRPC today on AppEngine's Managed VM platform as both a client and a server. If you want load balancing you need to use TCP/IP load balancing and have GRPC servers terminate TLS for you.
GRPC does not yet work on AppEngine standard but we're working on it. For more questions hit up the mailing list.

Can I use sockets on Appengine without a special lib?

I'm confused by the GAE documentations. It says App Engine supports sockets without requiring you to import any special App Engine libraries or add any special App Engine code. but it seems misleading as just above it says App Engine supports outbound sockets through the appengine/socket package.
I would like to connect to an IMAP server using the standard net package. Is that possible or I'm stuck with the GAE sockets API?
https://cloud.google.com/appengine/docs/go/sockets/
It is not possible to open an outbound socket without going through the appengine/socket api. This is because it works through RPC and an appengine.Context is needed to do that. You can still use the IMAP library you linked, though, as it provides a function to create a client with a given net.Conn. You can get a net.Conn from appengine/socket and pass it to NewClient to do your business. The reason it works on python and java is because they both use thread local memory to manage request state implicitly, whereas the go runtime does not.
Nothing stops you from connecting to an Imap server, since you will initiate an outbound connection. For java, the standard java mail packages work out of the box.
Only for paid apps though, i.e. you need to have billing enabled.

How to set up an IDE on a remote server?

Im interested in doing some development from my iPad, and one idea I had would be to code from the safari browser. Does anyone know of a way to set up eclipse on a cloud-based server, so that it can be accessed from a browser?
I believe, you will need the following parts to make it work
The cloud server must be based on one of the supported Eclipse Target Environments.
The cloud server provider must support UI based on some sort of remote desktop - e.g. VNC. Be aware that many cloud providers does not allow UI.
iPad must support the same remote desktop technology. There seem to be many VNC implementations for iPad...
I guess the difficult part is to find a cloud server to use. Though you, as an alternative, could use any PC with an VNC server where you have Internet access...