Author: @skills-il
Integrate with Israeli SMS gateway providers for business messaging, OTP, and notifications. Use when user asks about sending SMS in Israel, Israeli SMS providers, phone number validation (Israeli format), OTP implementation, bulk SMS, or SMS marketing compliance. Covers SMS4Free, InforUMobile, and international providers with Israeli support. Do NOT use for WhatsApp Business API (see separate skill) or non-Israeli telecom.
npx skills-il add skills-il/communication --skill israeli-sms-gatewayBefore sending, validate the phone number format:
import re
def validate_israeli_phone(phone: str) -> tuple[bool, str]:
"""Validate and normalize Israeli phone number."""
# Remove spaces, dashes, parentheses
clean = re.sub(r'[\s\-\(\)]', '', phone)
# Handle +972 prefix
if clean.startswith('+972'):
clean = '0' + clean[4:]
elif clean.startswith('972'):
clean = '0' + clean[3:]
# Validate mobile: 05X-XXXXXXX (10 digits)
if re.match(r'^05[0-8]\d{7}$', clean):
return True, '+972' + clean[1:]
# Validate landline: 0X-XXXXXXX (9-10 digits)
if re.match(r'^0[2-9]\d{7,8}$', clean):
return True, '+972' + clean[1:]
return False, "Invalid Israeli phone number"| Provider | Best For | API Type | Pricing |
|---|---|---|---|
| SMS4Free | Startups, developers | REST | Pay per message |
| InforUMobile | Marketing campaigns | REST | Packages |
| Twilio | Global + Israeli | REST | Pay per message |
| Vonage | Enterprise | REST | Volume pricing |
SMS4Free Example:
import requests
def send_sms_sms4free(to: str, message: str, api_key: str,
username: str, pass_key: str, sender: str):
url = "https://www.sms4free.co.il/ApiSMS/SendSMS"
payload = {
"key": api_key,
"user": username,
"pass": pass_key,
"sender": sender,
"recipient": to,
"msg": message
}
# NOTE: Store credentials in environment variables, not in code
response = requests.get(url, params=payload)
return response.textBefore sending commercial SMS:
User says: "Send a verification code to an Israeli mobile number" Result: Generate 6-digit code, send via SMS provider API, handle delivery confirmation.
User says: "Convert 054-1234567 to international format" Result: +972541234567
User says: "Send a promotional SMS to my customer list about a holiday sale" Actions:
scripts/send_sms.py — Sends SMS messages via Israeli gateway providers (SMS4Free, Twilio, InforUMobile). Supports provider selection, message delivery, and delivery status checking. Accepts credentials via CLI arguments or environment variables (SMS_API_KEY, TWILIO_ACCOUNT_SID, etc.). Run: python scripts/send_sms.py --helpscripts/validate_phone.py — Validates and normalizes Israeli phone numbers from any common format (local 05X, international +972, with/without dashes) to the standard +972XXXXXXXXX international format. Distinguishes mobile from landline numbers. Run: python scripts/validate_phone.py --helpreferences/israeli-sms-compliance.md — Israeli anti-spam law (Chok HaSpam) requirements for SMS marketing: explicit opt-in consent rules, Robinson List (Do Not Disturb registry) lookup process, required unsubscribe mechanisms, permitted sending hours, and penalty structure for violations (up to 1,000 NIS per unsolicited message). Consult when setting up commercial SMS campaigns or verifying compliance.references/provider-api-docs.md — API documentation summaries for Israeli SMS providers (SMS4Free, InforUMobile) and international providers with Israeli support (Twilio, Vonage), covering authentication, endpoint URLs, response codes, delivery reports, and Hebrew character encoding (GSM-7 vs. UCS-2 for Hebrew). Consult when integrating with a specific provider or troubleshooting delivery issues.Cause: Various -- invalid number, carrier blocking, quota exceeded Solution: Check number validation, verify API credentials, check provider dashboard for delivery status.
Cause: Custom sender IDs require pre-registration in Israel Solution: Register sender ID with your SMS provider. Unregistered IDs default to provider's generic number.
Cause: Hebrew requires UCS-2 encoding which reduces SMS length from 160 to 70 characters per segment Solution: Use UCS-2 encoding for Hebrew messages. Note that messages over 70 Hebrew characters are split into multi-part SMS (67 chars per segment). Budget accordingly for bulk SMS costs. Some providers handle encoding automatically.
Supported Agents
Trust Score
This skill can execute scripts and commands on your system.
1 occurrences found in code
This skill can make network requests to external services.
1 occurrences found in code
This skill can access environment variables which may contain secrets.
6 occurrences found in code
Build WhatsApp automation flows for the Israeli market including chatbots, auto-reply sequences, and campaign scheduling with Shabbat and holiday awareness. Use when user asks about WhatsApp chatbot development in Israel, automated WhatsApp responses in Hebrew, or scheduling WhatsApp campaigns around Shabbat. Do NOT use for WhatsApp Business API setup (use israeli-whatsapp-business instead).
Aggregate Israeli job market data, optimize Hebrew CVs, benchmark salaries, and track employment trends. Use when user asks about job searching in Israel, Israeli CV writing, Hebrew resume, salary expectations in Israel, AllJobs, Drushim, JobMaster, JobNet, LinkedIn Israel, Israeli job interviews, or Israeli employment benefits. Covers major job platforms, salary data, and Israeli workplace culture. Do NOT use for international job markets outside Israel or immigration/visa work permits (see separate skill).
Optimize Monday.com workflows for Israeli teams with board management, automation recipes, and API integration. Use when user asks about Monday.com boards, Monday.com automations, "monday.com API", work management, sprint planning with Israeli calendar, or team workflow optimization on Monday.com. Enhances the official mondaycom/mcp server with Israeli team best practices including Sunday-Thursday work week, Hebrew boards, and holiday-aware scheduling. Do NOT use for other project management tools (Jira, Asana, etc.).
Want to build your own skill? Try the Skill Creator · Submit a Skill