Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

termux

roccomuso349MIT1.1.1

Node module for Termux-API

termux, api, android, wrapper, node

readme

termux

NPM Version Dependency Status JavaScript Style Guide

Comprehensive Node.js module for Termux-API

Install

  1. Make sure you've first installed the termux-api on your Android device from the Play store.
  2. Then install the scripts with apt install termux-api.
  3. Finally get this node module:

    $ npm install --save termux

Example usage

const api = require('termux')

if (!api.hasTermux) process.exit(1)

api.vibrate()
   .duration(1000)
   .run()

api.clipboardGet()
   .run()
   .then(function (text) {
     // ...
   })

Available methods

Every command instance has the .run() method that must be used to execute the command. It always return a Promise (eventually with results).

Method Description Parameters
.toast() Show a toast message
| set the text to show .text(<str>)
| show the toast for a short while .transient()
.vibrate() Vibrate your phone
| set the duration in milliseconds .duration(<ms>)
| force vibration even in silent mode .force()
.batteryStatus() Get the status of the device battery
.cameraInfo() Get info about device camera(s)
.cameraPhoto() Take a photo and save it to a file (JPEG format)
| select the camera by ID .camera(<id>)
| output photo file (NB. use an absolute path!) .outputFile(<str>)
.clipboardGet() Get the system clipboard text
.clipboardSet() Set the system clipboard text
| text to copy in clipboard .text(<str>)
.contactList() Set the system clipboard text
.contactList() List all contacts
.dialog() Show a text entry dialog
| dialog title .title(<str>)
| hint to show when input is empty .hint(<str>)
| use a textarea with multiple lines .multipleLines()
| enter the input as a password .password()
.download() Download a resource using the download manager
| set the resource to download .url(<str>)
| title for the download request .title(<str>)
| description for the download request .description(<str>)
.infraredFrequencies() Query the infrared transmitter's supported carrier frequencies
.infraredTransmit() Transmit an infrared pattern
| specify the pattern to transmit as array of numbers .frequency(<Array>)
.location() Get the device location
| location provider (gps/network/passive) .provider(<enum>)
| kind of request to make (once/last/updates) .request(<enum>)
.notification() Display a system notification
| notification content to show .content(<str>)
| notification id (will overwrite any previous notification with the same id) .id(<int>)
| notification title to show .title(<str>)
| notification url when clicking on it .url(<str>)
| notification action when clicking on button1 .button1(<str>, <str>)
| notification action when clicking on button2 .button2(<str>, <str>)
| notification action when clicking on button3 .button3(<str>, <str>)
| notification action when tapping on it .tap(<str>)
| notification action when deleting it .delete(<str>)
| notification image to show .image(<path>)
| makes notification unremovable, need .id .pin()
.share() share a file specified as argument
| provide a file to share .file(<path>)
| which action to perform on the file (edit/send/view) .action(<enum>)
| content-type to use (default: guessed from file extension) .contentType(<str>)
| share to the default receiver instead of showing a chooser .default()
| title to use for shared content (default: shared file name) .title(<str>)
.smsInbox() List received SMS messages
| show dates when messages were created .date()
| limit in sms list (default: 10) .limit(<int>)
| show phone numbers .showNumbers()
| offset in sms list (default: 0) .offset(<int>)
.smsSend() Send a SMS message to the specified recipient number(s)
| Recipient number(s), gotta be an Array .numbers(<Array>)
| The SMS text .text(<str>)
.telephonyCellInfo() Get information about all observed cell information from all radios on the device
.telephonyDeviceInfo() Get information about the telephony device
.ttsEngines() Get information about the available text-to-speech (TTS) engines
.ttsSpeak() Speak text with a system text-to-speech (TTS) engine
| Text to speak, passed to the engine .text(<str>)
| TTS engine to use, see .ttsEngines() .engine(<id>)
| language to use (may be unsupported by the engine) .language(<enum>)
| pitch to use in speech (1.0 is normal) .pitch(<num>)
| speech rate to use (1.0 is normal) .rate(<num>)
| audio stream to use (ALARM/MUSIC/NOTIFICATION/RING/SYSTEM/VOICE_CALL) .stream(<enum>)

Dependency

It uses has-termux-api to check if termux-api is installed.

Debug

Set the env DEBUG: DEBUG=termux

Author

Rocco Musolino (@roccomuso)

License

MIT