En este artículo, discutiremos dos aplicaciones y cómo se pueden configurar usando python para enviar notificaciones.
bala de empuje
Pushbullet , un destacado paquete de Python, que conecta varios dispositivos mediante el código de Python. En este artículo, discutiremos cómo enviar mensajes o notificaciones a través de él. Usando nuestra computadora y el código python, enviaremos algunos mensajes a la aplicación pushbullet instalada en un dispositivo móvil, que tiene la misma identificación de inicio de sesión que la de la computadora. Para esto primero, necesitaremos crear una cuenta en Pushbullet.com e iniciar sesión en ella, tanto desde la computadora como desde el teléfono.
Configuración:
- Configure una cuenta Pushbullet en su PC y teléfono
- para ordenador
- Ir a Pushbullet.com
- Crea una cuenta
- para ordenador
- para telefono
- Instale la aplicación Pushbullet en su teléfono.
- Inicie sesión con la misma dirección de correo electrónico que utilizó para iniciar sesión en su PC.
Ahora pasemos a la parte del código Python y comprendamos cómo se debe planificar cada requisito para realizar la funcionalidad.
- Instale los siguientes módulos enumerados a continuación
# Used for sending the Push notifications. pip install pushbullet.py==0.9.1 # Used for the interface at the output window. pip install pywebio
- Importar todos los módulos requeridos
- Vaya a Pushbullet y obtenga el token de acceso.
- Obtenga su token de acceso y use el método PushBullet para crear una instancia proporcionando el token de acceso en la función PushBullet .
Sintaxis:
PushBullet(token_de_acceso)
- Utilice la función push_note para enviar datos y texto dentro de la función. push_note tomará dos argumentos, es decir, datos y texto. el primer argumento funcionará como un encabezado en la notificación donde el segundo argumento es un texto.
Sintaxis:
pb.push_note(datos, texto)
A continuación se muestra la implementación completa.
Python3
# Import the following modules from pushbullet import PushBullet from pywebio.input import * from pywebio.output import * from pywebio.session import * import time # Get the access token from Pushbullet.com access_token = "Your Access Token" # Taking input from the user data = input('Title') # Taking large text input from the user text = textarea( "Text", rows=3, placeholder="Write something...", required=True) # Get the instance using access token pb = PushBullet(access_token) # Send the data by passing the main title # and text to be send push = pb.push_note(data, text) # Put a success message after sending # the notification put_success("Message sent successfully...") # Sleep for 3 seconds time.sleep(3) # Clear the screen clear() # Give the pop at last toast("Thanks for using it :)") # hold the session until the whole work finishes hold()
Hay una forma más de hacer lo mismo, discutida a continuación. En este método, se envía un mensaje predefinido como notificación.
Para esto, primero importe los módulos requeridos y obtenga su token de acceso.
Sintaxis:
TOKEN = 'Your Access Token'
Luego haga un diccionario con toda la información que desea enviar en el cuerpo.
Sintaxis:
mensaje = {“tipo”: “nota”, “título”: título, “cuerpo”: cuerpo}
Ahora, para enviar la solicitud de publicaciones , use el método de publicaciones especificado en el módulo de requests. Empuje el Pushbullet a lo largo de todo el camino. Ahora use json.dumps para volcar todos los datos en una variable de datos.
Ahora pase el diccionario a la variable de encabezado, que incluye la autorización del remitente, su token de acceso y los tipos de contenido, que en este caso es application/json.
Sintaxis:
request.post(‘url’, data=json.dumps(msg), headers={‘Autorización’: ‘Portador’ + TOKEN, Tipo de contenido’: ‘aplicación/json’})
Ahora mire el código de estado de respuesta; si es 200, hemos tenido un error; de lo contrario, nuestro mensaje habrá sido enviado correctamente.
A continuación se muestra la implementación completa.
Programa:
Python3
# Import the following modules import requests import json # Function to send Push Notification def pushbullet_noti(title, body): TOKEN = 'Your Access Token' # Pass your Access Token here # Make a dictionary that includes, title and body msg = {"type": "note", "title": title, "body": body} # Sent a posts request resp = requests.post('https://api.pushbullet.com/v2/pushes', data=json.dumps(msg), headers={'Authorization': 'Bearer ' + TOKEN, 'Content-Type': 'application/json'}) if resp.status_code != 200: # Check if fort message send with the help of status code raise Exception('Error', resp.status_code) else: print('Message sent') pushbullet_noti("Hey", "How you doing?")
Producción:
Flojo
En esta parte, nos ocuparemos de publicar mensajes desde el script de python que aparecerán en holgura. Para esto, necesitamos hacer uso de webhooks . Puede enviar mensajes automáticos de una aplicación a otra mediante webhooks. Cuando crea un webhook entrante, se le proporciona una URL única a la que puede enviar una carga JSON que incluye el texto del mensaje y algunos parámetros.
Configuración
Cree un espacio de trabajo de Slack aquí y cree su propia aplicación.
- ir a Explorar Slack
- Seleccionar aplicaciones
- Una ventana nueva aparecerá. Desde allí, seleccione Directorio de aplicaciones
- Ahora selecciona Construir
- Nuevamente se abrirá una nueva ventana, seleccione crear una aplicación
- Seleccionar desde cero
- Establecer el nombre de la aplicación y el espacio de trabajo
- Luego crea la aplicación
- Seleccionar webhooks entrantes
- Active la activación de webhooks entrantes y agregue un nuevo webhook al espacio de trabajo
- selecciona un bot y dale permiso de acceso
- Copie la URL del webhook, ya que se usará más adelante.
Ahora que creamos la aplicación y obtuvimos la URL del webhook, es hora de comenzar a codificar.
Primero tenemos que importar todos los módulos requeridos. Ahora, obtenga la URL de su webhook y guárdela en la variable. En una variable, guarde el mensaje y el título que desea enviar.
Ahora es el momento de hacer todos los datos de holgura que queremos enviar. Consiste en tu nombre de usuario y en la sección Adjunto tenemos:
- El color que quieras elegir.
- Los campos constan de las siguientes cosas:
- Título de nuestro mensaje.
- El mensaje que queremos enviar.
- Corto significa que el mensaje de visualización debe ser de tipo clasificado o largo.
Ahora, con el uso del módulo sys , obtendremos el tamaño de los datos de holgura y los almacenaremos en una variable. Ahora, para los encabezados , definiremos Content-Type y Content-Length . Utilice el método de publicación del módulo de requests para publicar todos los datos después de descargarlos utilizando la función de volcados del módulo json . Por último, verifique si la respuesta es válida o no con el uso de un código de estado.
Programa: Envío de notificaciones a través de slack
Python3
# Import the following modules import json import sys import requests import base64 if __name__ == '__main__': # Webhooks URL url = "https://hooks.slack.com/services/xxxyyyzzz" # Message you wanna send message = ( "Hi there!, GeeksforGeeks is the Best Learning Platform\ for Computer Science Students") # Title title = (f"GeeksforGeeks Bot :satellite:") # All slack data slack_data = { "username": "Testing", "attachments": [ { "color": "#FF0000", "fields": [ { "title": title, "value": message, "short": "false", } ] } ] } # Size of the slack data byte_length = str(sys.getsizeof(slack_data)) headers = {'Content-Type': "application/json", 'Content-Length': byte_length} # Posting requests after dumping the slack data response = requests.post(url, data=json.dumps(slack_data), headers=headers) # Post request is valid or not! if response.status_code != 200: raise Exception(response.status_code, response.text)
Producción:
Publicación traducida automáticamente
Artículo escrito por gittysatyam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA