You have two instances of SoftwareSerial active. Only one can be receiving at any given point in time. It's the last which's listen() method got called, in you case mySerial (in the begin() method call). I have no clue why think you need two instances of a class you should never, never use.
I'm almost sure you never tried with the hardware serial as it probably would have worked with that.