Skip to main content

List Files

  • Description

    POST /file_list HTTP/1.1

    {"directory":"/lua/scripts/"}
  • Possible Response

    {
    "code": 0,
    "message": "Success",
    "data": {
    "list": [
    {
    "name": "file name",
    "change": 1446566100,
    "size": 144,
    "access": 1442128726,
    "gid": 20,
    "blksize": 4096,
    "uid": 0,
    "rdev": 0,
    "blocks": 8,
    "nlink": 1,
    "permissions": "rw-r--r--",
    "mode": "file",
    "dev": 16777219,
    "ino": 4887321,
    "modification": 1443063784
    },
    {
    "name": "directory name",
    "change": 1464135126,
    "size": 102,
    "access": 1464135114,
    "gid": 20,
    "blksize": 4096,
    "uid": 0,
    "rdev": 0,
    "blocks": 0,
    "nlink": 2,
    "permissions": "rwxr-xr-x",
    "mode": "directory",
    "dev": 16777219,
    "ino": 9407305,
    "modification": 1464135126
    }
    ]
    }
    }
  • Desktop example to get the script list (Python 3.x):

    # -*- coding: utf-8 -*-
    import http.client
    import json

    conn = http.client.HTTPConnection("192.168.31.72:46952") # device address and port
    conn.request("POST", "/file_list", json.dumps({
    "directory": "/lua/scripts/"
    }).encode('utf-8')) # explicitly encode as UTF-8

    response = conn.getresponse()

    if response.status == 200:
    ret = json.loads(response.read().decode('utf-8')) # explicitly decode as UTF-8
    if ret['code'] == 0:
    for finfo in ret['data']['list']:
    if finfo['name'] != '.' and finfo['name'] != '..':
    print(finfo['name'])
    else:
    print(ret['message'])
    else:
    print(response.status, response.reason)
    print(response.read().decode('utf-8')) # explicitly decode as UTF-8

    conn.close()
  • Notes

    • The root directory for file operations via this API is /var/mobile/Media/1ferver/
    • Open-source script modules directory: /var/mobile/Media/1ferver/lua/
    • Scripts directory: /var/mobile/Media/1ferver/lua/scripts/
    • Plugins directory: /var/mobile/Media/1ferver/lib/
    • Resources directory: /var/mobile/Media/1ferver/res/
    • Logs directory: /var/mobile/Media/1ferver/log/
    • UI config directory: /var/mobile/Media/1ferver/uicfg/
    • OCR tessdata directory: /var/mobile/Media/1ferver/tessdata/