How to send Strings from GCS or Mavproxy to Pixhawk?

I want to add a custom MAVlink message which contains a string, from GCS or Mavproxy to drone and vice-versa. I have looked into documentation of both mavproxy, mavlink, and ardupilot but for no use. A detailed tutorial would be helpful but any kind of suggestions would be helpful.

Thank you,