import pika import sys import os import json import datetime import re import config from pymongo import MongoClient from msg import msg import requests import time def main(): connection = pika.BlockingConnection(pika.ConnectionParameters( "192.168.0.20", 5672, "mkt", pika.PlainCredentials( "rabbit", "mrl2X0jwnYuCCiKFTshG7WKyOAhfDo") )) channel = connection.channel() def callback(ch, method, properties, body: bytearray): srcJson = json.loads(str(body.decode('utf-8')).replace("\'", "\"")) # if srcJson['state'] == 'HANGUP' and srcJson['direction'] == 'incoming' and srcJson['from'] == '89135853246': try: if srcJson['callstatus'] != 'ANSWER': print(srcJson) except: pass channel.basic_consume( queue='copy_incoming', on_message_callback=callback, auto_ack=False) print(' [*] Waiting for messages. To exit press CTRL+C') channel.start_consuming() if __name__ == '__main__': try: main() except KeyboardInterrupt: print('Interrupted') try: sys.exit(0) except SystemExit: os._exit(0)