[svn-commits] oej: branch oej/moremanager r61821 - in /team/oej/moremanager: ./ main/

svn-commits at lists.digium.com svn-commits at lists.digium.com
Wed Apr 25 13:02:42 MST 2007


Author: oej
Date: Wed Apr 25 15:02:41 2007
New Revision: 61821

URL: http://svn.digium.com/view/asterisk?view=rev&rev=61821
Log:
Adding an event for change of account code

Modified:
    team/oej/moremanager/CHANGES.moremanager
    team/oej/moremanager/main/cdr.c
    team/oej/moremanager/main/channel.c
    team/oej/moremanager/main/manager.c

Modified: team/oej/moremanager/CHANGES.moremanager
URL: http://svn.digium.com/view/asterisk/team/oej/moremanager/CHANGES.moremanager?view=diff&rev=61821&r1=61820&r2=61821
==============================================================================
--- team/oej/moremanager/CHANGES.moremanager (original)
+++ team/oej/moremanager/CHANGES.moremanager Wed Apr 25 15:02:41 2007
@@ -27,6 +27,9 @@
 	"State"		-> ChannelStateDesc	Text based channel state
 			-> ChannelState		Numeric channel state
 	- The events does not send "<unknown>" for unknown caller IDs just an empty field
+
+- Newchannel event
+	- Now includes "AccountCode"
 
 - Newstate event
 	- Now has "CalleridNum" for numeric caller id, like Newchannel
@@ -68,6 +71,7 @@
 - Status action replies (Event: Status)
 	Header changes
 	- link		-> BridgedChannel
+	- Account	-> AccountCode
 	- (new)		-> BridgedUniqueid
 
 - StatusComplete Event
@@ -95,32 +99,33 @@
 		be followed by a "Bridge" event
 		The transfermethod: header informs if this is a pbx core transfer
 		or something done on channel driver level. For SIP, check the example:
+	Example:
 		
-				Event: Transfer
-				Privilege: call,all
-				TransferMethod: SIP
-				TransferType: Blind
-				Channel: SIP/device1-01849800
-				SIP-Callid: 091386f505842c87016c4d93195ec67d at 127.0.0.1
-				TargetChannel: SIP/device2-01841200
-				TransferExten: 100
-				TransferContext: default
-
-	
+		Event: Transfer
+		Privilege: call,all
+		TransferMethod: SIP
+		TransferType: Blind
+		Channel: SIP/device1-01849800
+		SIP-Callid: 091386f505842c87016c4d93195ec67d at 127.0.0.1
+		TargetChannel: SIP/device2-01841200
+		TransferExten: 100
+		TransferContext: default
 
 - Event: ChannelUpdate
 	Modules: chan_sip.c, chan_iax2.c
 	Purpose:
 		Updates channel information with ID of PVT in channel driver, to
 		be able to link events on channel driver level.
-	
-			Event: ChannelUpdate
-			Privilege: system,all
-			Uniqueid: 1177271625.27
-			Channel: SIP/olle-01843c00
-			Channeltype: SIP
-			SIPcallid: NTQzYWFiOWM4NmE0MWRkZjExMzU2YzQ3OWQwNzg3ZmI.
-			SIPfullcontact: sip:olle at 127.0.0.1:49054
+
+	Example:
+
+		Event: ChannelUpdate
+		Privilege: system,all
+		Uniqueid: 1177271625.27
+		Channel: SIP/olle-01843c00
+		Channeltype: SIP
+		SIPcallid: NTQzYWFiOWM4NmE0MWRkZjExMzU2YzQ3OWQwNzg3ZmI.
+		SIPfullcontact: sip:olle at 127.0.0.1:49054
 
 - Action: CoreSettings
 	Modules: manager.c
@@ -148,6 +153,17 @@
 		CoreReloadTime: 22:35:17
 		CoreCurrentCalls: 20
 
+- Event: NewAccountCode
+	Modules: cdr.c
+	Purpose: To report a change in account code for a live channel
+	Example:
+		Event: NewAccountCode
+		Privilege: call,all
+		Channel: SIP/olle-01844600
+		Uniqueid: 1177530895.2
+		AccountCode: Stinas account 1234848484
+		OldAccountCode: OllesAccount 12345
+
 * TODO
 ------
 - Someone needs to fix "iaxpeers"

Modified: team/oej/moremanager/main/cdr.c
URL: http://svn.digium.com/view/asterisk/team/oej/moremanager/main/cdr.c?view=diff&rev=61821&r1=61820&r2=61821
==============================================================================
--- team/oej/moremanager/main/cdr.c (original)
+++ team/oej/moremanager/main/cdr.c Wed Apr 25 15:02:41 2007
@@ -822,6 +822,9 @@
 int ast_cdr_setaccount(struct ast_channel *chan, const char *account)
 {
 	struct ast_cdr *cdr = chan->cdr;
+	char buf[BUFSIZ/2] = "";
+	if (!ast_strlen_zero(chan->accountcode))
+		ast_copy_string(buf, chan->accountcode, sizeof(buf));
 
 	ast_string_field_set(chan, accountcode, account);
 	for ( ; cdr ; cdr = cdr->next) {
@@ -829,6 +832,9 @@
 			ast_copy_string(cdr->accountcode, chan->accountcode, sizeof(cdr->accountcode));
 		}
 	}
+
+	/* Signal change of account code to manager */
+	manager_event(EVENT_FLAG_CALL, "NewAccountCode", "Channel: %s\r\nUniqueid: %s\r\nAccountCode: %s\r\nOldAccountCode: %s\r\n", chan->name, chan->uniqueid, chan->accountcode, buf);
 	return 0;
 }
 

Modified: team/oej/moremanager/main/channel.c
URL: http://svn.digium.com/view/asterisk/team/oej/moremanager/main/channel.c?view=diff&rev=61821&r1=61820&r2=61821
==============================================================================
--- team/oej/moremanager/main/channel.c (original)
+++ team/oej/moremanager/main/channel.c Wed Apr 25 15:02:41 2007
@@ -817,10 +817,14 @@
 			      "ChannelStateDesc: %s\r\n"
 			      "CallerIDNum: %s\r\n"
 			      "CallerIDName: %s\r\n"
+			      "AccountCode: %s\r\n"
 			      "Uniqueid: %s\r\n",
-			      tmp->name, state, ast_state2str(state),
+			      tmp->name, 
+				state, 
+			      ast_state2str(state),
 			      S_OR(cid_num, ""),
 			      S_OR(cid_name, ""),
+			      tmp->accountcode,
 			      tmp->uniqueid);
 	}
 

Modified: team/oej/moremanager/main/manager.c
URL: http://svn.digium.com/view/asterisk/team/oej/moremanager/main/manager.c?view=diff&rev=61821&r1=61820&r2=61821
==============================================================================
--- team/oej/moremanager/main/manager.c (original)
+++ team/oej/moremanager/main/manager.c Wed Apr 25 15:02:41 2007
@@ -1478,7 +1478,7 @@
 			"Channel: %s\r\n"
 			"CallerIDNum: %s\r\n"
 			"CallerIDName: %s\r\n"
-			"Account: %s\r\n"
+			"AccountCode: %s\r\n"
 			"State: %s\r\n"
 			"Context: %s\r\n"
 			"Extension: %s\r\n"



More information about the svn-commits mailing list