我正在尝试通过Clickatell向我的手机发送彩信。我可以发送普通短信,但对于彩信,我得到一个200返回代码和一个ID,但当ID在他们的网站上查找时,我只得到状态9,有一个路由错误发送我的消息。
我正在用python-messaging的(打过补丁的)版本构建.mms文件:
from messaging.mms.message import MMSMessage, MMSMessagePage
mms = MMSMessage()
mms.headers['To'] = '+1<my phone number>/TYPE=PLMN'
mms.headers['Message-Type'] = 'm-send-req'
mms.headers['Subject'] = 'Test python-messaging.mms'
slide1 = MMSMessagePage()
slide1.add_image('/home/<me>/Pictures/test.jpg')
mms.add_page(slide1)
mms.to_file('test.mms')然后,我将test.mms文件放入我的公共Dropbox中,并进行如下的HTTP调用:
r = requests.get('https://api.clickatell.com/mms/ind_push', params={
'user': <username>,
'password': <password>,
'api_id': <api_id>,
'to': +1<my phone number>,
'mms_subject': 'test',
'mms_from': 'testname',
'mms_class': 80,
'mms_expire': 10000,
'mms_url': <public Dropbox link to the .mms file>
})然后我得到了这个:
>>> r.status_code
200
>>> r.text
'ID: <a valid ID>'但是当我在Clickatell的网站上查找这个ID时,我得到了这个:MMS Status 9 - Routing Error。
我做错了什么吗?我感到奇怪的是,我必须在彩信文件和Clickatell中都包含to字段,但我看不到任何我做得完全错误的地方。
发布于 2014-08-16 20:18:35
当MMS消息不是由移动网络上的订户生成时,移动运营商倾向于阻止第三方向其移动网络上的接收者提交MMS消息。
您可能想要做的是发送一条SMS,其中包含指向图像的链接,用户可以通过移动电话web浏览器点击打开该图像。
https://stackoverflow.com/questions/25212334
复制相似问题