|
@@ -710,17 +710,19 @@ class Originate(Resource):
|
|
|
async def get(self, user, number):
|
|
async def get(self, user, number):
|
|
|
'''Originate call
|
|
'''Originate call
|
|
|
'''
|
|
'''
|
|
|
- _r, _data = await amiCommand('channel originate local/1100@from-internal extension 8005551212@outbound-allroutes')
|
|
|
|
|
- channel = await getUserChannel(user)
|
|
|
|
|
- if not channel:
|
|
|
|
|
- return noUserChannel(userA)
|
|
|
|
|
- reply = await manager.send_action({'Action':'BlindTransfer',
|
|
|
|
|
- 'Channel':channel,
|
|
|
|
|
- 'async':'false',
|
|
|
|
|
- 'Exten':userB})
|
|
|
|
|
|
|
+ device = await getUserDevice(user)
|
|
|
|
|
+ if device in NONEs:
|
|
|
|
|
+ return noUserDevice(user)
|
|
|
|
|
+ reply = await manager.send_action({'Action':'Originate',
|
|
|
|
|
+ 'Channel':'PJSIP/{}'.format(device),
|
|
|
|
|
+ 'Context':'from-internal',
|
|
|
|
|
+ 'Exten':number,
|
|
|
|
|
+ 'Priority': '1',
|
|
|
|
|
+ 'Callerid': user,
|
|
|
|
|
+ 'Variable': 'SIPADDHEADER="Call-Info:\;answer-after=0"'})
|
|
|
if isinstance(reply, Message):
|
|
if isinstance(reply, Message):
|
|
|
if reply.success:
|
|
if reply.success:
|
|
|
- return successfullyTransfered(userA, userB)
|
|
|
|
|
|
|
+ return successfullyOriginated(user, number)
|
|
|
else:
|
|
else:
|
|
|
return errorReply(reply.message)
|
|
return errorReply(reply.message)
|
|
|
|
|
|