---
title: roAssetFetcherEvent
slug: develop/roassetfetcherevent
docTags: 
createdAt: 2025-03-11T07:07:17.200Z
---

This event is generated by an *roAssetFetcher* instance when a file transfer succeeds or fails or when population of the asset pool as a whole succeeds or fails.

## ifAssetFetcherEvent

### GetEvent() As Integer

Returns an integer indicating the result of an *roAssetFetcher* download attempt:

-  1: POOL\_EVENT\_FILE\_DOWNLOADED
- -1: POOL\_EVENT\_FILE\_FAILED
-  2: POOL\_EVENT\_ALL\_DOWNLOADED
- -2: POOL\_EVENT\_ALL\_FAILED

### GetName() As String

Returns the filename associated with the event (if any).

### GetFailureReason() As String

Returns additional failure information associated with the event (if any).

### GetFileIndex() As Integer

Retrieves the zero-based index from the sync spec of the file associated with the event. 

### GetResponseCode() As Integer

Returns the protocol response code associated with an event. The following codes indicate success:

- 200: Successful HTTP transfer
- 226: Successful FTP transfer
- 0: Successful local file transfer

For unexpected errors, the return value is negative. There are many possible negative errors from the CURL library, but it is often best to look at the text version by calling `GetFailureReason()`.

Here are some potential errors. Not all of them can be generated by a BrightSign player: 

