API Reference
API Reference
Technical API documentation for OperaMetrix modules
API Reference
Complete API reference for OperaMetrix modules and scripting functions.
Octopush SMS Module
system.octopush.sendSMS()
Send a single SMS message.
Syntax:
system.octopush.sendSMS(phoneNumber, message, [options])
Parameters:
phoneNumber(String) - Recipient phone number in international formatmessage(String) - Message content (max 160 chars for standard SMS)options(Dict, optional) - Additional options
Returns: Message ID (String)
Example:
msgId = system.octopush.sendSMS(
phoneNumber="+33612345678",
message="Alert: High temperature detected"
)
system.octopush.sendSMSToMultiple()
Send SMS to multiple recipients.
Syntax:
system.octopush.sendSMSToMultiple(phoneNumbers, message)
Parameters:
phoneNumbers(List) - List of phone numbersmessage(String) - Message content
Returns: List of message IDs
LoRaWAN IoT Module
system.lorawan.sendDownlink()
Send a downlink message to a LoRaWAN device.
Syntax:
system.lorawan.sendDownlink(deviceEUI, port, payload, [confirmed])
Parameters:
deviceEUI(String) - Device EUI in hex formatport(Integer) - FPort number (1-223)payload(List) - Byte array payloadconfirmed(Boolean, optional) - Request confirmation (default: False)
Returns: Boolean - Success status
Example:
success = system.lorawan.sendDownlink(
deviceEUI="0123456789ABCDEF",
port=1,
payload=[0x01, 0x00],
confirmed=True
)
system.lorawan.getDeviceStatus()
Get the current status of a LoRaWAN device.
Syntax:
system.lorawan.getDeviceStatus(deviceEUI)
Parameters:
deviceEUI(String) - Device EUI
Returns: Dictionary with device status
Example:
status = system.lorawan.getDeviceStatus("0123456789ABCDEF")
print(status['lastSeen'])
print(status['batteryLevel'])
Teltonika SMS Module
system.teltonika.sendSMS()
Send SMS via Teltonika modem.
Syntax:
system.teltonika.sendSMS(phoneNumber, message, [modemId])
Parameters:
phoneNumber(String) - Recipient phone numbermessage(String) - Message contentmodemId(String, optional) - Specific modem ID
Returns: Boolean - Success status
Common Functions
Error Handling
All functions may throw exceptions. Use try-catch:
try:
system.octopush.sendSMS("+33612345678", "Test")
except Exception as e:
logger = system.util.getLogger("SMS")
logger.error("Failed to send SMS: " + str(e))
Rate Limits
Be aware of API rate limits:
- Octopush: 100 requests/minute
- LoRaWAN downlinks: Varies by device class
Response Codes
Common HTTP response codes:
200- Success400- Bad request (invalid parameters)401- Unauthorized (check credentials)429- Rate limit exceeded500- Server error
Support
For additional API support, contact our technical team.