diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-twilio.spec | 717 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 719 insertions, 0 deletions
@@ -0,0 +1 @@ +/twilio-7.16.5.tar.gz diff --git a/python-twilio.spec b/python-twilio.spec new file mode 100644 index 0000000..0373195 --- /dev/null +++ b/python-twilio.spec @@ -0,0 +1,717 @@ +%global _empty_manifest_terminate_build 0 +Name: python-twilio +Version: 7.16.5 +Release: 1 +Summary: Twilio API client and TwiML generator +License: MIT License +URL: https://github.com/twilio/twilio-python/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/3c/42/b9c073e40fc001213e9c97b474132e7e3b7deea9088febcf97f21f1f3c04/twilio-7.16.5.tar.gz +BuildArch: noarch + +Requires: python3-pytz +Requires: python3-requests +Requires: python3-PyJWT + +%description +# twilio-python + +[](https://github.com/twilio/twilio-python/actions/workflows/test-and-deploy.yml) +[](https://pypi.python.org/pypi/twilio) +[](https://pypi.python.org/pypi/twilio) +[](https://twil.io/learn-open-source) + +## Documentation + +The documentation for the Twilio API can be found [here][apidocs]. + +The Python library documentation can be found [here][libdocs]. + +## Versions + +`twilio-python` uses a modified version of [Semantic Versioning](https://semver.org) for all changes. [See this document](VERSIONS.md) for details. + +### Migrating from 5.x + +Please consult the [official migration guide](https://www.twilio.com/docs/libraries/python/migration-guide) for information on upgrading your application using twilio-python 5.x to 6.x + +### Supported Python Versions + +This library supports the following Python implementations: + +* Python 3.6 +* Python 3.7 +* Python 3.8 +* Python 3.9 +* Python 3.10 +* Python 3.11 + +## Installation + +Install from PyPi using [pip](https://pip.pypa.io/en/latest/), a +package manager for Python. + + pip install twilio + +If pip install fails on Windows, check the path length of the directory. If it is greater 260 characters then enable [Long Paths](https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation) or choose other shorter location. + +Don't have pip installed? Try installing it, by running this from the command +line: + + $ curl https://bootstrap.pypa.io/get-pip.py | python + +Or, you can [download the source code +(ZIP)](https://github.com/twilio/twilio-python/zipball/main "twilio-python +source code") for `twilio-python`, and then run: + + python setup.py install + +You may need to run the above commands with `sudo`. + +## Getting Started + +Getting started with the Twilio API couldn't be easier. Create a +`Client` and you're ready to go. + +### API Credentials + +The `Twilio` needs your Twilio credentials. You can either pass these +directly to the constructor (see the code below) or via environment variables. + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) +``` + +Alternatively, a `Client` constructor without these parameters will +look for `TWILIO_ACCOUNT_SID` and `TWILIO_AUTH_TOKEN` variables inside the +current environment. + +We suggest storing your credentials as environment variables. Why? You'll never +have to worry about committing your credentials and accidentally posting them +somewhere public. + + +```python +from twilio.rest import Client +client = Client() +``` + +### Specify Region and/or Edge + +To take advantage of Twilio's [Global Infrastructure](https://www.twilio.com/docs/global-infrastructure), specify the target Region and/or Edge for the client: + +```python +from twilio.rest import Client + +client = Client(region='au1', edge='sydney') +``` +A `Client` constructor without these parameters will also look for `TWILIO_REGION` and `TWILIO_EDGE` variables inside the current environment. + +Alternatively, you may specify the edge and/or region after constructing the Twilio client: + +```python +from twilio.rest import Client + +client = Client() +client.region = 'au1' +client.edge = 'sydney' +``` + +This will result in the `hostname` transforming from `api.twilio.com` to `api.sydney.au1.twilio.com`. + +### Make a Call + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +call = client.calls.create(to="9991231234", + from_="9991231234", + url="http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient") +print(call.sid) +``` + +### Send an SMS + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +``` + +### Enable Debug Logging + +Log the API request and response data to the console: + +```python +import logging + +client = Client(account, token) +logging.basicConfig() +client.http_client.logger.setLevel(logging.INFO) +``` + +Log the API request and response data to a file: + +```python +import logging + +client = Client(account, token) +logging.basicConfig(filename='./log.txt') +client.http_client.logger.setLevel(logging.INFO) +``` + +### Handling Exceptions + +```python +from twilio.rest import Client +from twilio.base.exceptions import TwilioRestException + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +try: + message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +except TwilioRestException as e: + print(e) +``` + +For more descriptive exception types, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/usage-guide#exceptions). + +### Generating TwiML + +To control phone calls, your application needs to output [TwiML][twiml]. + +Use `twilio.twiml.Response` to easily create such responses. + +```python +from twilio.twiml.voice_response import VoiceResponse + +r = VoiceResponse() +r.say("Welcome to twilio!") +print(str(r)) +``` + +```xml +<?xml version="1.0" encoding="utf-8"?> +<Response><Say>Welcome to twilio!</Say></Response> +``` + +### Using a Custom HTTP Client + +To use a custom HTTP client with this helper library, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/custom-http-clients-python). + +### Docker Image + +The `Dockerfile` present in this repository and its respective `twilio/twilio-python` Docker image are currently used by Twilio for testing purposes only. + +### Getting help + +If you need help installing or using the library, please check the [Twilio Support Help Center](https://support.twilio.com) first, and [file a support ticket](https://twilio.com/help/contact) if you don't find an answer to your question. + +If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo! + +[apidocs]: https://www.twilio.com/docs/api +[twiml]: https://www.twilio.com/docs/api/twiml +[libdocs]: https://twilio.github.io/twilio-python + + +%package -n python3-twilio +Summary: Twilio API client and TwiML generator +Provides: python-twilio +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-twilio +# twilio-python + +[](https://github.com/twilio/twilio-python/actions/workflows/test-and-deploy.yml) +[](https://pypi.python.org/pypi/twilio) +[](https://pypi.python.org/pypi/twilio) +[](https://twil.io/learn-open-source) + +## Documentation + +The documentation for the Twilio API can be found [here][apidocs]. + +The Python library documentation can be found [here][libdocs]. + +## Versions + +`twilio-python` uses a modified version of [Semantic Versioning](https://semver.org) for all changes. [See this document](VERSIONS.md) for details. + +### Migrating from 5.x + +Please consult the [official migration guide](https://www.twilio.com/docs/libraries/python/migration-guide) for information on upgrading your application using twilio-python 5.x to 6.x + +### Supported Python Versions + +This library supports the following Python implementations: + +* Python 3.6 +* Python 3.7 +* Python 3.8 +* Python 3.9 +* Python 3.10 +* Python 3.11 + +## Installation + +Install from PyPi using [pip](https://pip.pypa.io/en/latest/), a +package manager for Python. + + pip install twilio + +If pip install fails on Windows, check the path length of the directory. If it is greater 260 characters then enable [Long Paths](https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation) or choose other shorter location. + +Don't have pip installed? Try installing it, by running this from the command +line: + + $ curl https://bootstrap.pypa.io/get-pip.py | python + +Or, you can [download the source code +(ZIP)](https://github.com/twilio/twilio-python/zipball/main "twilio-python +source code") for `twilio-python`, and then run: + + python setup.py install + +You may need to run the above commands with `sudo`. + +## Getting Started + +Getting started with the Twilio API couldn't be easier. Create a +`Client` and you're ready to go. + +### API Credentials + +The `Twilio` needs your Twilio credentials. You can either pass these +directly to the constructor (see the code below) or via environment variables. + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) +``` + +Alternatively, a `Client` constructor without these parameters will +look for `TWILIO_ACCOUNT_SID` and `TWILIO_AUTH_TOKEN` variables inside the +current environment. + +We suggest storing your credentials as environment variables. Why? You'll never +have to worry about committing your credentials and accidentally posting them +somewhere public. + + +```python +from twilio.rest import Client +client = Client() +``` + +### Specify Region and/or Edge + +To take advantage of Twilio's [Global Infrastructure](https://www.twilio.com/docs/global-infrastructure), specify the target Region and/or Edge for the client: + +```python +from twilio.rest import Client + +client = Client(region='au1', edge='sydney') +``` +A `Client` constructor without these parameters will also look for `TWILIO_REGION` and `TWILIO_EDGE` variables inside the current environment. + +Alternatively, you may specify the edge and/or region after constructing the Twilio client: + +```python +from twilio.rest import Client + +client = Client() +client.region = 'au1' +client.edge = 'sydney' +``` + +This will result in the `hostname` transforming from `api.twilio.com` to `api.sydney.au1.twilio.com`. + +### Make a Call + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +call = client.calls.create(to="9991231234", + from_="9991231234", + url="http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient") +print(call.sid) +``` + +### Send an SMS + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +``` + +### Enable Debug Logging + +Log the API request and response data to the console: + +```python +import logging + +client = Client(account, token) +logging.basicConfig() +client.http_client.logger.setLevel(logging.INFO) +``` + +Log the API request and response data to a file: + +```python +import logging + +client = Client(account, token) +logging.basicConfig(filename='./log.txt') +client.http_client.logger.setLevel(logging.INFO) +``` + +### Handling Exceptions + +```python +from twilio.rest import Client +from twilio.base.exceptions import TwilioRestException + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +try: + message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +except TwilioRestException as e: + print(e) +``` + +For more descriptive exception types, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/usage-guide#exceptions). + +### Generating TwiML + +To control phone calls, your application needs to output [TwiML][twiml]. + +Use `twilio.twiml.Response` to easily create such responses. + +```python +from twilio.twiml.voice_response import VoiceResponse + +r = VoiceResponse() +r.say("Welcome to twilio!") +print(str(r)) +``` + +```xml +<?xml version="1.0" encoding="utf-8"?> +<Response><Say>Welcome to twilio!</Say></Response> +``` + +### Using a Custom HTTP Client + +To use a custom HTTP client with this helper library, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/custom-http-clients-python). + +### Docker Image + +The `Dockerfile` present in this repository and its respective `twilio/twilio-python` Docker image are currently used by Twilio for testing purposes only. + +### Getting help + +If you need help installing or using the library, please check the [Twilio Support Help Center](https://support.twilio.com) first, and [file a support ticket](https://twilio.com/help/contact) if you don't find an answer to your question. + +If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo! + +[apidocs]: https://www.twilio.com/docs/api +[twiml]: https://www.twilio.com/docs/api/twiml +[libdocs]: https://twilio.github.io/twilio-python + + +%package help +Summary: Development documents and examples for twilio +Provides: python3-twilio-doc +%description help +# twilio-python + +[](https://github.com/twilio/twilio-python/actions/workflows/test-and-deploy.yml) +[](https://pypi.python.org/pypi/twilio) +[](https://pypi.python.org/pypi/twilio) +[](https://twil.io/learn-open-source) + +## Documentation + +The documentation for the Twilio API can be found [here][apidocs]. + +The Python library documentation can be found [here][libdocs]. + +## Versions + +`twilio-python` uses a modified version of [Semantic Versioning](https://semver.org) for all changes. [See this document](VERSIONS.md) for details. + +### Migrating from 5.x + +Please consult the [official migration guide](https://www.twilio.com/docs/libraries/python/migration-guide) for information on upgrading your application using twilio-python 5.x to 6.x + +### Supported Python Versions + +This library supports the following Python implementations: + +* Python 3.6 +* Python 3.7 +* Python 3.8 +* Python 3.9 +* Python 3.10 +* Python 3.11 + +## Installation + +Install from PyPi using [pip](https://pip.pypa.io/en/latest/), a +package manager for Python. + + pip install twilio + +If pip install fails on Windows, check the path length of the directory. If it is greater 260 characters then enable [Long Paths](https://docs.microsoft.com/en-us/windows/win32/fileio/maximum-file-path-limitation) or choose other shorter location. + +Don't have pip installed? Try installing it, by running this from the command +line: + + $ curl https://bootstrap.pypa.io/get-pip.py | python + +Or, you can [download the source code +(ZIP)](https://github.com/twilio/twilio-python/zipball/main "twilio-python +source code") for `twilio-python`, and then run: + + python setup.py install + +You may need to run the above commands with `sudo`. + +## Getting Started + +Getting started with the Twilio API couldn't be easier. Create a +`Client` and you're ready to go. + +### API Credentials + +The `Twilio` needs your Twilio credentials. You can either pass these +directly to the constructor (see the code below) or via environment variables. + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) +``` + +Alternatively, a `Client` constructor without these parameters will +look for `TWILIO_ACCOUNT_SID` and `TWILIO_AUTH_TOKEN` variables inside the +current environment. + +We suggest storing your credentials as environment variables. Why? You'll never +have to worry about committing your credentials and accidentally posting them +somewhere public. + + +```python +from twilio.rest import Client +client = Client() +``` + +### Specify Region and/or Edge + +To take advantage of Twilio's [Global Infrastructure](https://www.twilio.com/docs/global-infrastructure), specify the target Region and/or Edge for the client: + +```python +from twilio.rest import Client + +client = Client(region='au1', edge='sydney') +``` +A `Client` constructor without these parameters will also look for `TWILIO_REGION` and `TWILIO_EDGE` variables inside the current environment. + +Alternatively, you may specify the edge and/or region after constructing the Twilio client: + +```python +from twilio.rest import Client + +client = Client() +client.region = 'au1' +client.edge = 'sydney' +``` + +This will result in the `hostname` transforming from `api.twilio.com` to `api.sydney.au1.twilio.com`. + +### Make a Call + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +call = client.calls.create(to="9991231234", + from_="9991231234", + url="http://twimlets.com/holdmusic?Bucket=com.twilio.music.ambient") +print(call.sid) +``` + +### Send an SMS + +```python +from twilio.rest import Client + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +``` + +### Enable Debug Logging + +Log the API request and response data to the console: + +```python +import logging + +client = Client(account, token) +logging.basicConfig() +client.http_client.logger.setLevel(logging.INFO) +``` + +Log the API request and response data to a file: + +```python +import logging + +client = Client(account, token) +logging.basicConfig(filename='./log.txt') +client.http_client.logger.setLevel(logging.INFO) +``` + +### Handling Exceptions + +```python +from twilio.rest import Client +from twilio.base.exceptions import TwilioRestException + +account = "ACXXXXXXXXXXXXXXXXX" +token = "YYYYYYYYYYYYYYYYYY" +client = Client(account, token) + +try: + message = client.messages.create(to="+12316851234", from_="+15555555555", + body="Hello there!") +except TwilioRestException as e: + print(e) +``` + +For more descriptive exception types, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/usage-guide#exceptions). + +### Generating TwiML + +To control phone calls, your application needs to output [TwiML][twiml]. + +Use `twilio.twiml.Response` to easily create such responses. + +```python +from twilio.twiml.voice_response import VoiceResponse + +r = VoiceResponse() +r.say("Welcome to twilio!") +print(str(r)) +``` + +```xml +<?xml version="1.0" encoding="utf-8"?> +<Response><Say>Welcome to twilio!</Say></Response> +``` + +### Using a Custom HTTP Client + +To use a custom HTTP client with this helper library, please see the [Twilio documentation](https://www.twilio.com/docs/libraries/python/custom-http-clients-python). + +### Docker Image + +The `Dockerfile` present in this repository and its respective `twilio/twilio-python` Docker image are currently used by Twilio for testing purposes only. + +### Getting help + +If you need help installing or using the library, please check the [Twilio Support Help Center](https://support.twilio.com) first, and [file a support ticket](https://twilio.com/help/contact) if you don't find an answer to your question. + +If you've instead found a bug in the library or would like new features added, go ahead and open issues or pull requests against this repo! + +[apidocs]: https://www.twilio.com/docs/api +[twiml]: https://www.twilio.com/docs/api/twiml +[libdocs]: https://twilio.github.io/twilio-python + + +%prep +%autosetup -n twilio-7.16.5 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-twilio -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Thu Mar 09 2023 Python_Bot <Python_Bot@openeuler.org> - 7.16.5-1 +- Package Spec generated @@ -0,0 +1 @@ +5cdd49d122f210a41fbef54bda93d713 twilio-7.16.5.tar.gz |