python Comment notifier automatiquement par téléphone lorsque le système tombe en panne

Contexte

Le serveur fonctionne comme un PJ personnel. Je souhaite récupérer immédiatement lorsqu'une erreur fatale se produit. Méthode de notification Que dois-je faire

Solutions communes

Pour Django, il existe une Notification d'erreur par e-mail.

Problèmes avec les solutions courantes

S'il s'agit de gmail, il sera traité comme du SPAM et jeté dans le courrier indésirable. Il en va de même pour le courrier du transporteur. Traité comme du SPAM. Il est très gênant de paramétrer le mail du serveur pour qu'il ne soit pas traité comme du SPAM.

J'ai essayé d'utiliser Twilio

Une entreprise américaine avec KDDI comme agent au Japon Un service pour passer des appels via API. Page officielle du Japon Twilio

La facture de téléphone fera-t-elle faillite ou mourra-t-elle?

Le plan tarifaire se concentre sur l'envoi de SMS, la réception d'appels et les appels. Il est conçu pour ne pas prendre la forme d'un appel et d'un appel entrant. Il peut être utilisé gratuitement dans une certaine mesure. Si vous passez simplement un appel et que vous laissez l'historique des appels entrants, il semble que vous puissiez l'utiliser gratuitement.

Il semble que ce sera 189 yens par mois lors de la charge. haute. Stable à utiliser uniquement gratuitement. スクリーンショット 2015-03-30 23.00.43.png

Enregistrement du Compte

Enregistrement du compte et émettez le jeu de 3 pièces suivant ・ Numéro de téléphone appelant ・ ACCOUNT_SID ・ AUTH_TOKEN

Installation

shell


pip install twilio

Passer un appel téléphonique

from twilio.rest import TwilioRestClient
ACCOUNT_SID = "ABCDEFG"
AUTH_TOKEN = "0x0x0x0x0x0x"
FROM_CALL_NUMBER = "8109012345678"
TO_CALL_NUMBER = "8109011223344"

client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN)
call = client.calls.create(to=TO_CALL_NUMBER, from_=FROM_CALL_NUMBER,
                           url="http://foo.com/call.xml")
print call.length
print call.sid

J'ai appelé

Appel entrant dans environ 15 secondes après avoir touché l'API スクリーンショット 2015-03-30 23.17.23.png

Recommended Posts

python Comment notifier automatiquement par téléphone lorsque le système tombe en panne
Comment effacer les caractères générés par Python
Qu'advient-il du journal d'accès lorsque le site Web est automatiquement accédé par sélénium-webdriver
Comment changer le fichier de configuration pour qu'il soit lu par Python
Comment obtenir la version Python
Utilisons AWS Lambda pour créer un mécanisme pour notifier Slack lorsque la valeur surveillée par CloudWatch est dépassée sur Python
Comment déterminer qu'une clé croisée a été entrée dans Python3
Comment utiliser l'astérisque (*) en Python. C'est peut-être tout? ..
Que faire lorsque le type de valeur est ambigu en Python?
Écrivez un script dans Shell et Python pour vous avertir dans Slack lorsque le processus est terminé
Comment gérer le problème du déplacement du répertoire actuel lorsque Python est exécuté depuis Atom
Comment utiliser is et == en Python
[Python Kivy] Comment obtenir le chemin du fichier par glisser-déposer
[PostgreSQL] Comment accorder une autorité de superutilisateur lorsque le nombre d'utilisateurs (rôles) avec l'autorité de superutilisateur est de 0.
[Python] Qu'est-ce qu'un argument formel? Comment définir la valeur initiale
Comment masquer l'invite de commande lors de l'exécution de python dans Visual Studio 2015
Notifier à l'aide du Centre de notifications lorsque l'environnement d'exécution est macOS en Python
Comment trier en spécifiant une colonne dans le tableau Python Numpy.
Comment démarrer Python (Flask) au démarrage d'EC2
[python] Comment afficher les éléments de la liste côte à côte
Comment utiliser la bibliothèque C en Python
[Python] Comment changer le format de la date (format d'affichage)
Comment lire toutes les classes contenues dans * .py dans le répertoire spécifié par Python
[python] Comment trier par le Nth Mth élément d'un tableau multidimensionnel
[Algorithm x Python] Comment utiliser la liste
Comment obtenir les fichiers dans le dossier [Python]
Notifier slack lorsque la page de vente du commutateur est mise à jour ~ développement de bot slack avec python ③ ~
[Python] Comment trier les instances par variables d'instance
Tutoriel "Cython" qui rend Python explosif: Gérer le passage de fonctions côté C ++ par référence.
[Introduction à Python] Quelle est la méthode d'installation recommandée du système de gestion de paquets pip?
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
[Introduction à Python] Quel est l'important "if __name__ == '__ main__':" lorsqu'il s'agit de modules?
[Python] Comment supprimer les valeurs en double de la liste
Comment récupérer la nième plus grande valeur en Python
Comment obtenir le nom de la variable lui-même en python
Réfléchissez à la programmation de Python sur votre iPad
Comment obtenir le nombre de chiffres en Python
[Introduction à Python] Comment itérer avec la fonction range?
Comment connaître le répertoire actuel en Python dans Blender
[Réintroduction à python] Comment importer via le répertoire parent
Comment désactiver la fonction de référence lors de la sortie de PyYaml
Comment utiliser Raspeye Relay Module Python
Le datetime Python3 est plus rapide en spécifiant simplement le fuseau horaire
[Python] Comment spécifier l'emplacement de téléchargement avec youtube-dl
Lisez le fichier xml en vous référant au didacticiel Python
[Python] Comment utiliser la bibliothèque de création de graphes Altair
Comment savoir quelle version de Java Maven utilise
python Spécifie la fonction à exécuter lorsque le programme se termine
[Introduction à Udemy Python3 + Application] 27. Comment utiliser le dictionnaire
Comment enregistrer une table récupérée par python en csv
[Introduction à Udemy Python3 + Application] 30. Comment utiliser l'ensemble
[Python] Résumé de la façon de spécifier la couleur de la figure
Comment utiliser le modèle appris dans Lobe en Python
[Introduction à Python] Comment arrêter la boucle en utilisant break?
[Python] Comment réécrire le style de table avec python-pptx [python-pptx]
Comment profiter de Python sur Android !! Programmation en déplacement !!
[Python] Comment afficher les valeurs de liste dans l'ordre
Comment supprimer le préfixe du nom de base de données utilisé par pytest-django
Comment installer Python
Comment installer python