Re: SMS (text messaging)

2017-07-07 Thread Kurt @ VR-FX
Yes - understood & agreed.

-K-

Sent from my iPhone

> On Jul 7, 2017, at 12:43 AM, mbsoftwaresoluti...@mbsoftwaresolutions.com 
> wrote:
> 
>> On 2017-07-06 17:30, Kurt at VRFX wrote:
>> Not that this may be much help. But, if I am not mistaken - our late
>> friend Sytze had done Texting Messaging SW within his apps. Although -
>> will admit - makes me a little sad to bring up his name. I always
>> loved his interactions on this forum - and I know he sorely missed by
>> many.
>> -K-
> 
> 
> Unless he's posted it somewhere publicly, it's of no use to the rest of us.
> 
> Yeah, he was a good Foxer.
> 
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/62f7fe83-9ac1-4a94-b596-e80a92597...@optonline.net
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: SMS (text messaging)

2017-07-07 Thread Frank Cazabon

 here's my sendsmsvianexmo.prg

LPARAMETERS tcPhoneNumber, tcMessage

NexmoKey= ALLTRIM(oAppInfo.SMSProviderKey)
NexmoSecret = ALLTRIM(oAppInfo.SMSProviderSecret)
NexmoNumber = ALLTRIM(oAppInfo.SMSProviderNumber)

m.lcNexmoUrl = TEXTMERGE(oAppinfo.SMSProviderURL)

TrySendSMS(m.tcPhoneNumber, m.tcMessage, m.lcNexmoUrl)

Procedure TrySendSMS(tcPhone,tcMessage, tcNexmoUrl)

