Advertisement
Guest User

Untitled

a guest
Oct 14th, 2017
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. #!/usr/bin/env python
  2.  
  3. from asterisk.manager import Manager
  4.  
  5. user = "meowcat"
  6. password = "the_mix_is_good"
  7. ip = '127.0.0.1'
  8.  
  9. def createManager():
  10. """Returns a logged in manager"""
  11. manager = Manager()
  12. manager.connect(ip)
  13. manager.login(user, password)
  14. return manager
  15.  
  16. def isTalking(manager, channel):
  17. """Get the CallerID based on the
  18. channel the user is connected to
  19. """
  20. # Get all current sip channels
  21. status = manager.status()
  22. # Prep for fomating based on new line
  23. res = status.data.replace('\r'," ").strip()
  24. for caller_chan in res.split("\n"):
  25. try:
  26. if caller_chan:
  27. if caller_chan.strip().startswith('CallerIDNum:'):
  28. cid_num = caller_chan.split()[1]
  29. if channel.strip() == caller_chan.split()[1].strip():
  30. #print "Chan: %s cid_name: %s" % ( caller_chan, cid_num )
  31. except IndexError:
  32. pass
  33.  
  34. def handleTalk(event,manager):
  35. """Event handler for MeetmeTalking
  36. event.
  37. """
  38. if event.headers['Status'] == 'on':
  39. print "%s is talking" % event.headers['Channel']
  40. isTalking(manager, event.headers['Channel'])
  41. elif event.headers['Status'] == 'off':
  42. print "%s is nolongertalking" % event.headers['Channel']
  43. else:
  44. pass
  45.  
  46. def handleEvent(event,manager):
  47. print "Recived Event: %s" % event.name
  48.  
  49.  
  50. def main():
  51. manager = createManager()
  52. res = manager.status()
  53. print res.data
  54.  
  55. if __name__ == '__main__':
  56. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement