This phrase is essentially 'Hi, I am I'. The 'sono' by itself means 'I am', and the additional 'io' is the second 'I'. But in English we would say 'Hi, it is I'.
As for using 'me' instead of 'I' in 'Hi, it is me', it's more colloquial but NOT as grammatically correct. Grammar nazis would say 'Hi, it is I' is the only correct way, but English is a very colloquialised (is that even a word!?) language, meaning we break rules like this all the time and say things like 'Hi, it is me'.
Yes. You are right. "sono" is "I am." If you think of the verb where "sono" comes from you find "essere" which means "to be." (io sono, / tu sei, / lui, lei, Lei è / noi siamo / voi siete / loro sono) The more literal translation of "sono io" is "it be me" or "it is me." I hope this is more understandable to you:)