Sounds like the tsNetLibUrl stack may have been unloaded.
Is it possible this bug is affecting you?
On 16/02/2017 6:33 PM, J. Landman Gay via use-livecode wrote:
I keep getting this message, both in the IDE and in a standalone:
Hi Bill and others,
I appreciate the feedback regarding the feature breakdown between the
The decision to split the features (and how they were split) across
Business and Indy was decided on by the LiveCode team.
I expect that some of them may have seen this thread,
It looks like you are using a SSH private key in PuTTY format (.ppk).
tsNet requires it to be in OpenSSH format.
That is easy to fix though, you can convert the .ppk with PuttyGen.
To do this, open PuttyGen and load the .ppk file. Then select
"Conversions" -> "Export OpenSSH
I have not heard of this issue before but will see if I can reproduce it
and get back to you.
A workaround would be to use the tsNetGetSync function directly so that
you can specify the user/pass separately like this:
local tHeaders, tOutHeaders, tResultCode, tBytes, tSettings
tsNet calculates the public key from the private key, so you only need
to pass the private key to the tsNet functions.
On 18/03/2017 4:00 AM, Bob Sneidar via use-livecode wrote:
Looks like it DOES need the public key after all. I thought that was the way
key file: Unable to open private key file
Not sure about were to go from here… I redid the export of the .ppk in PuttyGen
and still get the same thing. There is no password protecting the key.
Any further help would be greatly appreciated.
On Mar 17, 2017, at
n error) when running the script.
Any further help would be greatly appreciated.
On Mar 16, 2017, at 3:08 AM, Charles Warwick via use-livecode
It looks like you are using a SSH private key in PuTTY form
ivKey into tSettings["ssh_priv_key"]
put tPrivKey into tSettings["ssh_private_key"]
you should be right to go!
(I will get this fixed in the documentation for the next version)
On 17/03/2017 6:31 PM, Charles Warwick via use-livecode wrote:
If it is successful, you should see "Authentication successful." appear
in the message box.
On 16/03/2017 6:31 PM, Charles Warwick via use-livecode wrote:
I have not heard of this issue before but wi
Thanks for the bug report, I'll check that out soon.
Just briefly though, tsNet also provides the feature to automatically create
missing directories when uploading a file. If you look in the dictionary for
the tsNet commands, you should be able to see a command to turned that
Do you only experience these hangs when you try to upload to folders that don't
I have identified a bug related to that which should be fixed in the next
On 5 Apr 2017 at 06:50:29 AEST, Richard Gaskin via use-livecode
Are you using ftp:// or ftps:// at the start of the URL? It should be ftp://
even for FTPS connections.
-- Sent from my iPhone
On 5 Apr 2017 at 08:20:05 AEST, Richard Gaskin via use-livecode
Charles Warwick wrote:
I think I am noticing a potentially related bug when an invalid path is
used in the SFTP transfer - I am looking into it now.
Can you confirm that you are using the complete path for the destination
path in the URL? Unlike FTP, SFTP paths are not relative to the user's
Firstly my apologies on the lack of documentation, it is definitely on
my todo list and I am working on some Livecode lessons for tsNet at the
I have just double checked that stack and noticed that the call to
tsNetUploadSync is using the wrong syntax (it changed at one
On 11/08/2017 7:43 AM, Dan Friedman via use-livecode wrote:
To begin, the original purpose of this thread was to discover why the app was
rejected by Apple. It turns out that my app disables tsNet (because I have had
tons of trouble with it) and that’s why the first stack was
The error message "Not initialised" (the spelling is correct depending
on where you live ;-) ) indicates that the tsNet external isn't running.
If you are using libUrl which I am guessing you are, tsNet is
initialised on startup, so this would indicate that it has either been
On 14/07/2017 1:40 PM, J. Landman Gay via use-livecode wrote:
On 7/13/17 7:59 PM, Alex Tweedly via use-livecode wrote:
Yeah - it's the equivalent of that (but writing to a log file) that
makes me think it's tsNetInit that's the problem. But I don't know
what to do next - Internet is included
The resetAll command is very destructive, in that it closes all
currently open connections. In certain circumstances it has been
required when using the traditional libUrl library to work around
network errors and in order to maintain feature parity, it does also
work with tsNet.
My apologies if there was a regression due to tsNet in those particular
Between tsNet 1.2.7 and tsNet 1.2.8, the only change to the Windows
build was an update of the underlying curl library that tsNet uses.
While that does open the possibility for a regression, the
Certain characters in usernames and passwords need to be URL encoded if you
want to include them in a URL string. The @ character is one of them.
Try something like his:
put urlencode("autoim...@jdoe.on-rev.com") into tUser
put urlencode("x") into tPass
put the last image into
On 24/05/2017 11:55 AM, Terry Judd via use-livecode wrote:
Couple of questions about the tsNet external...
# if I’m just using get or post url (i.e. no special tsNet commands) do I still
need to call tsNetInit?
No. tsNetInit is automatically called on startup as part of libUrl
I think this is the same issue as has been reported here that I am
At this point in time, issuing "tsNetLibUrlReuseConnection false" is the
best solution, as this will stop tsNet from trying to re-use an existing
On 18/06/2017 7:23 AM, Richard Gaskin via use-livecode wrote:
> Ok, I want this. Who does it? I am throwing $500 in the pot…
> Someone also willing to write a .bat for Windows and maybe make the
> Linux one work on Mac OS also???
I'd do an initial version for that which would
On 16/06/2017 2:39 PM, Monte Goulding via use-livecode wrote:
On 16 Jun 2017, at 2:22 pm, Tom Glod via use-livecode
I'm relieved to hear that I think I misunderstood Todd's blog... maybe
his was a purely volume related bottleneck and not the library
If you are able to use the commercial version of LC server, the tsNet
external is supported which provides equivalent functionality to libUrl.
On 5/05/2017 8:48 PM, Malte Brill via use-livecode wrote:
Thanks Dan, but that is not what I am after…
I have a server
On 15/09/2017 7:08 PM, Thierry Douez via use-livecode wrote:
I guess both methods are safe?
or is there some advantages with one or the other?
I'm using it within a Livecode Mail Composer.
Based on an export of my server DB, I'm scanning some address,
build dynamically the
On 15/09/2017 6:31 PM, Thierry Douez via use-livecode wrote:
I've worked hard with tsNetSmtpSync() these last days,
on macOS Sierra with the latest LC 8.1.6
and have 2 questions which bothers me:
- from time to time (no recipe yet), I've got an error when executing it.
Any of those error codes (6, 7 or 35) are reasonable if you are
operating in an area with a really poor connection.
When you are operating on a public wifi, it could have a lot to do with
how the wifi is configured, as Bob mentioned below. How these are
configured can vary
On 24/08/2017 6:40 AM, Monte Goulding via use-livecode wrote:
On 24 Aug 2017, at 1:06 am, Stephen MacLean via use-livecode
Don’t think it is, based on what’s in the dictionary, but thought I would ask:
is IMAP or POP3 supported with tsNet?
I know CURL
That seems to be a Linux specific library issue from what I can tell
Are you having issues on just one Android device?
On 4 Sep 2017 at 05:58:17 AEST, J. Landman Gay via use-livecode
On 9/3/17 2:45 PM, J. Landman Gay via
You are correct, as tsNet does not use the standard LiveCode sockets, it does
not pay attention to the socketTimeoutInterval.
However, rather than disabling tsNet, you can resolve any app hangs related to
socket timeouts by using the tsNetSetTimeouts command which allows you to
An error code of 18 generally indicates that the server reported the transfer
would be a certain length, and then it ended up being shorter or longer than
In your user’s case, it sounds like the actual downloaded amount is smaller
than it should be? As you have said,
> Is it?
> DDoS tools aside , what APIs need more than one call at a time?
Not that I am Tom, but many APIs need different calls to retrieve various
pieces of information. Just as a simple example, if you are writing a weather
app and you want to display on one screen the
You can definitely monitor all of your connections that use tsNet by setting a
status callback like you have mentioned below.
The overhead of doing this will be determined by the amount of processing you
do within the callback function.
> On 11 Dec 2017, at 5:46 am,
You only need the tsNet inclusion for building 64bit Mac standalones.
The tsNet-x86_64 inclusion is currently only for the LC FileMaker plugin.
> On 16 Nov 2017, at 8:15 pm, Tiemo Hollmann TB via use-livecode
Have a look in the dictionary at the tsNetSetTimeouts command.
In particular, the last two parameters allow you to define a minimum transfer
speed so that if a transfer falls below that speed, tsNet will abort the
For example, if you issue the following command:
> Get the SivaSiva
> App today (for iPhone and iPad)
> On 12/6/17, 10:43 PM, "use-livecode on behalf of Charles Warwick via
> use-livecode" <use-livecode-boun...@lists.runrev.com on behal
he IDE one
> gets "tsneterr: Already initialized". On Android this error does not occur.
> Ralph DiMola
> IT Director
> Evergreen Information Services
> -Original Message-
> From: use-livecode [mailto:use-livecode-bo
> OK, now going over to the forum on this dropbox thread I see Jacque's and
> Charle's comments. 5 secs seems a little long.. so if we use the algorithm
> "We want to tell users what is up or dim content options from remote servers
> in 3 seconds" (and FTP is not in the cards) we get:
Sorry, divide my figures for the last parameter to tsNetSetTimeouts by 8, it
has been a long day!
> On 7 Dec 2017, at 6:33 pm, Charles Warwick
>> OK, now going over to the forum on this dropbox thread I see Jacque's and
> On 7 Dec 2017, at 5:00 am, Sannyasin Brahmanathaswami via use-livecode
> Matthias Rebbe wrote:
>The connection ID is only used/needed when you use the asynchronous
> commands of tsNet. The synchronous commands like tsNetUploadSync or
> -Ursprüngliche Nachricht-
> Von: use-livecode [mailto:use-livecode-boun...@lists.runrev.com] Im Auftrag
> von Charles Warwick via use-livecode
> Gesendet: Donnerstag, 7. Dezember 2017 10:56
> An: How to use LiveCode <email@example.com
I am not aware of any issues in the latest version of tsNet with regards to
proxy servers, however there were some fixes for proxy NTLM authentication
addressed in tsNet 1.2.10.
Without knowing the specifics of the networks your application is being used
in, I cannot say if that
I have an LC external under development that supports websockets that could
potentially help you. Feel free to contact me off-list if you would like to
try it out.
> On 30 Oct 2017, at 9:37 am, Monte Goulding via use-livecode
TsNet tries to reuse existing connections where possible. While this usually
is very effective, it can sometimes cause delays like you were experiencing.
Try issuing the command:
> On 17 May 2018, at 3:34 am, Paul Dupuis via
ssue that you’re experiencing is caused by
> tsNet not wanting to load to begin with, or by a bug in tsNet itself, but the
> developer should be able to look into this.”
> Any idea what might cause this.
>> Am 28.05.2018 um 0
the web server..
> It´s the same. Should i try Indy instead?
> Btw. Is there a LC command/function which returns what type of Livecode
> server (community or commercial) is running?
>> Am 29.05.2018 um 09:57 schrieb C
My apologies, I meant only one commercial edition of LC server. You download
it from livecode.com after logging in to your account.
> On 29 May 2018, at 6:41 pm, Mark Wieder via use-livecode
>> On 05/29/2018 01:22 AM, Charles Warwick v
You should just need to copy the relevant tsNet external (for Linux x64 it is
tsNet-x64.so) into the external directory from your normal commercial desktop
After that, just make sure you call tsNetInit before making any other tsNet
> On 28
There are a series of lessons on tsNet on the LiveCode website:
If you are looking for an example of how to download something direct to a
file, the lesson called “How to asynchronously download via SFTP directly a
file” should help.
> In a nutshell following the results of my tests:
> - There is bug 18961. An issue regarding tsNetSendCmd() is presumably
> related. Other Indy features work as expected.
The issue is that any asynchronous tsNet function will fail on LC server. I
have not yet had time to go back
> On 27 Jun 2018, at 7:57 am, Matthias Rebbe via use-livecode
> Hm, On-Rev support told me that GLIBC 2.1.4 is needed to run Livecode Server
> 9 64bit on On-Rev. The 32bit version is working on On-Rev with the older one.
> They did not mention that this library is
What type of key do you need to generate?
> On 21 Feb 2018, at 2:50 pm, Brian Milby via use-livecode
> Had not seen the tsNet handler, but that is an RSA key. Scuttlebutt uses a
> different key type. There are other useful things in the library. There
If you take a look at the following LC lesson for uploading a file via FTP with
tsNet, it shows how to add a username and password to the settings parameter of
a tsNet function (which in the example is the tsNetUploadSync command).
> Graham Samuel wrote:
>> However, I don’t seem to be able to mimic what my FTP software
>> (Transmit on the Mac, or FileZilla) can do, which is to easily delete
>> a file on a server - the file in question is part of a web site
>> hosted by DreamHost. I just want to use the URL
> thank you very much for that. That is really very useful.
> Btw. does tsNet support Digest Access Authentication (DAA) (RFC 2617)?
>> Am 07.03.2018 um 11:20 schrieb Charles Warwi
Unless you are deploying to iOS devices, you should be ok to use the latest
version of tsNet with LC 8.1.4. Each build of tsNet contains iOS binaries
specifically for the version of LC it relates to.
> On 9 Mar 2018, at 8:16 pm, Tiemo Hollmann TB via use-livecode
If tsNetIsSyncBlocked() is always returning true then a connection must be
The latest version of tsNet defaults to timing out stalled connections after 30
seconds. If you want to stay with LC 8.1.5 then just add the following code in
your application’s startup:
> Matthias Rebbe
> Tel +49 5741 31
> https://matthiasrebbe.eu <https://matthiasrebbe.eu/>
>> Am 09.03.2018 um 04:18 schrieb Charles Warwick via
You can use the tsNetCustom* functions to issue any HTTP(S) request type you
require (including PATCH and PUT). The tsNetUpload* functions are also
effectively just a PUT request when using the HTTP(S) protocols.
Let me know if you need any more info.
> On 14 Mar
If the site you are trying to contact has CORS enabled appropriately, then you
can do something like this...
That does sound strange.
If you download the following stack:
Open that stack at the same time as you have your application stack open in the
IDE, click the “Start Debug” button, and try your PUT requests.
Just a quick update to let everyone know that I have uploaded a series of
lessons on tsNet to the LiveCode web site. You can view them at:
I am continuing to upload more lessons as I have time so please let me know if
there is any particular
>>>> On Fri, Mar 16, 2018 at 7:24 AM, Tom Glod via use-livecode <
>>>> firstname.lastname@example.org> wrote:
>>>>> WowI'm impressedthats quite a hack Charles..I will study all
ceiving data from the peer
> My Mailserver:
> Port is 587
> Authentification Method is password, normal
> Encryption is STARTTLS
> With Thunderbird I can send emails with attachments
>> Am 19.03.2018 um 04:07 s
>> Am 21.03.2018 um 09:34 schrieb Charles Warwick via use-livecode:
>> Can you please download the following stack:
>> Open it while you have your LCMail stack open, clic
LC 8.1.9 has the latest version of tsNet at present.
If this is something you are still experiencing, are you able to share the code
with me so I can see if I can replicate it?
> On 14 Mar 2018, at 12:37 am, Dan Friedman via use-livecode
That does seem odd... Is there any chance you might have some anti-virus
software running that might be getting in the way?
> On 14 Mar 2018, at 1:18 am, G. Wolfgang Gaich via use-livecode
> Hallo all,
> try to send an
In commercial versions of LiveCode, the default behaviour of the Internet
library (libUrl) is to include and use tsNet.
It calls tsNetInit on startup so that you don’t need to do that separately.
Hope that helps,
> On 5 Mar 2018, at 7:21 pm, Graham Samuel via use-livecode
> On 5 Mar 2018, at 11:04 pm, Graham Samuel via use-livecode
> Another dumb question, I’m afraid. The dictionary says I can do
> put tdata into URL [some url]
> well, I want to put a file on my server (in this example, it’s a text
> On 5 Mar 2018, at 10:56 pm, Graham Samuel via use-livecode
> As in some of my previous mails, I’m talking about having to retrieve a tiny
> text file from a server (and later put a modified version of it back, but
> let’s get one
What version of LC are you using?
If I run the following code in LC 9.0.0, I get an answer dialog indicating a
404 error was returned:
get URL “https://downloads.techstrategies.com.au/blah”
if the result is not empty then
answer the result
Did you try the sample LC stack that I sent you with the socket external? It
allows you to send basic websocket messages to a server. If you did try it,
The beta version should work on Windows, Mac and iOS (Android version is easy
to add if needed).
018, at 12:44 am, "b...@bobhall.net" wrote:
> I would like to find out more about your socket external specifically for
> websockets. Can you point me to where I can find out about the socket
> Bob Hall
Depending on what platforms you need to support, I have a socket external for
LiveCode that includes the ability to use websockets.
> On 23 Nov 2018, at 4:09 pm, Todd Fabacher via use-livecode
> We have hot a wall because we have an API that is ONLY
>>> I'd be using
>>> listMessages(... ['RFC822.SIZE'])
>>> Is there a library that would support this kind of access?
>>> Does tsNet provide a
You can send a HTTP DELETE using tsNet. There is a lesson here that shows you
All tsNet functions work on mobile, so no issue there either.
> On 6 Jul 2019, at
tsNet does support file transfers via SSH, just use sftp:// at the start of the
URL instead of ftp:// or ftps://, otherwise the commands are mostly identical.
Just note that not all SSH features are supported in the Indy version of LC -
some require the Business edition.
What are you
For your particular issue, does using “SEARCH UNSEEN” instead of “UID SEARCH
NOT SEEN” provide the results you are looking for?
> On 21 Mar 2020, at 3:10 am, Pi Digital via use-livecode
> Thanks Bob
> Yeah, I actually already have something like
If you want to stress test an API using the tsNet library, try adding a:
Before issuing the loadUrl commands to see if that makes any difference.
Also note that with tsNet, multiple load URL commands can occur at the same
time against a single server,
a result I can actually launch a lot of requests asynchronously.
> I need to really test these components well. so i will be posting
> some results. I just got it to work reliably yesterday.
> Thanks again,
>> On Mon, Aug 17, 2020 a
Does this lesson help you?
It uses SFTP with tsNetGetFile, so while the protocol used is different, the
concept is the same.
> On 18 Jul 2020, at 5:17 pm, Phil
when I'm not so bleary-eyed (it's almost 2 AM
> here in the US Pacific Northwest).
>> On 7/18/20 12:54 AM, Charles Warwick via use-livecode wrote:
>> Hi Phil,
>> Does this lesson help you?
If you are following the code from the lesson, what are you getting back in the
tRecvHeaders variable? Generally as part of the response stored in that
variable, it will indicate whether it is using ascii or binary mode for
> On 31 Jan 2021, at 11:21 am,
This seems to be an issue which has come up a few times over the years with
the curl library.
It appears to be specific to when curl is compiled on OS X to use the Mac SSL
library, rather than OpenSSL.
I am guessing you are trying this on a Mac?
I have tested a build of tsNet under OS X that
I would not recommend sending e-mail this way. It will create a new SMTP
connection and send the e-mail message separately for every single recipient.
SMTP connections (and tsNetSMTP* commands) are designed to handle multiple
recipients for one e-mail within a single SMTP
What code did you try to add the Bcc e-mail recipients?
The tRecipient variable to the tsNetSmtpSync command needs to be one e-mail
address per line of all the recipients for the e-mail (To, Cc and Bcc) and that
is what is used to determine who the e-mail is sent to.
The rest of
This part of the server response is your clue:
> 421-Sorry, cleartext sessions and weak ciphers are not accepted on this
> 421 Please reconnect using TLS security mechanisms.
You need to connect to the FTP server using SSL. The following LC lesson
Assuming you are using the code from the lesson, just add any Bcc e-mail
addresses to the tRecipient variable before the call to tsNetSmtpSync.
Since you don't include them in the variables passed to mimeEncodeAsMIMEEmail,
the addresses won't be included in the e-mail headers.
Mail list logo