tcMessage = Strtran(m.tcMessage, '%0A', '%0D%0A')
lcUrl = Chrtran(;
Textmerge("<< m.tcNexmoUrl >>|to=<< m.tcPhone >>|text=<< 
m.tcMessage >>"), '|', Chr(38))

Local loXmlHttp As "Microsoft.XMLHTTP"
loXmlHttp = Newobject( "Microsoft.XMLHTTP" )
loXmlHttp.Open( "POST" , m.lcUrl, .F. )
loXmlHttp.Send( )

XMLTOCURSOR(loXmlHttp.responsetext, "SMSResult", 512)
*!*BROWSE NORMAL
 && 200 success code
*!*? loXmlHttp.responsetext
RETURN loXmlHttp.Status = 200
Endproc


This is my SendSMSViaTwilio.prg

LPARAMETERS tcPhoneNumber, tcMessage

m.lcURL = TEXTMERGE(oAppinfo.SMSProviderURL)

m.lcTo = m.tcPhoneNumber
m.lcFrom = oAppinfo.SMSProviderNumber
m.AccountSID = oAppInfo.SMSProviderKey
m.AuthToken = oAppInfo.SMSProviderSecret

m.lcString = [From=] + m.lcFrom ;
+ [=] + m.lcTo;
+ [="] + m.tcMessage + ["]

loHTTP = CREATEOBJECT("WinHttp.WinHttpRequest.5.1")
loHTTP.Open("POST", m.lcUrl , .F.)
loHTTP.SetCredentials(AccountSID, AuthToken, 0)
loHTTP.SetRequestHeader("content-type", "application/x-www-form-urlencoded")
loHTTP.Send(m.lcString)

XMLTOCURSOR(loHttp.responsetext, "SMSResult", 0)

IF FILE("debug.txt")
STRTOFILE(loHttp.responsetext, "Twilio Log.xml", 0)
ENDIF

* not sure how I check for success!

RETURN .T.



SET LIBRARY TO vfpconnection.fll ADDITIVE

*!* ?HttpSimplePost("https://api.twilio.com/2010-04-01/Accounts/; + 
AccountSID + "/Messages/" + AuthToken + ".json", m.lcjson, "", "MyTrace()")


*!*RETURN

*!*SetConnectTimeout(oAppInfo.ConnectTimeOut) && Default is 10 seconds
*!*SetResponseTimeout(oAppInfo.ResponseTimeOut) && Default is 10 seconds
SetConnectTimeout(30) && Default is 10 seconds
SetResponseTimeout(30) && Default is 10 seconds

*!* 
https://api.twilio.com/2010-04-01/Accounts/ACb832550f3d5e416b54a3ff1c0c7d08b1/Messages.json 
\

*!*-d "Body=Jenny%20please%3F%21%20I%20love%20you%20<3" \
*!*-d "To=%2B15558675309" \
*!*-d "From=%2B14158141829" \
*!*-d "MediaUrl=http://www.example.com/hearts.png; \
*!*-u 'ACb832550f3d5e416b54a3ff1c0c7d08b1:{AuthToken}'

m.lcURL = "https://api.twilio.com/2010-04-01/Accounts/; + AccountSID + 
"/Messages/.json"


*!* 
"https://api.twilio.com/2010-04-01/Accounts/ACaaff12cbe9e61de8b2425620cf2c26c7/Messages; 
&


LOCAL ARRAY laPost[3,2]
laPost[1,1] = "Body"
laPost[1,2] = "Test Message from Frank via Twilio"
laPost[2,1] = "To" && name
laPost[2,2] = "+18683766400"
laPost[3,1] = "From" && name
laPost[3,2] = "+18683766400"

IF NOT HttpPost(m.lcURL, @laPost, "", "APITrace()")
MESSAGEBOX("An error occurred sending the SMS: " + m.cTraceData, 
16, "Send SMS Via Twilio")

ENDIF

***
FUNCTION APITrace() && Callback from the FLL - used to provide a 
detailed trace of the operation

***
*!* You can create your own function, procedure or method to handle 
this and name it whatever you want.
*!* The nTraceDataType and cTraceData are private variables created 
on-the-fly by the FLL

#DEFINE TYPE_TEXT 0
#DEFINE TYPE_HEADER_IN 1
#DEFINE TYPE_HEADER_OUT 2
#DEFINE TYPE_DATA_IN 3
#DEFINE TYPE_DATA_OUT 4
#DEFINE TYPE_SSL_DATA_IN 5
#DEFINE TYPE_SSL_DATA_OUT 6
#DEFINE TYPE_END 7
lcMessage = ICASE(m.nTraceDataType = TYPE_TEXT, "STATUS:", ;
 m.nTraceDataType = TYPE_HEADER_IN, "SEND HEADER: ", ;
 m.nTraceDataType = TYPE_DATA_IN, "SEND DATA: ", ;
 m.nTraceDataType = TYPE_SSL_DATA_IN, "SEND SSL DATA: ", ;
 m.nTraceDataType = TYPE_END, "END: ", "UNKNOWN: ")
m.lcMessage = m.lcMessage + m.cTraceData
STRTOFILE(m.lcMessage, "Twilio.log", 1)
ENDFUNC

Frank.

Frank Cazabon

On 07/07/2017 12:50 AM, mbsoftwaresoluti...@mbsoftwaresolutions.com wrote:

On 2017-07-06 16:38, Brian wrote:

https://martinfitzpatrick.name/list-of-email-to-sms-gateways/

go to that link and have a look at it.  it should give you the email
to text gateway to just about every carrier.



Thanks, Brian.  Yes, that shows the ones I listed in that screenshot 
earlier (and of course gazillion more!).



[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/9befb900-6635-dd11-38bb-aa6623cd7...@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the 

RE: numeric overflow

2017-07-07 Thread Paul H. Tarver
I sometimes run into this with variables and/or fields. In either case, you
can pre-test a value and/or format using the transform() function as well. 

If TRANSFORM(a,"@L 999.99") = "***.**" 
Endif

The nice thing about this method is you can control exactly the format of
the value you are testing. 

Alternate test:

If occurs('*',TRANSFORM(a,"@L 999.99") ) > 0
Endif

Paul H. Tarver
Tarver Program Consultants, Inc.
Email: p...@tpcqpc.com 



-Original Message-
From: ProfoxTech [mailto:profoxtech-boun...@leafe.com] On Behalf Of Rafael
Copquin
Sent: Friday, July 07, 2017 12:22 PM
To: profoxt...@leafe.com
Subject: numeric overflow

I wonder if there is a way to detect that a numeric field in a record is
filled with  as a result of a numeric overflow in a calculation

Please enlighten me

Rafael Copquin


---
Este correo electrónico ha sido comprobado en busca de virus por AVG.
http://www.avg.com


[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/04e401d2f752$d5659930$8030cb90$@tpcqpc.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: numeric overflow

2017-07-07 Thread Rafael Copquin

Pretty smart!
Thank you
Rafael

El 07/07/2017 a las 14:44, Fred Taylor escribió:

IsOverflow(tnVal)
>LOCAL cVal, lStat
>m.cVal = STR(m.tnVal)
>IF m.cVal="*"
>   m.lStat = .t.
>ENDIF
>RETURN m.lStat



---
Este correo electrónico ha sido comprobado en busca de virus por AVG.
http://www.avg.com


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/595fcf9d.50...@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Re: numeric overflow

2017-07-07 Thread Fred Taylor
Forgot "FUNCTION" in front of "IsOverflow(tnVal)..


Fred

On Fri, Jul 7, 2017 at 10:31 AM, Fred Taylor  wrote:

> You could do a little function that:
>
> IsOverflow(tnVal)
> LOCAL cVal, lStat
> m.cVal = STR(m.tnVal)
> IF m.cVal="*"
>   m.lStat = .t.
> ENDIF
> RETURN m.lStat
>
>
> Fred
>
> On Fri, Jul 7, 2017 at 10:22 AM, Rafael Copquin 
> wrote:
>
>> I wonder if there is a way to detect that a numeric field in a record is
>> filled with  as a result of a numeric overflow in a calculation
>>
>> Please enlighten me
>>
>> Rafael Copquin
>>
>>
>> ---
>> Este correo electrónico ha sido comprobado en busca de virus por AVG.
>> http://www.avg.com
>>
>>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/CAJCBksoWdeq_YO70VeneE0qgPGue2Bd9oqRNtZi=gzR0O7=e...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

Re: numeric overflow

2017-07-07 Thread Fred Taylor
You could do a little function that:

IsOverflow(tnVal)
LOCAL cVal, lStat
m.cVal = STR(m.tnVal)
IF m.cVal="*"
  m.lStat = .t.
ENDIF
RETURN m.lStat


Fred

On Fri, Jul 7, 2017 at 10:22 AM, Rafael Copquin 
wrote:

> I wonder if there is a way to detect that a numeric field in a record is
> filled with  as a result of a numeric overflow in a calculation
>
> Please enlighten me
>
> Rafael Copquin
>
>
> ---
> Este correo electrónico ha sido comprobado en busca de virus por AVG.
> http://www.avg.com
>
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/cajcbkspavrck_kahqpohdeyb58theysxv61iuqzhwhnhvbl...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.

numeric overflow

2017-07-07 Thread Rafael Copquin
I wonder if there is a way to detect that a numeric field in a record is 
filled with  as a result of a numeric overflow in a calculation


Please enlighten me

Rafael Copquin


---
Este correo electrónico ha sido comprobado en busca de virus por AVG.
http://www.avg.com


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: http://leafe.com/archives/byMID/profox/595fc352.1030...@gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Re: Funny flashback Friday memory

2017-07-07 Thread Stephen Russell
Because a full install of your app didn't fit on one disk.

On Fri, Jul 7, 2017 at 8:21 AM,  wrote:

> I recall back in the late 90s or early 2000s people poo-pooing the VFP
> installations that had to carry the 15 megabyte runtimes also besides the
> program/application EXE itself.  LOL
>
[excessive quoting removed by server]

___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/CAJidMY+tJ4LO1qs6Czw9gPxvH8YiOTDBWjWrcV9rA9Ge=pc...@mail.gmail.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.


Funny flashback Friday memory

2017-07-07 Thread mbsoftwaresolutions
I recall back in the late 90s or early 2000s people poo-pooing the VFP 
installations that had to carry the 15 megabyte runtimes also besides 
the program/application EXE itself.  LOL


___
Post Messages to: ProFox@leafe.com
Subscription Maintenance: http://mail.leafe.com/mailman/listinfo/profox
OT-free version of this list: http://mail.leafe.com/mailman/listinfo/profoxtech
Searchable Archive: http://leafe.com/archives/search/profox
This message: 
http://leafe.com/archives/byMID/profox/6fd37faf2bd9a6525ce5e1b7997ce...@mbsoftwaresolutions.com
** All postings, unless explicitly stated otherwise, are the opinions of the 
author, and do not constitute legal or medical advice. This statement is added 
to the messages for those lawyers who are too stupid to see the obvious.