The only thing you need to make did work is a block of numbers from your service providor and know what digits they are sending you. Lets say if you are using 4 digit ext in the range of 3200-3400, you could ask them if they have a block available with those same digits for the last 4.
If they do not and they offer you something else, ask them if they will do the translations and send the digits you need. Some providors will balk at doing this, but if you can get them to it is easier for you.