Hello.
1. Fault codes can be retrieved via periodic records, you need to enable them in OBDII tab, set at least low priority and operand on monitoring. And in System tab (in the configurator) under Data Protocol settings Codec 8 Extended has to be enabled.
2. When requested by SMS, answer is usually returned by SMS. There is SMS command "getrecord" which initiates creation of high priority record which would then be immediately sent to the server.
You can look up SMS commands and what they do here:
https://wiki.teltonika-gps.com/view/FMB020_SMS/GPRS_Commands
3. I have already answered in the first question how to enable DTC codes an an I/O element. You are using FMB020 which is an OBD device, but it is the one that does not support OBD parameter reading. FMB002 is the one that can read OBD parameters.
There is and "obdinfo" command which is used when OBD device is connected to the vehicle, SMS containing this command is sent and answer is returned, you get PID values which can be decoded and then you can know what parameters can be read from the vehicle using this device, not all vehicles give out same number of parameters via OBD.
Information regarding PID decoding can be found here:
https://wiki.teltonika-gps.com/view/How_to_check_available_OBDII_data%3F
Hope that helps.
Best Regards