程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Python >> OpenERP的短信(SMS)接口

OpenERP的短信(SMS)接口

編輯:Python
今天測試了一下OpenERP的短信(SMS)接口。
在OpenERP的Partner界面上,WebClient的右邊的工具條有個“send sms”的按鈕。OpenERP中發短信用的是短信的Web接口,國內有很多提供Web接口的短信群發公司。OpenERP短信發送相關的代碼在 bin\tools\misc.py中:
程序代碼: [選擇]
def sms_send(user, password, api_id, text, to):     import urllib     url = "http://api.urlsms.com/SendSMS.aspx"     #url = "http://196.7.150.220/http/sendmsg"     params = urllib.urlencode({'UserID': user, 'Password': password, 'SenderID': api_id, 'MsgText': text, 'RecipientMobileNo':to})     f = urllib.urlopen(url+"?"+params)     # FIXME: Use the logger if there is an error     return True 

轉自:http://shine-it.net/index.php?topic=2139.0


該段代碼中寫死了短信發送的URL代碼,要在國內使用,必須修改成國內的短信發送URL。我測試了青島維泰(http://www.waytide.com/html/index.htm)的Web短信平台。上他們的網頁,和他們的客服聯系,他們就會幫忙開通帳號,並贈送10條測試短信。使用青島維泰的接口,上述代碼要做如下修改:
程序代碼: [選擇]
def sms_send(user, password, api_id, text, to):     import urllib     url = "http://www.msc8.cn/cgi/sendsmsbatch.asp"     #url = "http://196.7.150.220/http/sendmsg"     params = urllib.urlencode({'User': user, 'Pass': password, 'Mobile': to, 'Text': text})     f = urllib.urlopen(url+"?"+params)     import re     p=re.compile('^200 ')     if p.match(res):  #send OK!         netsvc.Logger().notifyChannel('SMS_send', netsvc.netsvc.LOG_DEBUG, f.read())     else:         netsvc.Logger().notifyChannel('SMS_send', netsvc.netsvc.LOG_ERROR, f.read())     # FIXME: Use the logger if there is an error     return True  


青島維泰的接口中,可以用逗號隔開,輸入多個手機號碼。上述代碼中,增加了一段檢查短信發送是否成功的代碼,發送成功應該返回“200 ”開頭的一段文字,如果發送失敗,將在OpenERP的Log中記錄錯誤信息。

另外,為了處理漢字(gb2312),server\addons\base\res\partner\wizard\wizard_sms.py下的方法_sms_send 也要修改一下。
原 文:tools.sms_send(data['form']['user'], data['form']['password'], data['form']['app_id'], unicode(data['form']['text'], 'utf-8').encode('latin1'), to)
改成:tools.sms_send(data['form'] ['user'], data['form']['password'], data['form']['app_id'], unicode(data['form']['text'], 'utf-8').encode('gb2312'), to

轉自;http://blog.sina.com.cn/s/blog_ade196920101dz1a.html

*
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved