*invalid conversion from 'int' to 'const __FlashStringHelper*' [-fpermissive]
*conversion from 'int' to 'String' is ambiguous
*no suitable constructor exists to convert from "int" to "String"
It is not a good idea to use the String (capital S) class on an Arduino as it can cause memory corruption in the small memory on an Arduino. This can happen after the program has been running perfectly for some time. Just use cstrings - char arrays terminated with '\0' (NULL).
And you should not try to concatenate cstrings as that will also cause memory fragmentation. You should create a global (or static local) cstring that is large enough for your longest message and then copy the parts into it - probably using strcpy()