def start(self): account_sid = "AC36a9938f19a9480c595e857f2f1af7dd" auth_token = "264a2e58db9f0ccc58a3003c2c472164" print "test test" client = TwilioTaskRouterClient(account_sid, auth_token) # read in the age, and default to `0` if invalid or missing text = self.db.flow.get('text') or "" taskSid = self.db.user.user_id print self.db.user.user_id taskSid = "WTa38157b48040c397d19781f1857e05eb" angry_words = ['cancel', 'hate', 'suck', 'yelp'] words_re = re.compile("|".join(angry_words)) if words_re.search(text): action = "angry" else: action = "happy" task = client.tasks("WS056355824815f89c7cc46e5d8cacaf20").get(taskSid) task_attributes = json.loads(task.attributes) task_attributes['bot_qualified'] = 'true' task_attributes['bot_intent'] = action print task_attributes attribute_string = json.dumps(task_attributes) task = client.tasks("WS056355824815f89c7cc46e5d8cacaf20").update( taskSid, attributes=attribute_string) message = self.create_message(text=self.db.user.user_id) # the action determines which transition is invoked # note that no message is returned, just an action return self.respond(message=None, action=action)
def incoming_sms(request): """ Changes worker activity and returns a confirmation """ client = TwilioTaskRouterClient(ACCOUNT_SID, AUTH_TOKEN) activity = 'Idle' if request.POST['Body'].lower().strip() == 'on' else 'Offline' activity_sid = WORKSPACE_INFO.activities[activity].sid worker_sid = WORKSPACE_INFO.workers[request.POST['From']] workspace_sid = WORKSPACE_INFO.workspace_sid client.workers(workspace_sid).update(worker_sid, activity_sid=activity_sid) resp = twiml.Response() message = 'Your status has changed to ' + activity resp.message(message) return HttpResponse(resp)
class RestClientTest(unittest.TestCase): def setUp(self): self.client = TwilioRestClient("ACCOUNT_SID", "AUTH_TOKEN") self.task_router_client = TwilioTaskRouterClient("ACCOUNT_SID", "AUTH_TOKEN") @patch("twilio.rest.base.make_request") def test_request(self, mock): self.client.request("2010-04-01", method="GET") mock.assert_called_with("GET", "https://api.twilio.com/2010-04-01", headers={"User-Agent": ANY, 'Accept-Charset': 'utf-8', 'Authorization': 'Basic QUNDT1VOVF9TSUQ6QVVUSF9UT0tFTg=='}, params={}, auth=AUTH, data=None) called_kwargs = mock.mock_calls[0][2] self.assertTrue( 'twilio-python' in called_kwargs['headers']['User-Agent'] ) def test_connect_apps(self): assert_true(isinstance(self.client.connect_apps, resources.ConnectApps)) def test_authorized_apps(self): assert_true(isinstance(self.client.authorized_connect_apps, resources.AuthorizedConnectApps)) @patch("twilio.rest.resources.base.make_request") def test_conferences(self, mock): mock.return_value = Mock() mock.return_value.ok = True mock.return_value.content = '{"conferences": []}' self.client.conferences.list() @patch("twilio.rest.resources.base.make_twilio_request") def test_members(self, mock): resp = create_mock_json("tests/resources/members_list.json") mock.return_value = resp self.client.members("QU123").list() uri = "https://api.twilio.com/2010-04-01/Accounts/ACCOUNT_SID" \ "/Queues/QU123/Members" mock.assert_called_with("GET", uri, params={}, auth=AUTH, use_json_extension=True) @patch("twilio.rest.resources.base.make_request") def test_workflows(self, request): resp = create_mock_json( "tests/resources/task_router/workflows_list.json" ) request.return_value = resp workflows = self.task_router_client.workflows("WS123") workflows = workflows.list() assert_true(workflows[0].sid is not None) uri = "https://taskrouter.twilio.com/v1/Workspaces/WS123/Workflows" request.assert_called_with("GET", uri, headers=ANY, params={}, auth=AUTH)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for worker in client.workers(workspace_sid).list(Available=1): print(worker.friendly_name) for worker in client.workers(workspace_sid).list(TaskQueueSid="WQf855e98ad280d0a0a325628e24ca9627", Available=1): print(worker.friendly_name) for worker in client.workers(workspace_sid).list(TargetWorkersExpression="type == 'leads'"): print(worker.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" workflow_sid = "WWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) task = client.tasks(workspace_sid).create( workflow_sid=workflow_sid, attributes='{"type":"support"}' ) print(task.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # redirect using a reservation reservation = client.reservations(workspace_sid, task_sid).update( reservation_sid, Instruction='Redirect', RedirectCallSid='CA123456789', RedirectUrl='http://example.com/assignment_redirect' ) print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" task_sid = "{{ task_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) reservation = client.reservations(workspace_sid, task_sid).get(reservation_sid) print reservation.reservation_status print reservation.worker_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" workflow_sid = "WWXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) task = client.tasks(workspace_sid).create(workflow_sid=workflow_sid, attributes='{"type":"support"}') print(task.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) rules = [] sales_queue_sid = "{{ sales_queue_sid }}" marketing_queue_sid = "{{ marketing_queue_sid }}" support_queue_sid = "{{ support_queue_sid }}" everyone_queue_sid = "{{ everyone_queue_sid }}" salesRuleTargets = [] salesRuleTarget = WorkflowRuleTarget(sales_queue_sid, null, null, null) salesRuleTargets.append(salesRuleTarget) salesRule = WorkflowRule("type=='sales'", salesRuleTargets, null) marketingRuleTargets = [] marketingRuleTarget = WorkflowRuleTarget(marketing_queue_sid, null, null, null) marketingRuleTargets.append(marketingRuleTarget) marketingRule = WorkflowRule("type=='marketing'", marketingRuleTargets, null) supportRuleTargets = [] supportRuleTarget = WorkflowRuleTarget(support_queue_sid, null, null, null) supportRuleTargets.append(supportRuleTarget) supportRule = WorkflowRule("type=='support'", supportRuleTargets, null)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" taskqueue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) taskqueue = client.task_queues(workspace_sid).update(taskqueue_sid, target_workers='languages HAS "english"') print(taskqueue.target_workers) # alternatively taskqueue = client.task_queues(workspace_sid).get(taskqueue_sid) taskqueue = taskqueue.update(target_workers='languages HAS "english"') print(taskqueue.target_workers)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).create( friendly_name='NewAvailableActivity', available='true' ) print(activity.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = 'WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' client = TwilioTaskRouterClient(account_sid, auth_token) # reject a reservation reservation = client.workers(workspace_sid).get(worker_sid).reservations.update(reservation_sid, reservation_status='rejected') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for reservation in client.reservations(workspace_sid, task_sid).list(): print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # update a task's attributes task = client.tasks(workspace_sid).update(task_sid, attributes='{"type":"support"}') print(task.attributes) # alternatively task = client.tasks(workspace_sid).get(task_sid) task = task.update(attributes='{"type":"support"}') print(task.attributes) # cancel a task task = client.tasks(workspace_sid).update(task_sid, assignment_status='canceled', reason='waiting too long') print(task.assignment_status) print(task.reason)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" task_sid = "{{ task_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) task = client.tasks(workspace_sid).get(task_sid) print task.attributes
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) statistics = client.workers(workspace_sid).statistics.get() print statistics.cumulative["reservations_accepted"]
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient from twilio.task_router.workflow_ruletarget import WorkflowRuleTarget from twilio.task_router.workflow_rule import WorkflowRule from twilio.task_router.workflow_config import WorkflowConfig # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) rules = [] sales_queue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" marketing_queue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" support_queue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" everyone_queue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" salesRuleTargets = [] salesRuleTarget = WorkflowRuleTarget(sales_queue_sid, None, None, None) salesRuleTargets.append(salesRuleTarget) salesRule = WorkflowRule("type=='sales'", salesRuleTargets, None) marketingRuleTargets = [] marketingRuleTarget = WorkflowRuleTarget(marketing_queue_sid, None, None, None) marketingRuleTargets.append(marketingRuleTarget) marketingRule = WorkflowRule("type=='marketing'", marketingRuleTargets, None) supportRuleTargets = []
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.workers(workspace_sid).update( worker_sid, attributes='{"type":"support"}' ) print(activity.friendly_name) # alternatively worker = client.workers(workspace_sid).get(worker_sid) worker = worker.update(attributes='{"type":"support"}') print(worker.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).create( friendly_name='NewAvailableActivity', available='true') print activity.friendly_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) taskqueue = client.task_queues(workspace_sid).create( friendly_name='English', reservation_activity_sid='WAxxxx', assignment_activity_sid='WAyyyy', target_workers='languages HAS "english"') print(taskqueue.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # Update a Reservation with a Conference instruction reservation = client.reservations(workspace_sid, task_sid).update(reservation_sid, instruction='conference', dequeue_from='+18001231234') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" taskqueue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) statistics = client.task_queues(workspace_sid).get( taskqueue_sid).statistics.get() print(statistics.cumulative["reservations_accepted"])
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) for worker in client.workers(workspace_sid).list(): print worker.friendly_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) call_status_callback_url = 'http://example.com/agent_answer_status_callback' # call using a reservation reservation = client.workers(workspace_sid).get(worker_sid) \ .reservations.update( reservation_sid, instruction='call', call_from='+15558675309', call_url='http://example.com/agent_answer', call_status_callback_url=call_status_callback_url, call_accept='true') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # dequeue a reservation reservation = client.workers(workspace_sid) \ .get(worker_sid).reservations.update( reservation_sid, instruction='dequeue', dequeue_from='+18001231234') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) taskqueue = client.task_queues(workspace_sid).create( friendly_name='English', reservation_activity_sid='WAxxxx', assignment_activity_sid='WAyyyy', target_workers='languages HAS "english"' ) print(taskqueue.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) for taskqueue in client.taskqueues(workspace_sid).list(): print taskqueue.friendly_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" activity_sid = "WAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).update( activity_sid, friendly_name='NewAvailableFriendlyName', available='true') print(activity.friendly_name) # alternatively activity = client.activities(workspace_sid).get(activity_sid) activity = activity.update(friendly_name='NewAvailableFriendlyName') print(activity.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for task in client.tasks(workspace_sid).list( TaskQueueSid="WQf855e98ad280d0a0a325628e24ca9627" ): print(task.attributes) for task in client.tasks(workspace_sid).list(AssignmentStatus="pending"): print(task.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" task_sid = "{{ task_sid }}" reservation_sid = "{{ reservation_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) # reject a reservation reservation = client.reservations(workspace_sid, task_sid).update(reservation_sid, reservation_status='rejected') print reservation.reservation_status print reservation.worker_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" activity_sid = "WAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).update(activity_sid,friendly_name='NewAvailableFriendlyName',available='true') print(activity.friendly_name) # alternatively activity = client.activities(workspace_sid).get(activity_sid) activity = activity.update(friendly_name='NewAvailableFriendlyName') print(activity.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for reservation in client.workers(workspace_sid).get( worker_sid).reservations.list(): print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # Update a Reservation with a Conference instruction reservation = client.reservations(workspace_sid, task_sid).update( reservation_sid, instruction='conference', dequeue_from='+18001231234' ) print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) worker = client.workers(workspace_sid).create( friendly_name='Support Worker 1', attributes='{"type":"support"}' ) print(worker.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for workflow in client.workflows(workspace_sid).list(): print(workflow.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" activity_sid = "WAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).get(activity_sid) activity.delete()
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for activity in client.activities(workspace_sid).list(): print(activity.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # reject a reservation reservation = client.reservations(workspace_sid, task_sid).update( reservation_sid, reservation_status='rejected') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" taskqueue_sid = "WQXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) taskqueue = client.task_queues(workspace_sid).get(taskqueue_sid) taskqueue.delete()
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" worker_sid = "{{ worker_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) worker = client.workers(workspace_sid).get(worker_sid) worker.delete()
class RestClientTest(unittest.TestCase): def setUp(self): self.client = TwilioRestClient("ACCOUNT_SID", "AUTH_TOKEN") self.task_router_client = TwilioTaskRouterClient( "ACCOUNT_SID", "AUTH_TOKEN") @patch("twilio.rest.base.make_request") def test_request(self, mock): self.client.request("2010-04-01", method="GET") mock.assert_called_with("GET", "https://api.twilio.com/2010-04-01", headers={ "User-Agent": ANY, 'Accept-Charset': 'utf-8', 'Authorization': 'Basic QUNDT1VOVF9TSUQ6QVVUSF9UT0tFTg==' }, params={}, auth=AUTH, data=None) called_kwargs = mock.mock_calls[0][2] self.assertTrue( 'twilio-python' in called_kwargs['headers']['User-Agent']) def test_connect_apps(self): assert_true(isinstance(self.client.connect_apps, resources.ConnectApps)) def test_authorized_apps(self): assert_true( isinstance(self.client.authorized_connect_apps, resources.AuthorizedConnectApps)) @patch("twilio.rest.resources.base.make_request") def test_conferences(self, mock): mock.return_value = Mock() mock.return_value.ok = True mock.return_value.content = '{"conferences": []}' self.client.conferences.list() @patch("twilio.rest.resources.base.make_twilio_request") def test_members(self, mock): resp = create_mock_json("tests/resources/members_list.json") mock.return_value = resp self.client.members("QU123").list() uri = "https://api.twilio.com/2010-04-01/Accounts/ACCOUNT_SID" \ "/Queues/QU123/Members" mock.assert_called_with("GET", uri, params={}, auth=AUTH, use_json_extension=True) @patch("twilio.rest.resources.base.make_request") def test_workflows(self, request): resp = create_mock_json( "tests/resources/task_router/workflows_list.json") request.return_value = resp workflows = self.task_router_client.workflows("WS123") workflows = workflows.list() assert_true(workflows[0].sid is not None) uri = "https://taskrouter.twilio.com/v1/Workspaces/WS123/Workflows" request.assert_called_with("GET", uri, headers=ANY, params={}, auth=AUTH)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = "WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) # call using a reservation reservation = ( client.workers(workspace_sid) .get(worker_sid) .reservations.update( reservation_sid, instruction="call", call_from="+15558675309", call_url="http://example.com/agent_answer", call_status_callback_url="http://example.com/agent_answer_status_callback", call_accept="true", ) ) print(reservation.reservation_status) print(reservation.worker_name)
def setUp(self): self.client = TwilioRestClient("ACCOUNT_SID", "AUTH_TOKEN") self.task_router_client = TwilioTaskRouterClient( "ACCOUNT_SID", "AUTH_TOKEN")
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" activity_sid = "WAXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) activity = client.activities(workspace_sid).get(activity_sid) print(activity.friendly_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" taskqueue_sid = "{{ taskqueue_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) taskqueue = client.taskqueues(workspace_sid).update(taskqueue_sid, target_workers='languages HAS "english"') print taskqueue.target_workers # alternatively taskqueue = client.workers(workspace_sid).get(taskqueue_sid) taskqueue = taskqueue.update(target_workers='languages HAS "english"') print taskqueue.target_workers
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) for task in client.tasks(workspace_sid).list(): print(task.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) for task in client.tasks(workspace_sid).list(): print task.attributes
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" worker_sid = "{{ worker_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) worker = client.workers(workspace_sid).get(worker_sid) print worker.friendly_name
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "{{ account_sid }}" auth_token = "{{ auth_token }}" workspace_sid = "{{ workspace_sid }}" client = TwilioTaskRouterClient(account_sid, auth_token) client.workspaces.delete(workspace_sid)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" task_sid = "WTXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) task = client.tasks(workspace_sid).get(task_sid) print(task.attributes)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" reservation_sid = 'WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX' client = TwilioTaskRouterClient(account_sid, auth_token) # accept a reservation reservation = client.workers(workspace_sid) \ .get(worker_sid).reservations \ .update(reservation_sid, reservation_status='accepted') print(reservation.reservation_status) print(reservation.worker_name)
# Download the Python helper library from twilio.com/docs/python/install from twilio.rest import TwilioTaskRouterClient # Your Account Sid and Auth Token from twilio.com/user/account account_sid = "ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" auth_token = "your_auth_token" workspace_sid = "WSXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" worker_sid = "WKXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" client = TwilioTaskRouterClient(account_sid, auth_token) statistics = client.workers(workspace_sid).get(worker_sid).statistics.get() print(statistics.cumulative["reservations_accepted"])