Tim,
As explained by Gale you can send "messages" to phone number by using the below code and SMTP FW Class.
This is free but you need to know the recipient's carrier.
Alternatively you can send through Skype with only knowing the recipient's phone number, but Skype charges 11.2 cents for each message sent.
Regards,
George
FUNCTION SendSMSByPC()
LOCAL cMessage, cPhone, cSubject, cCarrier
cMessage := "Hello world!"
cPhone := "9999999999" // 10 Digits phone number for USA phones
cSubject := "Sending SMS from my PC"
cCarrier := "@txt.att.net" // For AT&T
cRecipient := cMyPhone + cCarrier
SendSMSEmail(cRecipient, cMessage, cSubject)
RETURN (.T.)
FUNCTION SendEmailSMS(cRecipient, cMessage, cSubject)
LOCAL oOutMail, cIP
oWnd:SetMsg( "Sending SMS..." )
WSAStartup()
syswait(.25)
oOutMail := TSmtp():New( cIP := GetHostByName( "smtp.comcast.net" ), 587, TRUE, "UserName", "Password" )
oOutMail:bConnecting = { || oWnd:SetMsg( "Connecting to smtp.comcast.net..." ) }
syswait(.25)
oOutMail:bConnected = { || oWnd:SetMsg( "Connected" ) }
syswait(.25)
oOutMail:bDone = { || oWnd:SetMsg( "Message sent successfully" ) }
oOutMail:SendMail( "YourEmail@comcast.net",; // From
{ cRecipient },; // To
cMessage,; // Msg Text
cSubject,; // Subject
{ "" } ) // attached files
syswait(.25)
RETURN NIL