Skip to main content

Using LINE Notify more easily

Project description

Lotify - LINE Notify client SDK

License: MIT PRs Welcome Build Status pypi package Python Version

📖 Chinese traditional version

Lotify is a LINE Notify client SDK that you can build Notify bot quickly.

If you programing language is not python, here can find other language version:

Usage

You need a LINE account and create a Notify like this:

create-a-line-notify

Install package

pip install lotify

You can find sample - flask-line-notify

Environment variables

Input those variables in your .env file or OS environment (using export),

then you don't need to input any parameters in initialize step.

LINE_NOTIFY_CLIENT_ID
LINE_NOTIFY_CLIENT_SECRET
LINE_NOTIFY_REDIRECT_URI

Initialize instance

  • If you already have Notify environment variables:
from lotify.client import Client

client = Client()
  • else:
from lotify.client import Client

client = Client(
    client_id='YOUR_CLIENT_ID',
    client_secret='YOUR_CLIENT_SECRET',
    redirect_uri='YOUR_URI'
)

Get authorizer link

link = client.get_auth_link(state='RANDOM_STRING')
print(link)
# https://notify-bot.line.me/oauth/authorize?scope=notify&response_type=code&client_id=QxUxF..........i51eITH&redirect_uri=http%3A%2F%2Flocalhost%3A5000%2Fnotify&state=foo

Get access token

access_token = client.get_access_token(code='NOTIFY_RESPONSE_CODE')
print(access_token)
# N6g50DiQZk5Xh...25FoFzrs2npkU3z

Get Status

status = client.status(access_token='YOUR_ACCESS_TOKEN')
print(status)
# {'status': 200, 'message': 'ok', 'targetType': 'USER', 'target': 'NiJia Lin'}

Send message

push-notify

response = client.send_message(access_token='YOUR_ACCESS_TOKEN', message='This is notify message')
print(response)
# {'status': 200, 'message': 'ok'}

Send message with Sticker

push-notify-with-sticker

You can find stickerId and stickerPackageId here.

response = client.send_message_with_sticker(
    access_token='YOUR_ACCESS_TOKEN',
    message='This is notify message',
    sticker_id=1,
    sticker_package_id=1)
print(response)
# {'status': 200, 'message': 'ok'}

Send message with Files

send-message-with-image-path

image = client.send_message_with_image_file(
    access_token='YOUR_ACCESS_TOKEN',
    message='This is notify message',
    file=open('./test_image.png', 'rb')
)
print(image)
# {'status': 200, 'message': 'ok'}

Send message with Image url

send-message-with-image-url

image = client.send_message_with_image_url(
    access_token='YOUR_ACCESS_TOKEN',
    message='This is notify message',
    image_thumbnail='https://i.imgur.com/RhvwZVm.png',
    image_fullsize='https://i.imgur.com/RhvwZVm.png',
)
print(image)
# {'status': 200, 'message': 'ok'}

Revoke access token

revoke-line-notify-token

revoke = client.revoke(access_token='YOUR_ACCESS_TOKEN')
print(revoke)
# {'status': 200, 'message': 'ok'}

Contributing

Fork before Clone the repository:

git clone git@github.com:your-username/line-notify.git

First install for development.

pip install -r requirements-dev.txt

Run pytest to make sure the tests pass:

cd line-notify/
python -m tox
python -m pytest --flake8 tests/

License

MIT © NiJia Lin & Duncan Huang

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lotify-2.2.3.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

lotify-2.2.3-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file lotify-2.2.3.tar.gz.

File metadata

  • Download URL: lotify-2.2.3.tar.gz
  • Upload date:
  • Size: 5.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

File hashes

Hashes for lotify-2.2.3.tar.gz
Algorithm Hash digest
SHA256 978f6355d9ced43c3603e8161bdec9cd87bb027b958486fa12c11863f15b1e4f
MD5 29318b10bb1745e63c084f67b5800c74
BLAKE2b-256 a2cacde888cc0f130fcda4e64f7386befbf1a1441ebf7d30e8104c1748cb1b74

See more details on using hashes here.

File details

Details for the file lotify-2.2.3-py3-none-any.whl.

File metadata

  • Download URL: lotify-2.2.3-py3-none-any.whl
  • Upload date:
  • Size: 5.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.2 CPython/3.9.1

File hashes

Hashes for lotify-2.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 2704940150b2d582231fe78707b5f3f57ec320084660228b06b6b1ccba852141
MD5 f36319881f9d8ffaede6809c9831ca63
BLAKE2b-256 0239c6c53e3e7c4d7195c4bbd36039b17ff5092d00a003961f42badb15c4053d

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page