EweLink API (Interface Signature Rules) - api

I am a consumer of the EweLink sonoff and products.
I am working on a project to relate an arduino with a relay of this brand.
The original software allows me to interface through an API and a developer account that can be registered here.
Once registered, I also started reading the documentation starting with the basics and then creating more structured requests.
I got stuck at the point where it asks me for an "Interface Signature". On the documentation there is a section on how to create this Signature but after days of trying I still haven't managed to create a Signature.
Anyone have any ideas of alternative methods?
I have tried many ways through the website shown in the documentation picture but always to no avail does anyone.

Related

Tokbox OpenTok client to call another client

I want to build an application where it is possible for one client to call another client using webRTC. I've started to look into webRTC providers and I've found Toxbox among others.
Is it possible, using TokBox OpenTok, for a client to actually make a call to another client (similar as a regular phone call)? From their docs and specifications it seems that it is only possible to create a "session" (a room in which participants meet and chat).
Am I missing something, or are they only providing sessions that people join/leave?
Twilio seem to offer what I need here,
but I find it strange that I cannot find something similar at Tokbox.
Thanks,
Muff
Yes it is possible.
You need to make the distinction between the type of API the platform exposes to what you can do with it.
While the OpenTok API is built around the concept of a room/session - you can easily use that concept to create a call. There are many openTok developers who do just that.
Twilio indeed offers the same capability - as are many others (a partial list can be found in this report - https://bloggeek.me/webrtc-paas-report/ - while the report is a paid one, the list is available on that page

iOS10: App rejected due to method called "removeEvents"

Is there any list of methods which are not allowed when they are compiled in the application? Or a syntax that is not allowed?
With this message from Connect recently our app has been rejected due to the removeEvents method name:
Your app uses or references the following non-public APIs:
removeEvents:
The use of non-public APIs is not permitted on the App Store because it can lead to a poor user experience should these APIs change.
End. No more details regarding the finding.
The method is used in the app on a core data object (subclassed from NSManagedObject). The object (and the method) was generated by mogenerator app for quite a long time. I did not find any reference in the updated review guidelines for iOS10 that is relevant to this.
The issue is that in the rejection statement from Apple there is no private api, or a conventional object description, or any principle that I could follow to avoid this next time when the app is being approved. It is then making from the review an unpredictable process.
I could not find any trace of this method using both nm or otool. None of them has found a reference to this.
EDIT: In the iTunes Connect is an option to submit an appeal to the App Review Board. I did not noticed this before. The question is when they will review the review.
No more details? In that case you didn't read carefully. There will be a link to the rejection that explains exactly how to look for this if it happens in a third party library for example. Been there, done that.
So you can file a complaint and they will laugh at you, because you didn't bother reading the app rejection.
To save you the bother, search through your own source code, then use the strings and otool tools to find the library that caused the problem, update the library and check if the problem is gone.
And if you use removeEvents yourself according to your comments, then fix your code.
A member from the review board has contacted us and confirmed that the only way to get the information about a collision with a private api is to let the app pass through the review process. Apple offered to complete a new review in two days and so they did.
I have renamed the method and the app was not rejected.

How to get third-party API up-to-date?

So, I stepped once at this problem. I had offered a website that used the SoundCloud API. Everything worked properly. Content was extracted from the JSON and placed in the layout of the website. However, I received an email one day from the owner of the website, which indicated that the website did not work properly. I then came out to investigate and came to the conclusion that the "problem" was not on my side, but at SoundCloud's side. I studied on the API page of SoundCloud and came to the conclusion that the API had received a major update, making the link with SC and the site no longer worked.
Lately I'm trying many new APIs to, including those from Instagram and Dribbble. I was therefore wondering if it is at all possible to ensure that such problems can be reduced in the future or it might be appropriate API pages of this third-party APIs to monitor?
There's no "right" answer. After many years of using and maintaining many APIs here are some of the conclusions I've come to:
The best providers let you work with a specific version of their API whose interface and expected behavior never changes. They might release bug fixes and new endpoints, but you can be confident that as long as the API is supported it will not break your system.
A good provider will provide an end-of-life date for each version of their API. It's up to you to keep track of when you need to update.
Paid services will often be supported longer than free services. Plus the contract / SLA will guarantee it remains available for a specific amount of time.
The most popular APIs often have mailing lists and/or blogs. For those that offer it, sign up to be notified of updates. For those that don't you'll have to monitor their blogs or news posts. And I suggest not using any service that would drop support for an API version without warning.

Connecting internal APIs

I am looking for a software that can within defined timeframe request one endpoint in the system and provide its output to another one. I am dealing with internal endpoints, that is why 3rd party SaaS are not an option.
Things that I need it to do is
It should be configurable on the run (preferably through HTTP API)
It should request one endpoint and feed the output to another one
It should let to configure time frame
It should accept various authentication methods (for both sides)
Preferably support by community and opensource
Preferably free to use
I made quite extensive research on the internet withing last two days but was able to find only SaaS that provides that. I also asked my collegues at work but they could not suggest me anything useful. I am sure there is already something exists, it just me who could not find it.
After searching for me and looking for various DevOps tools, I discovered that such class of software is refereed as job Schedulers or Workload Automation. Most of the solutions are rather complex commercial system that provides not only such functionality. However there are some open source solutions available as well.
List of available software (it is not complete):
https://en.wikipedia.org/wiki/List_of_job_scheduler_software

Can someone explain me what is an API.?

I've googles about it, yet couldn't understand it properly.. Not sure if it's a library or intra-server communicator..
Can someone explain me in a high-level /low-level what is meant by an API.??
http://en.wikipedia.org/wiki/Application_programming_interface
Read it from here , will hopefully clear most of your doubts.
An API stands for Application Programming Interface, which means using and existing program or code and accessing it with your code.
===
Example, Search Engine:
Search engine 1: offers search and api (if you want this can be google)
Search engine 2: uses googles api to get results (this is your one)
To get results you basically search the other search engine and get their results to yours
====
An API can be used in many ways, to access others data or code, ect
An in-depth explination can be found here: http://en.wikipedia.org/wiki/Application_programming_interface
An application-programming interface (API) is a set of programming instructions and standards for accessing a Web-based software application or Web tool. A software company releases its API to the public so that other software developers can design products that are powered by its service.
For example, Amazon.com released its API so that Web site developers could more easily access Amazon's product information. Using the Amazon API, a third party Web site can post direct links to Amazon products with updated prices and an option to "buy now."
An API is a software-to-software interface, not a user interface. With APIs, applications talk to each other without any user knowledge or intervention. When you buy movie tickets online and enter your credit card information, the movie ticket Web site uses an API to send your credit card information to a remote application that verifies whether your information is correct. Once payment is confirmed, the remote application sends a response back to the movie ticket Web site saying it's OK to issue the tickets.
As a user, you only see one interface -- the movie ticket Web site -- but behind the scenes, many applications are working together using APIs. This type of integration is called seamless, since the user never notices when software functions are handed from one application to another.
This article shows an example
http://www.codeproject.com/Tips/127316/Integrate-FB-javascript-API-to-your-asp-net-app-to