mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	The AMI Newstate event contains different information between v1.4 and v1.8.
The addition of connected line support in v1.8 changes the behavior of the channel caller ID somewhat. The channel caller ID value no longer time shares with the connected line ID on outgoing call legs. The timing of some AMI events/responses output the connected line ID as caller ID. These party ID's are now separate. * The ConnectedLineNum and ConnectedLineName headers were added to many AMI events/responses if the CallerIDNum/CallerIDName headers were also present. (closes issue #18252) Reported by: gje Tested by: rmudgett Review: https://reviewboard.asterisk.org/r/1227/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@320823 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -1157,11 +1157,15 @@ static int park_call_full(struct ast_channel *chan, struct ast_channel *peer, st | ||||
| 		"Timeout: %ld\r\n" | ||||
| 		"CallerIDNum: %s\r\n" | ||||
| 		"CallerIDName: %s\r\n" | ||||
| 		"ConnectedLineNum: %s\r\n" | ||||
| 		"ConnectedLineName: %s\r\n" | ||||
| 		"Uniqueid: %s\r\n", | ||||
| 		pu->parkingexten, pu->chan->name, pu->parkinglot->name, event_from ? event_from : "", | ||||
| 		(long)pu->start.tv_sec + (long)(pu->parkingtime/1000) - (long)time(NULL), | ||||
| 		S_COR(pu->chan->caller.id.number.valid, pu->chan->caller.id.number.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->caller.id.name.valid, pu->chan->caller.id.name.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->connected.id.number.valid, pu->chan->connected.id.number.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->connected.id.name.valid, pu->chan->connected.id.name.str, "<unknown>"), | ||||
| 		pu->chan->uniqueid | ||||
| 		); | ||||
|  | ||||
| @@ -4023,12 +4027,16 @@ static void post_manager_event(const char *s, struct parkeduser *pu) | ||||
| 		"Parkinglot: %s\r\n" | ||||
| 		"CallerIDNum: %s\r\n" | ||||
| 		"CallerIDName: %s\r\n" | ||||
| 		"ConnectedLineNum: %s\r\n" | ||||
| 		"ConnectedLineName: %s\r\n" | ||||
| 		"UniqueID: %s\r\n", | ||||
| 		pu->parkingexten,  | ||||
| 		pu->chan->name, | ||||
| 		pu->parkinglot->name, | ||||
| 		S_COR(pu->chan->caller.id.number.valid, pu->chan->caller.id.number.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->caller.id.name.valid, pu->chan->caller.id.name.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->connected.id.number.valid, pu->chan->connected.id.number.str, "<unknown>"), | ||||
| 		S_COR(pu->chan->connected.id.name.valid, pu->chan->connected.id.name.str, "<unknown>"), | ||||
| 		pu->chan->uniqueid | ||||
| 		); | ||||
| } | ||||
| @@ -4504,10 +4512,14 @@ static int park_exec_full(struct ast_channel *chan, const char *data) | ||||
| 			"Channel: %s\r\n" | ||||
| 			"From: %s\r\n" | ||||
| 			"CallerIDNum: %s\r\n" | ||||
| 			"CallerIDName: %s\r\n", | ||||
| 			"CallerIDName: %s\r\n" | ||||
| 			"ConnectedLineNum: %s\r\n" | ||||
| 			"ConnectedLineName: %s\r\n", | ||||
| 			pu->parkingexten, pu->chan->name, chan->name, | ||||
| 			S_COR(pu->chan->caller.id.number.valid, pu->chan->caller.id.number.str, "<unknown>"), | ||||
| 			S_COR(pu->chan->caller.id.name.valid, pu->chan->caller.id.name.str, "<unknown>") | ||||
| 			S_COR(pu->chan->caller.id.name.valid, pu->chan->caller.id.name.str, "<unknown>"), | ||||
| 			S_COR(pu->chan->connected.id.number.valid, pu->chan->connected.id.number.str, "<unknown>"), | ||||
| 			S_COR(pu->chan->connected.id.name.valid, pu->chan->connected.id.name.str, "<unknown>") | ||||
| 			); | ||||
|  | ||||
| 		ast_free(pu); | ||||
| @@ -5579,12 +5591,16 @@ static int manager_parking_status(struct mansession *s, const struct message *m) | ||||
| 				"Timeout: %ld\r\n" | ||||
| 				"CallerIDNum: %s\r\n" | ||||
| 				"CallerIDName: %s\r\n" | ||||
| 				"ConnectedLineNum: %s\r\n" | ||||
| 				"ConnectedLineName: %s\r\n" | ||||
| 				"%s" | ||||
| 				"\r\n", | ||||
| 				cur->parkingnum, cur->chan->name, cur->peername, | ||||
| 				(long) cur->start.tv_sec + (long) (cur->parkingtime / 1000) - (long) time(NULL), | ||||
| 				S_COR(cur->chan->caller.id.number.valid, cur->chan->caller.id.number.str, ""),	/* XXX in other places it is <unknown> */ | ||||
| 				S_COR(cur->chan->caller.id.name.valid, cur->chan->caller.id.name.str, ""), | ||||
| 				S_COR(cur->chan->connected.id.number.valid, cur->chan->connected.id.number.str, ""),	/* XXX in other places it is <unknown> */ | ||||
| 				S_COR(cur->chan->connected.id.name.valid, cur->chan->connected.id.name.str, ""), | ||||
| 				idText); | ||||
| 		} | ||||
| 		AST_LIST_UNLOCK(&curlot->parkings); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user