You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit fbac1b5
Browse filesBrowse the repository at this point in the historyBrowse files
There are two CLI tools in this repository: `smsgate` and `smsgate-ca`. The first one is for SMS Gateway for Android itself, and the second one is for the Certificate Authority.
56
57
57
58
This CLI provides a robust interface for:
58
-
- Sending and managing SMS messages
59
+
- Sending and managing SMS messages (including batch operations from CSV and Excel files)
59
60
- Configuring webhook integrations
60
61
- Issuing certificates for private deployments
61
62
@@ -71,7 +72,7 @@ This CLI provides a robust interface for:
|`--id`| A unique message ID. If not provided, one will be automatically generated. | empty |`zXDYfTmTVf3iMd16zzdBj`|
213
+
|`--device-id`, `--device`| Optional device ID for explicit selection. If not provided, a random device will be selected. | empty |`oi2i20J8xVP1ct5neqGZt`|
214
+
|`--phones`, `--phone`, `-p`| Specifies the recipient's phone number(s). This option can be used multiple times or accepts comma-separated values. Numbers must be in E.164 format. |**required**|`+12025550123`|
215
+
|`--sim-number`, `--sim`| The one-based SIM card slot number. If not specified, the device's SIM rotation feature will be used. | empty |`2`|
216
+
|`--delivery-report`| Enables delivery report for the message. |`true`|`true` / `false`|
217
+
|`--priority`| Sets the priority of the message. Messages with priority >= 100 bypass all limits and delays. Range: -128 to 127. |`0`|`100`|
218
+
|**Data Message**||||
219
+
|`--data`| Send data message instead of text (content must be base64 encoded). |`false`|`true`|
220
+
|`--data-port`| Destination port for data message (1 to 65535). |`53739`|`12345`|
221
+
|**Options**||||
222
+
|`--ttl`| Time-to-live (TTL) for the message. Duration format (e.g., `1h30m`). If not provided, the message will not expire.<br>**Conflicts with `--valid-until`.**| empty |`1h30m`|
223
+
|`--valid-until`| The expiration date and time for the message. RFC3339 format (e.g., `2006-01-02T15:04:05Z07:00`).<br>**Conflicts with `--ttl`.**| empty |`2024-12-31T23:59:59Z`|
224
+
|`--skip-phone-validation`| Skip phone number validation. |`false`|`true`|
225
+
|`--device-active-within`| Time window in hours for device activity filtering. `0` means no filtering. |`0`|`12`|
226
+
227
+
#### Batch message sending
228
+
229
+
The CLI supports sending messages in bulk from CSV and Excel files. The `batch send` command also supports the shared delivery/device options from `send` (such as `--device-id`, `--sim-number`, `--priority`, `--ttl`, `--valid-until`, `--delivery-report`, `--skip-phone-validation`, `--device-active-within`), allowing fine-grained control over each message in the batch.
|`--dry-run`| Validate and print normalized rows without sending |`false`|`true`|
257
+
|`--validate-only`| Validate input only (no preview, no sending) |`false`|`true`|
258
+
|`--concurrency`| Number of concurrent send workers | CPU cores |`5`|
259
+
|`--continue-on-error`| Continue sending after per-row failures |`false`|`true`|
260
+
261
+
**Inherited message options:**
262
+
The shared delivery/device options from the `send` command are also available (e.g., `--device-id`, `--sim-number`, `--priority`, `--ttl`, `--valid-until`, `--delivery-report`, `--skip-phone-validation`, `--device-active-within`). These apply to every message sent in the batch.
263
+
264
+
**Column mapping:**
265
+
266
+
The `--map` option defines how columns in your file map to message fields:
0 commit comments