RingTheRedPhone

Hi

I am trying to use the "Notify My Android" push notifications, the RingTheRedPhone example gives a long list of errors

Any help on this will greatly appreciated

Arduino: 1.6.8 (Linux), Board: "Arduino/Genuino Uno"

In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:27:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp: In member function '__file* HTTPClient::getURI(char*, http_client_parameter*, http_client_parameter*)':
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:78:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
sendUriAndHeaders(result, this->hostName, PSTR("GET"), uri, parameters,
^
In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:29:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.h:191:3: error: initializing argument 3 of 'char HTTPClient::sendUriAndHeaders(__file*, char*, char*, char*, http_client_parameter*, http_client_parameter*)' [-fpermissive]
sendUriAndHeaders(FILE* stream, char* hostName, char* requestType, char* uri,
^
In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:27:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp: In member function '__file* HTTPClient::postURI(char*, http_client_parameter*, char*, http_client_parameter*)':
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:107:45: error: initializer fails to determine size of '__c'
sendUriAndHeaders(result, this->hostName, PSTR('POST'), uri, parameters,
^
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:107:45: error: array must be initialized with a brace-enclosed initializer
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:107:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
sendUriAndHeaders(result, this->hostName, PSTR('POST'), uri, parameters,
^
In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:29:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.h:191:3: error: initializing argument 3 of 'char HTTPClient::sendUriAndHeaders(__file*, char*, char*, char*, http_client_parameter*, http_client_parameter*)' [-fpermissive]
sendUriAndHeaders(FILE* stream, char* hostName, char* requestType, char* uri,
^
In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:27:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp: In member function '__file* HTTPClient::putURI(char*, http_client_parameter*, char*, http_client_parameter*)':
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:134:45: error: invalid conversion from 'const char*' to 'char*' [-fpermissive]
sendUriAndHeaders(result, this->hostName, PSTR("PUT"), uri, parameters,
^
In file included from /home/connie/Arduino/libraries/HTTPClient/HTTPClient.cpp:29:0:
/home/connie/Arduino/libraries/HTTPClient/HTTPClient.h:191:3: error: initializing argument 3 of 'char HTTPClient::sendUriAndHeaders(__file*, char*, char*, char*, http_client_parameter*, http_client_parameter*)' [-fpermissive]
sendUriAndHeaders(FILE* stream, char* hostName, char* requestType, char* uri,
^
exit status 1
Error compiling for board Arduino/Genuino Uno.

You need to post your code.

What version of the Arduino IDE are you using?

Was the program written for a different version?

...R

Looks like the HTTPClient library was last updated four years ago to support Arduino 1.0. I suspect it is not compatible with 1.6.x as it is. It looks like sendUriAndHeaders() is called with a 'const char *' being passed to a 'char *' parameter. The 'const' keyword means "you have to promise not to change these characters" and the 'char *' parameter doesn't make that promise so the compiler throws and error. Either the string should be writable or the parameter should be 'const'.