{ "info": { "author": "qcloudsms", "author_email": "qcloudsms@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "\u817e\u8baf\u4e91\u77ed\u4fe1 Python SDK\n===\n\n## \u817e\u8baf\u77ed\u4fe1\u670d\u52a1\n\n\u76ee\u524d`\u817e\u8baf\u4e91\u77ed\u4fe1`\u4e3a\u5ba2\u6237\u63d0\u4f9b`\u56fd\u5185\u77ed\u4fe1`\u3001`\u56fd\u5185\u8bed\u97f3`\u548c`\u6d77\u5916\u77ed\u4fe1`\u4e09\u5927\u670d\u52a1\uff0c\u817e\u8baf\u4e91\u77ed\u4fe1SDK\u652f\u6301\u4ee5\u4e0b\u64cd\u4f5c\uff1a\n\n### \u56fd\u5185\u77ed\u4fe1\n\n\u56fd\u5185\u77ed\u4fe1\u652f\u6301\u64cd\u4f5c\uff1a\n\n- \u5355\u53d1\u77ed\u4fe1\n- \u6307\u5b9a\u6a21\u677f\u5355\u53d1\u77ed\u4fe1\n- \u7fa4\u53d1\u77ed\u4fe1\n- \u6307\u5b9a\u6a21\u677f\u7fa4\u53d1\u77ed\u4fe1\n- \u62c9\u53d6\u77ed\u4fe1\u56de\u6267\u548c\u77ed\u4fe1\u56de\u590d\u72b6\u6001\n\n> `Note` \u77ed\u4fe1\u62c9\u53d6\u529f\u80fd\u9700\u8981\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\u5f00\u901a\u6743\u9650\uff0c\u91cf\u5927\u5ba2\u6237\u53ef\u4ee5\u4f7f\u7528\u6b64\u529f\u80fd\u6279\u91cf\u62c9\u53d6\uff0c\u5176\u4ed6\u5ba2\u6237\u4e0d\u5efa\u8bae\u4f7f\u7528\u3002\n\n### \u6d77\u5916\u77ed\u4fe1\n\n\u6d77\u5916\u77ed\u4fe1\u652f\u6301\u64cd\u4f5c\uff1a\n\n- \u5355\u53d1\u77ed\u4fe1\n- \u6307\u5b9a\u6a21\u677f\u5355\u53d1\u77ed\u4fe1\n- \u7fa4\u53d1\u77ed\u4fe1\n- \u6307\u5b9a\u6a21\u677f\u7fa4\u53d1\u77ed\u4fe1\n- \u62c9\u53d6\u77ed\u4fe1\u56de\u6267\u548c\u77ed\u4fe1\u56de\u590d\u72b6\u6001\n\n> `Note` \u6d77\u5916\u77ed\u4fe1\u548c\u56fd\u5185\u77ed\u4fe1\u4f7f\u7528\u540c\u4e00\u63a5\u53e3\uff0c\u53ea\u9700\u66ff\u6362\u76f8\u5e94\u7684\u56fd\u5bb6\u7801\u4e0e\u624b\u673a\u53f7\u7801\uff0c\u6bcf\u6b21\u8bf7\u6c42\u7fa4\u53d1\u63a5\u53e3\u624b\u673a\u53f7\u7801\u9700\u5168\u90e8\u4e3a\u56fd\u5185\u6216\u8005\u6d77\u5916\u624b\u673a\u53f7\u7801\u3002\n\n### \u8bed\u97f3\u901a\u77e5\n\n\u8bed\u97f3\u901a\u77e5\u652f\u6301\u64cd\u4f5c\uff1a\n\n- \u53d1\u9001\u8bed\u97f3\u9a8c\u8bc1\u7801\n- \u53d1\u9001\u8bed\u97f3\u901a\u77e5\n- \u4e0a\u4f20\u8bed\u97f3\u6587\u4ef6\n- \u6309\u8bed\u97f3\u6587\u4ef6fid\u53d1\u9001\u8bed\u97f3\u901a\u77e5\n- \u6307\u5b9a\u6a21\u677f\u53d1\u9001\u8bed\u97f3\u901a\u77e5\u7c7b\n\n## \u5f00\u53d1\n\n### \u51c6\u5907\n\n\u5728\u5f00\u59cb\u5f00\u53d1\u4e91\u77ed\u4fe1\u5e94\u7528\u4e4b\u524d\uff0c\u9700\u8981\u51c6\u5907\u5982\u4e0b\u4fe1\u606f:\n\n- [x] \u83b7\u53d6SDK AppID\u548cAppKey\n\n\u4e91\u77ed\u4fe1\u5e94\u7528SDK `AppID`\u548c`AppKey`\u53ef\u5728[\u77ed\u4fe1\u63a7\u5236\u53f0](https://console.cloud.tencent.com/sms)\u7684\u5e94\u7528\u4fe1\u606f\u91cc\u83b7\u53d6\uff0c\u5982\u60a8\u5c1a\u672a\u6dfb\u52a0\u5e94\u7528\uff0c\u8bf7\u5230[\u77ed\u4fe1\u63a7\u5236\u53f0](https://console.cloud.tencent.com/sms)\u4e2d\u6dfb\u52a0\u5e94\u7528\u3002\n\n- [x] \u7533\u8bf7\u7b7e\u540d\n\n\u4e00\u4e2a\u5b8c\u6574\u7684\u77ed\u4fe1\u7531\u77ed\u4fe1`\u7b7e\u540d`\u548c\u77ed\u4fe1\u6b63\u6587\u5185\u5bb9\u4e24\u90e8\u5206\u7ec4\u6210\uff0c\u77ed\u4fe1`\u7b7e\u540d`\u987b\u7533\u8bf7\u548c\u5ba1\u6838\uff0c`\u7b7e\u540d`\u53ef\u5728[\u77ed\u4fe1\u63a7\u5236\u53f0](https://console.cloud.tencent.com/sms)\u7684\u76f8\u5e94\u670d\u52a1\u6a21\u5757`\u5185\u5bb9\u914d\u7f6e`\u4e2d\u8fdb\u884c\u7533\u8bf7\u3002\n\n- [x] \u7533\u8bf7\u6a21\u677f\n\n\u540c\u6837\u77ed\u4fe1\u6216\u8bed\u97f3\u6b63\u6587\u5185\u5bb9`\u6a21\u677f`\u987b\u7533\u8bf7\u548c\u5ba1\u6838\uff0c`\u6a21\u677f`\u53ef\u5728[\u77ed\u4fe1\u63a7\u5236\u53f0](https://console.cloud.tencent.com/sms)\u7684\u76f8\u5e94\u670d\u52a1\u6a21\u5757`\u5185\u5bb9\u914d\u7f6e`\u4e2d\u8fdb\u884c\u7533\u8bf7\u3002\n\n### \u5b89\u88c5\n\n#### pip\n\nqcloudsms_py\u91c7\u7528pip\u8fdb\u884c\u5b89\u88c5\uff0c\u8981\u4f7f\u7528qcloudsms\u529f\u80fd, \u53ea\u9700\u8981\u6267\u884c:\n\n```shell\npip install qcloudsms_py\n```\n\n#### \u624b\u52a8\n\n1. \u624b\u52a8\u4e0b\u8f7d\u6216clone\u6700\u65b0\u7248\u672cqcloudsms_py\u4ee3\u7801\n2. \u5728qcloudsms_py\u76ee\u5f55\u8fd0\u884c `python setup.py install`\u6216\u76f4\u63a5\u628aqcloudsms_py\u6240\u5728\u76ee\u5f55\u52a0\u5165`sys.path`\n\n> `Note` python2/python3\u90fd\u652f\u6301\n\n### \u6587\u6863\n\n\u82e5\u60a8\u5bf9\u63a5\u53e3\u5b58\u5728\u7591\u95ee\uff0c\u53ef\u4ee5\u67e5\u9605:\n\n* [API\u5f00\u53d1\u6307\u5357](https://cloud.tencent.com/document/product/382/5808)\n* [SDK\u6587\u6863](https://qcloudsms.github.io/qcloudsms_py/)\n* [\u9519\u8bef\u7801](https://cloud.tencent.com/document/product/382/3771)\n\n### \u793a\u4f8b\n\n- **\u51c6\u5907\u5fc5\u8981\u53c2\u6570**\n\n```python\n# \u77ed\u4fe1\u5e94\u7528SDK AppID\nappid = 1400009099 # SDK AppID\u662f1400\u5f00\u5934\n\n# \u77ed\u4fe1\u5e94\u7528SDK AppKey\nappkey = \"9ff91d87c2cd7cd0ea762f141975d1df37481d48700d70ac37470aefc60f9bad\"\n\n# \u9700\u8981\u53d1\u9001\u77ed\u4fe1\u7684\u624b\u673a\u53f7\u7801\nphone_numbers = [\"21212313123\", \"12345678902\", \"12345678903\"]\n\n# \u77ed\u4fe1\u6a21\u677fID\uff0c\u9700\u8981\u5728\u77ed\u4fe1\u5e94\u7528\u4e2d\u7533\u8bf7\ntemplate_id = 7839 # NOTE: \u8fd9\u91cc\u7684\u6a21\u677fID`7839`\u53ea\u662f\u4e00\u4e2a\u793a\u4f8b\uff0c\u771f\u5b9e\u7684\u6a21\u677fID\u9700\u8981\u5728\u77ed\u4fe1\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\n\n# \u7b7e\u540d\nsms_sign = \"\u817e\u8baf\u4e91\" # NOTE: \u8fd9\u91cc\u7684\u7b7e\u540d\"\u817e\u8baf\u4e91\"\u53ea\u662f\u4e00\u4e2a\u793a\u4f8b\uff0c\u771f\u5b9e\u7684\u7b7e\u540d\u9700\u8981\u5728\u77ed\u4fe1\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\uff0c\u53e6\u5916\u7b7e\u540d\u53c2\u6570\u4f7f\u7528\u7684\u662f`\u7b7e\u540d\u5185\u5bb9`\uff0c\u800c\u4e0d\u662f`\u7b7e\u540dID`\n```\n\n- **\u5355\u53d1\u77ed\u4fe1**\n\n```python\nfrom qcloudsms_py import SmsSingleSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nsms_type = 0 # Enum{0: \u666e\u901a\u77ed\u4fe1, 1: \u8425\u9500\u77ed\u4fe1}\nssender = SmsSingleSender(appid, appkey)\ntry:\n result = ssender.send(sms_type, 86, phone_numbers[0],\n \"\u3010\u817e\u8baf\u4e91\u3011\u60a8\u7684\u9a8c\u8bc1\u7801\u662f: 5678\", extend=\"\", ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note` \u5982\u9700\u53d1\u9001\u6d77\u5916\u77ed\u4fe1\uff0c\u540c\u6837\u53ef\u4ee5\u4f7f\u7528\u6b64\u63a5\u53e3\uff0c\u53ea\u9700\u5c06\u56fd\u5bb6\u7801 `86` \u6539\u5199\u6210\u5bf9\u5e94\u56fd\u5bb6\u7801\u53f7\u3002\n> `Note` \u65e0\u8bba\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u8fd8\u662f\u6307\u5b9a\u6a21\u677fID\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u90fd\u9700\u8981\u4ece\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\u6a21\u677f\u5e76\u4e14\u6a21\u677f\u5df2\u7ecf\u5ba1\u6838\u901a\u8fc7\uff0c\u624d\u53ef\u80fd\u4e0b\u53d1\u6210\u529f\uff0c\u5426\u5219\u8fd4\u56de\u5931\u8d25\u3002\n\n- **\u6307\u5b9a\u6a21\u677fID\u5355\u53d1\u77ed\u4fe1**\n\n```python\nfrom qcloudsms_py import SmsSingleSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nssender = SmsSingleSender(appid, appkey)\nparams = [\"5678\"] # \u5f53\u6a21\u677f\u6ca1\u6709\u53c2\u6570\u65f6\uff0c`params = []`\ntry:\n result = ssender.send_with_param(86, phone_numbers[0],\n template_id, params, sign=sms_sign, extend=\"\", ext=\"\") # \u7b7e\u540d\u53c2\u6570\u672a\u63d0\u4f9b\u6216\u8005\u4e3a\u7a7a\u65f6\uff0c\u4f1a\u4f7f\u7528\u9ed8\u8ba4\u7b7e\u540d\u53d1\u9001\u77ed\u4fe1\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note` \u65e0\u8bba\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u8fd8\u662f\u6307\u5b9a\u6a21\u677fID\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u90fd\u9700\u8981\u4ece\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\u6a21\u677f\u5e76\u4e14\u6a21\u677f\u5df2\u7ecf\u5ba1\u6838\u901a\u8fc7\uff0c\u624d\u53ef\u80fd\u4e0b\u53d1\u6210\u529f\uff0c\u5426\u5219\u8fd4\u56de\u5931\u8d25\u3002\n\n- **\u7fa4\u53d1**\n\n```python\nfrom qcloudsms_py import SmsMultiSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nsms_type = 0 # Enum{0: \u666e\u901a\u77ed\u4fe1, 1: \u8425\u9500\u77ed\u4fe1}\nmsender = SmsMultiSender(appid, appkey)\ntry:\n result = msender.send(sms_type, \"86\", phone_numbers,\n \"\u3010\u817e\u8baf\u4e91\u3011\u60a8\u7684\u9a8c\u8bc1\u7801\u662f: 5678\", extend=\"\", ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note` \u65e0\u8bba\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u8fd8\u662f\u6307\u5b9a\u6a21\u677fID\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u90fd\u9700\u8981\u4ece\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\u6a21\u677f\u5e76\u4e14\u6a21\u677f\u5df2\u7ecf\u5ba1\u6838\u901a\u8fc7\uff0c\u624d\u53ef\u80fd\u4e0b\u53d1\u6210\u529f\uff0c\u5426\u5219\u8fd4\u56de\u5931\u8d25\u3002\n\n- **\u6307\u5b9a\u6a21\u677fID\u7fa4\u53d1**\n\n```python\nfrom qcloudsms_py import SmsMultiSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nmsender = SmsMultiSender(appid, appkey)\nparams = [\"5678\"]\ntry:\n result = msender.send_with_param(86, phone_numbers,\n template_id, params, sign=sms_sign, extend=\"\", ext=\"\") # \u7b7e\u540d\u53c2\u6570\u672a\u63d0\u4f9b\u6216\u8005\u4e3a\u7a7a\u65f6\uff0c\u4f1a\u4f7f\u7528\u9ed8\u8ba4\u7b7e\u540d\u53d1\u9001\u77ed\u4fe1\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note:`\u7fa4\u53d1\u4e00\u6b21\u8bf7\u6c42\u6700\u591a\u652f\u6301200\u4e2a\u53f7\u7801\uff0c\u5982\u6709\u5bf9\u53f7\u7801\u6570\u91cf\u6709\u7279\u6b8a\u9700\u6c42\u8bf7\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\u3002\n> `Note` \u65e0\u8bba\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u8fd8\u662f\u6307\u5b9a\u6a21\u677fID\u5355\u53d1/\u7fa4\u53d1\u77ed\u4fe1\u90fd\u9700\u8981\u4ece\u63a7\u5236\u53f0\u4e2d\u7533\u8bf7\u6a21\u677f\u5e76\u4e14\u6a21\u677f\u5df2\u7ecf\u5ba1\u6838\u901a\u8fc7\uff0c\u624d\u53ef\u80fd\u4e0b\u53d1\u6210\u529f\uff0c\u5426\u5219\u8fd4\u56de\u5931\u8d25\u3002\n\n- **\u53d1\u9001\u8bed\u97f3\u9a8c\u8bc1\u7801**\n\n```python\nfrom qcloudsms_py import SmsVoiceVerifyCodeSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nvvcsender = SmsVoiceVerifyCodeSender(appid, appkey)\ntry:\n result = vvcsender.send(\"86\", phone_numbers[0], \"5678\",\n playtimes=2, ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note` \u8bed\u97f3\u9a8c\u8bc1\u7801\u53d1\u9001\u53ea\u9700\u63d0\u4f9b\u9a8c\u8bc1\u7801\u6570\u5b57\uff0c\u4f8b\u5982\u5f53msg=\u201c5678\u201d\u65f6\uff0c\u60a8\u6536\u5230\u7684\u8bed\u97f3\u901a\u77e5\u4e3a\u201c\u60a8\u7684\u8bed\u97f3\u9a8c\u8bc1\u7801\u662f5678\u201d\uff0c\u5982\u9700\u81ea\u5b9a\u4e49\u5185\u5bb9\uff0c\u53ef\u4ee5\u4f7f\u7528\u8bed\u97f3\u901a\u77e5\u3002\n\n\n- **\u53d1\u9001\u8bed\u97f3\u901a\u77e5**\n\n```python\nfrom qcloudsms_py import SmsVoicePromptSender\nfrom qcloudsms_py.httpclient import HTTPError\n\nvpsender = SmsVoicePromptSender(appid, appkey)\ntry:\n result = vpsender.send(\"86\", phone_numbers[0], 2, \"5678\",\n playtimes=2, ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n- **\u62c9\u53d6\u77ed\u4fe1\u56de\u6267\u4ee5\u53ca\u56de\u590d**\n\n```python\nfrom qcloudsms_py import SmsStatusPuller\nfrom qcloudsms_py.httpclient import HTTPError\n\nmax_num = 10 # \u5355\u6b21\u62c9\u53d6\u6700\u5927\u91cf\nspuller = SmsStatusPuller(appid, appkey)\ntry:\n # \u62c9\u53d6\u77ed\u4fe1\u56de\u6267\n callback_result = spuller.pull_callback(max_num)\n # \u62c9\u53d6\u56de\u590d\n reply_result = spuller.pull_reply(max_num)\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(callback_result)\nprint(reply_result)\n```\n\n> `Note:` \u77ed\u4fe1\u62c9\u53d6\u529f\u80fd\u9700\u8981\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\uff0c\u91cf\u5927\u5ba2\u6237\u53ef\u4ee5\u4f7f\u7528\u6b64\u529f\u80fd\u6279\u91cf\u62c9\u53d6\uff0c\u5176\u4ed6\u5ba2\u6237\u4e0d\u5efa\u8bae\u4f7f\u7528\u3002\n\n- **\u62c9\u53d6\u5355\u4e2a\u624b\u673a\u77ed\u4fe1\u72b6\u6001**\n\n```python\nfrom qcloudsms_py import SmsMobileStatusPuller\nfrom qcloudsms_py.httpclient import HTTPError\n\nbegin_time = 1511125600 # \u5f00\u59cb\u65f6\u95f4(unix timestamp)\nend_time = 1511841600 # \u7ed3\u675f\u65f6\u95f4(unix timestamp)\nmax_num = 10 # \u5355\u6b21\u62c9\u53d6\u6700\u5927\u91cf\nmspuller = SmsMobileStatusPuller(appid, appkey)\ntry:\n # \u62c9\u53d6\u77ed\u4fe1\u56de\u6267\n callback_result = mspuller.pull_callback(\"86\", phone_numbers[0],\n begin_time, end_time, max_num)\n # \u62c9\u53d6\u56de\u590d\n reply_result = mspuller.pull_reply(\"86\", phone_numbers[0],\n begin_time, end_time, max_num)\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(callback_result)\nprint(reply_result)\n```\n\n> `Note:` \u77ed\u4fe1\u62c9\u53d6\u529f\u80fd\u9700\u8981\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\uff0c\u91cf\u5927\u5ba2\u6237\u53ef\u4ee5\u4f7f\u7528\u6b64\u529f\u80fd\u6279\u91cf\u62c9\u53d6\uff0c\u5176\u4ed6\u5ba2\u6237\u4e0d\u5efa\u8bae\u4f7f\u7528\u3002\n\n- **\u53d1\u9001\u6d77\u5916\u77ed\u4fe1**\n\n\u6d77\u5916\u77ed\u4fe1\u4e0e\u56fd\u5185\u77ed\u4fe1\u53d1\u9001\u7c7b\u4f3c, \u53d1\u9001\u6d77\u5916\u77ed\u4fe1\u53ea\u9700\u66ff\u6362\u76f8\u5e94\u56fd\u5bb6\u7801\u3002\n\n\n- **\u4e0a\u4f20\u8bed\u97f3\u6587\u4ef6**\n\n```python\nfrom qcloudsms_py import VoiceFileUploader\nfrom qcloudsms_py.httpclient import HTTPError\n\n# Note: \u8bed\u97f3\u6587\u4ef6\u5927\u5c0f\u4e0a\u4f20\u9650\u5236400K\u5b57\u8282\nwith open(\"/path/to/example.mp3\", \"rb\") as f:\n content = f.read()\nuploader = VoiceFileUploader(appid, appkey)\ntry:\n result = uploader.upload(content, content_type=\"mp3\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\n# \u4e0a\u4f20\u6210\u529f\u540e\uff0cresult\u91cc\u4f1a\u5e26\u6709\u8bed\u97f3\u6587\u4ef6\u7684fid\nprint(result)\n```\n\n> `Note` '\u8bed\u97f3\u6587\u4ef6\u4e0a\u4f20'\u529f\u80fd\u9700\u8981\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\u624d\u80fd\u5f00\u901a\n\n- **\u6309\u8bed\u97f3\u6587\u4ef6fid\u53d1\u9001\u8bed\u97f3\u901a\u77e5**\n\n```python\nfrom qcloudsms_py import FileVoiceSender\nfrom qcloudsms_py.httpclient import HTTPError\n\n# Note\uff1a\u8fd9\u91ccfid\u6765\u81ea`\u4e0a\u4f20\u8bed\u97f3\u6587\u4ef6`\u63a5\u53e3\u8fd4\u56de\u7684\u54cd\u5e94\uff0c\u8981\u6309\u8bed\u97f3\n# \u6587\u4ef6fid\u53d1\u9001\u8bed\u97f3\u901a\u77e5\uff0c\u9700\u8981\u5148\u4e0a\u4f20\u8bed\u97f3\u6587\u4ef6\u83b7\u53d6fid\nfid = \"c799d10a43ec109f02f2288ca3c85b79e7700c98.mp3\"\nfvsender = FileVoiceSender(appid, appkey)\ntry:\n result = fvsender.send(fid, phone_numbers[0],\n nationcode=\"86\", playtimes=2, ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n> `Note` \u6309'\u8bed\u97f3\u6587\u4ef6fid\u53d1\u9001\u8bed\u97f3\u901a\u77e5'\u529f\u80fd\u9700\u8981\u8054\u7cfb\u817e\u8baf\u4e91\u77ed\u4fe1\u6280\u672f\u652f\u6301(QQ:3012203387)\u624d\u80fd\u5f00\u901a\n\n- **\u6307\u5b9a\u6a21\u677f\u53d1\u9001\u8bed\u97f3\u901a\u77e5**\n\n```python\nfrom qcloudsms_py import TtsVoiceSender\nfrom qcloudsms_py.httpclient import HTTPError\n\ntemplate_id = 12345\nparams = [\"5678\"]\ntvsender = TtsVoiceSender(appid, appkey)\nTry:\n result = tvsender.send(template_id, params, phone_numbers[0],\n nationcode=\"86\", playtimes=2, ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n#### \u4f7f\u7528\u4ee3\u7406\n\n\u6709\u7684\u73af\u5883\u9700\u8981\u4f7f\u7528\u4ee3\u7406\u624d\u80fd\u4e0a\u7f51\uff0c\u53ef\u4ee5\u6307\u5b9aHTTPSimpleClient\u7684proxy\u53c2\u6570\u6765\u5b9e\u73b0, \u793a\u4f8b\u5982\u4e0b:\n\n```python\nfrom qcloudsms_py import SmsSingleSender\nfrom qcloudsms_py.httpclient import HTTPSimpleClient, HTTPError\n\nhttpclient = HTTPSimpleClient(proxy=\"www.proxysever.com:8080\")\nssender = SmsSingleSender(appid, appkey, httpclient=httpclient)\ntemplate_id = 7839\nparams = [\"5678\"]\ntry:\n result = ssender.send_with_param(86, phone_numbers[0],\n template_id, params, sign=sms_sign, extend=\"\", ext=\"\")\nexcept HTTPError as e:\n print(e)\nexcept Exception as e:\n print(e)\n\nprint(result)\n```\n\n#### \u7edf\u4e00\u521b\u5efa\u5bf9\u8c61\n\n\u77ed\u4fe1\u548c\u8bed\u97f3\u5404\u7c7b\u7684\u5bf9\u8c61\u53ef\u4ee5\u901a\u8fc7 `qcloudsms_py.QcloudSms` \u7edf\u4e00\u521b\u5efa\uff0c\u8fd9\u79cd\n\u65b9\u5f0f\u53ef\u4ee5\u907f\u514d\u521b\u5efa\u5bf9\u8c61\u65f6\u591a\u6b21\u4f20\u5165\u53c2\u6570`appid` \u548c `appkey`, \u793a\u4f8b\u5982\u4e0b:\n\n```python\nfrom qcloudsms_py import QcloudSms\n\n# \u521b\u5efaQcloudSms\u5bf9\u8c61\nqcloudsms = QcloudSms(appid, appkey)\n\n# \u521b\u5efa\u5355\u53d1\u77ed\u4fe1(SmsSingleSender)\u5bf9\u8c61\nssender = qcloudsms.SmsSingleSender()\n\n# \u521b\u5efa\u4e0a\u4f20\u8bed\u97f3\u6587\u4ef6(VoiceFileUploader)\u5bf9\u8c61\nuploader = qcloudsms.VoiceFileUploader()\n```", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitub.com/qcloudsms/qcloudsms_py", "keywords": "", "license": "https://opensource.org/licenses/MIT", "maintainer": "", "maintainer_email": "", "name": "qcloudsms-py", "package_url": "https://pypi.org/project/qcloudsms-py/", "platform": "", "project_url": "https://pypi.org/project/qcloudsms-py/", "project_urls": { "Homepage": "https://gitub.com/qcloudsms/qcloudsms_py" }, "release_url": "https://pypi.org/project/qcloudsms-py/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "qcloudsms python sdk", "version": "0.1.3" }, "last_serial": 4032160, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ea19917da1f2b3916c6e446ac47f913d", "sha256": "274c699c2a6ed1f830b413b07ee26a455007dcfd7b6102aa64011790c9fd95f2" }, "downloads": -1, "filename": "qcloudsms_py-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ea19917da1f2b3916c6e446ac47f913d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43100, "upload_time": "2017-12-07T12:35:13", "url": "https://files.pythonhosted.org/packages/53/d8/0388a22277db8dab27078588858c4452f3efadb696939468fa1f8876a212/qcloudsms_py-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "3e12cfb7c7cc44cbe14d62416018621f", "sha256": "29c9c8e043630b8f5247cdc065e2686d6100ba4949558054e5c45f20912361c3" }, "downloads": -1, "filename": "qcloudsms_py-0.1.1.tar.gz", "has_sig": false, "md5_digest": "3e12cfb7c7cc44cbe14d62416018621f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43284, "upload_time": "2017-12-21T07:19:12", "url": "https://files.pythonhosted.org/packages/6b/02/d6298d6f93243c59cae9ca3b6de1e5830edb7031badef8fdea87f3359560/qcloudsms_py-0.1.1.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "c74acd5217661c9bd4d18d7da3fc64cb", "sha256": "95d75c2c2049f0e32bf03456533c5815b3103d3bcc7d7dc442e57d4731ea7ba4" }, "downloads": -1, "filename": "qcloudsms_py-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c74acd5217661c9bd4d18d7da3fc64cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59228, "upload_time": "2018-07-05T08:00:31", "url": "https://files.pythonhosted.org/packages/de/02/17e04b3a0b45989bfb11413b7b2ce6dc8ac44f659fb81e05867785461995/qcloudsms_py-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c74acd5217661c9bd4d18d7da3fc64cb", "sha256": "95d75c2c2049f0e32bf03456533c5815b3103d3bcc7d7dc442e57d4731ea7ba4" }, "downloads": -1, "filename": "qcloudsms_py-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c74acd5217661c9bd4d18d7da3fc64cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 59228, "upload_time": "2018-07-05T08:00:31", "url": "https://files.pythonhosted.org/packages/de/02/17e04b3a0b45989bfb11413b7b2ce6dc8ac44f659fb81e05867785461995/qcloudsms_py-0.1.3.tar.gz" } ] }