Well, I might start by renaming "Id" and "type" - those aren't very descriptive. How about "ContactInfoID" and "ContactInfoType". The final field could then be reasonably titled "ContactInformation".
You're right that you shouldn't use a silly name like "emailOrPhoneOr...", because that prohibits you from storing additional types of contact information in the future.
Also consider that a tinyint is likely more than large enough for your "type" field, provided that your rdbms supports tinyints.