| **Status** | **Name**                          | **Description**                                                                                                                                                                                          |
| ---------- | --------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -1         | CURLE\_UNSUPPORTED\_PROTOCOL      |                                                                                                                                                                                                          |
| -2         | CURLE\_FAILED\_INIT               |                                                                                                                                                                                                          |
| -3         | CURLE\_URL\_MALFORMAT             |                                                                                                                                                                                                          |
| -5         | CURLE\_COULDNT\_RESOLVE\_PROXY    |                                                                                                                                                                                                          |
| -6         | CURLE\_COULDNT\_RESOLVE\_HOST     |                                                                                                                                                                                                          |
| -7         | CURLE\_COULDNT\_CONNECT           |                                                                                                                                                                                                          |
| -8         | CURLE\_FTP\_WEIRD\_SERVER\_REPLY  |                                                                                                                                                                                                          |
| -9         | CURLE\_REMOTE\_ACCESS\_DENIED     | A service was denied by the server due to lack of access. When login fails, this is not returned.                                                                                                        |
| -11        | CURLE\_FTP\_WEIRD\_PASS\_REPLY    |                                                                                                                                                                                                          |
| -13        | CURLE\_FTP\_WEIRD\_PASV\_REPLY    |                                                                                                                                                                                                          |
| -14        | CURLE\_FTP\_WEIRD\_227\_FORMAT    |                                                                                                                                                                                                          |
| -15        | CURLE\_FTP\_CANT\_GET\_HOST       |                                                                                                                                                                                                          |
| -17        | CURLE\_FTP\_COULDNT\_SET\_TYPE    |                                                                                                                                                                                                          |
| -18        | CURLE\_PARTIAL\_FILE              |                                                                                                                                                                                                          |
| -19        | CURLE\_FTP\_COULDNT\_RETR\_FILE   |                                                                                                                                                                                                          |
| -21        | CURLE\_QUOTE\_ERROR               | Failed quote command                                                                                                                                                                                     |
| -22        | CURLE\_HTTP\_RETURNED\_ERROR      |                                                                                                                                                                                                          |
| -23        | CURLE\_WRITE\_ERROR               |                                                                                                                                                                                                          |
| -25        | CURLE\_UPLOAD\_FAILED             | Failed upload command.                                                                                                                                                                                   |
| -26        | CURLE\_READ\_ERROR                | Could not open/read from file.                                                                                                                                                                           |
| -27        | CURLE\_OUT\_OF\_MEMORY            |                                                                                                                                                                                                          |
| -28        | CURLE\_OPERATION\_TIMEDOUT        | The timeout time was reached.                                                                                                                                                                            |
| -30        | CURLE\_FTP\_PORT\_FAILED          | FTP PORT operation failed.                                                                                                                                                                               |
| -31        | CURLE\_FTP\_COULDNT\_USE\_REST    | REST command failed.                                                                                                                                                                                     |
| -33        | CURLE\_RANGE\_ERROR               | RANGE command did not work.                                                                                                                                                                              |
| -34        | CURLE\_HTTP\_POST\_ERROR          |                                                                                                                                                                                                          |
| -35        | CURLE\_SSL\_CONNECT\_ERROR        | Wrong when connecting with SSL.                                                                                                                                                                          |
| -36        | CURLE\_BAD\_DOWNLOAD\_RESUME      | Could not resume download.                                                                                                                                                                               |
| -37        | CURLE\_FILE\_COULDNT\_READ\_FILE  |                                                                                                                                                                                                          |
| -38        | CURLE\_LDAP\_CANNOT\_BIND         |                                                                                                                                                                                                          |
| -39        | CURLE\_LDAP\_SEARCH\_FAILED       |                                                                                                                                                                                                          |
| -41        | CURLE\_FUNCTION\_NOT\_FOUND       |                                                                                                                                                                                                          |
| -42        | CURLE\_ABORTED\_BY\_CALLBACK      |                                                                                                                                                                                                          |
| -43        | CURLE\_BAD\_FUNCTION\_ARGUMENT    |                                                                                                                                                                                                          |
| -45        | CURLE\_INTERFACE\_FAILED          | CURLOPT\_INTERFACE failed.                                                                                                                                                                               |
| -47        | CURLE\_TOO\_MANY\_REDIRECTS       | Catch endless re-direct loops.                                                                                                                                                                           |
| -48        | CURLE\_UNKNOWN\_TELNET\_OPTION    | User specified an unknown option.                                                                                                                                                                        |
| -49        | CURLE\_TELNET\_OPTION\_SYNTAX     | Malformed telnet option.                                                                                                                                                                                 |
| -51        | CURLE\_PEER\_FAILED\_VERIFICATION | Peer's certificate or fingerprint wasn't verified correctly.                                                                                                                                             |
| -52        | CURLE\_GOT\_NOTHING               | When this is a specific error.                                                                                                                                                                           |
| -53        | CURLE\_SSL\_ENGINE\_NOTFOUND      | SSL crypto engine not found.                                                                                                                                                                             |
| -54        | CURLE\_SSL\_ENGINE\_SETFAILED     | Cannot set SSL crypto engine as default.                                                                                                                                                                 |
| -55        | CURLE\_SEND\_ERROR,               | Failed sending network data.                                                                                                                                                                             |
| -56        | CURLE\_RECV\_ERROR                | Failure in receiving network data.                                                                                                                                                                       |
| -58        | CURLE\_SSL\_CERTPROBLEM           | Problem with the local certificate.                                                                                                                                                                      |
| -59        | CURLE\_SSL\_CIPHER                | Could not use specified cipher.                                                                                                                                                                          |
| -60        | CURLE\_SSL\_CACERT                | Problem with the CA cert (path?)                                                                                                                                                                         |
| -61        | CURLE\_BAD\_CONTENT\_ENCODING     | Unrecognized transfer encoding.                                                                                                                                                                          |
| -62        | CURLE\_LDAP\_INVALID\_URL         | Invalid LDAP URL.                                                                                                                                                                                        |
| -63        | CURLE\_FILESIZE\_EXCEEDED,        | Maximum file size exceeded.                                                                                                                                                                              |
| -64        | CURLE\_USE\_SSL\_FAILED,          | Requested FTP SSL level failed.                                                                                                                                                                          |
| -65        | CURLE\_SEND\_FAIL\_REWIND,        | Sending the data requires a rewind that failed.                                                                                                                                                          |
| -66        | CURLE\_SSL\_ENGINE\_INITFAILED    | Failed to initialize ENGINE.                                                                                                                                                                             |
| -67        | CURLE\_LOGIN\_DENIED              | User, password, or similar field was not accepted and login failed .                                                                                                                                     |
| -68        | CURLE\_TFTP\_NOTFOUND             | File not found on server.                                                                                                                                                                                |
| -69        | CURLE\_TFTP\_PERM                 | Permission problem on server.                                                                                                                                                                            |
| -70        | CURLE\_REMOTE\_DISK\_FULL         | Out of disk space on server.                                                                                                                                                                             |
| -71        | CURLE\_TFTP\_ILLEGAL              | Illegal TFTP operation.                                                                                                                                                                                  |
| -72        | CURLE\_TFTP\_UNKNOWNID            | Unknown transfer ID.                                                                                                                                                                                     |
| -73        | CURLE\_REMOTE\_FILE\_EXISTS       | File already exists.                                                                                                                                                                                     |
| -74        | CURLE\_TFTP\_NOSUCHUSER           | No such user.                                                                                                                                                                                            |
| -75        | CURLE\_CONV\_FAILED               | Conversion failed.                                                                                                                                                                                       |
| -76        | CURLE\_CONV\_REQD                 | Caller must register conversion callbacks using the following URL\_easy\_setopt options: CURLOPT\_CONV\_FROM\_NETWORK\_FUNCTION CURLOPT\_CONV\_TO\_NETWORK\_FUNCTION CURLOPT\_CONV\_FROM\_UTF8\_FUNCTION |
| -77        | CURLE\_SSL\_CACERT\_BADFILE       | Could not load CACERT file, missing or wrong format.                                                                                                                                                     |
| -78        | CURLE\_REMOTE\_FILE\_NOT\_FOUND   | Remote file not found.                                                                                                                                                                                   |
| -79        | CURLE\_SSH                        | Error from the SSH layer (this is somewhat generic, so the error message will be important when this occurs).                                                                                            |
| -80        | CURLE\_SSL\_SHUTDOWN\_FAILED      | Failed to shut down the SSL connection.                                                                                                                                                                  |

The following error codes are generated by the system software and are outside the range of CURL events

| **Status** | **Name**                      | **Description**                                                                   |
| ---------- | ----------------------------- | --------------------------------------------------------------------------------- |
| -1002      | ENOENT                        | The specified file does not exist or cannot be created.                           |
| -10001     | Cancelled                     | The operation has been cancelled.                                                 |
| -10002     | Exception                     | The operation caused a local exception. Call GetFailureReason() for more details. |
| -10003     | ERROR\_EXCEPTION              | An unexpected exception occurred.                                                 |
| -10004     | ERROR\_DISK\_ERROR            | A disk error occurred (usually as a result of the disk being full).               |
| -10005     | ERROR\_POOL\_UNSATISFIED      | The expected files are not present in the pool.                                   |
| -10006     | ERROR\_DOWNLOADING\_ELSEWHERE | The file is being downloaded by another *roAssetFetcher* instance.                |
| -10007     | ERROR\_HASH\_MISMATCH         | A downloaded file did not match its checksum or file size.                        |

## ifUserData

### SetUserData(user\_data As Object)

Sets the user data that will be returned when events are raised.

### GetUserData() As Object

Returns the user data that has previously been set via `SetUserData()`. It will return `Invalid` if no data has been set.
