-
January 9th, 2013, 10:13 AM
#1
How to send SMS from Python using HTTP request
Hello. I have recently found a great way to send SMS messages from Python. It turns out, it is easy to send messages from Python using HTTP requestes and a software called Ozeki NG SMS Gateway. I downloaded and configured the software (they have great config info on their website) and then I use the sample source code:
###############################################
## Ozeki NG - SMS Gateway Python example ##
###############################################
import urllib
###############################################
### Ozeki NG informations ###
###############################################
host = "http://127.0.0.1"
user_name = "admin"
user_password = "abc123"
recipient = "+36304080332"
message_body = "Hello World from Python"
###############################################
### Putting together the final HTTP Request ###
###############################################
http_req = host
http_req += ":9501/api?action=sendmessage&username="
http_req += urllib.quote(user_name)
http_req += "&password="
http_req += urllib.quote(user_password)
http_req += "&recipient="
http_req += urllib.quote(recipient)
http_req += "&messagetype=SMS:TEXT&messagedata="
http_req += urllib.quote(message_body)
################################################
#### Sending the message ###
################################################
get = urllib.urlopen(http_req)
req = get.read()
get.close()
################################################
### Verifying the response ###
################################################
if req.find("Message accepted for delivery") > 1:
print "Message successfully sent"
else:
print "Message not sent! Please check your settings!"
It was that easy. More useful info on: http://ozekisms.com/index.php?owpn=607
Have a nice day!
Jacob
-
January 9th, 2013, 11:30 AM
#2
Re: How to send SMS from Python using HTTP request
Instead of using urllib, you may find life easier with the requests library. Oh, and remember to post code in [code][/code] bbcode tags, especially since indentation is significant in Python.
You could end up with a simpler example:
Code:
###########################################
## Ozeki NG - SMS Gateway Python example ##
###########################################
import requests
############################
### Ozeki NG information ###
############################
host = "http://127.0.0.1"
user_name = "admin"
user_password = "abc123"
recipient = "+36304080332"
message_body = "Hello World from Python"
############################
#### Sending the message ###
############################
response = requests.get(host + ":9501/api",
params={"action": "sendmessage",
"username": user_name,
"password": user_password,
"recipient": recipient,
"messagetype": "SMS:TEXT",
"messagedata": message_body})
##############################
### Verifying the response ###
##############################
if response.text.find("Message accepted for delivery") > 1:
print("Message successfully sent")
else:
print("Message not sent! Please check your settings!")
Last edited by laserlight; January 9th, 2013 at 11:39 AM.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|