All pastes #421917 Raw Edit

Unnamed

public text v1 · immutable
·published 2007-04-03 03:35 UTC
rendered paste body
context internal {

	includes {
		staff;
		parkedcalls;
		queues-loginout;
		queues-manip;
	}

	_341X => goto conference|${EXTEN}|1;		// join a conference room

	// Voicemail
	8500 => {
		
		Set(TIMEOUT(absolute)=600);
		if ( "${CALLERID(num)}" != "" )
		{
			goto havebox;
		}
		else {
			VoicemailMain();		// prompts for mailbox
			Hangup();
		}
	havebox:
		Wait(1);
		VoicemailMain(${CALLERID(num)});	// got mailbox from CID
		Hangup();
	}

	8501 => {
		VoicemailMain();			// prompts for mailbox
		Hangup();
	}

	// Play hold music from any phone
	8888 => {		
		Answer();
		Dial(Local/moh@internal/n);
	}
		
	moh => MusicOnHold();

	// Record voice file to /tmp directory (for making new prompts and such)
	8201 => {
		Wait(2);
		Playback(now);
		Record(/tmp/asterisk-recording:wav|2);
		Wait(2);
		Playback(/tmp/asterisk-recording);
		Wait(2);
		Hangup();
	}
	
	// playback last recorded file
	8202 => {
		Wait(2);
		Playback(/tmp/asterisk-recording);
		Wait(2);
		Hangup();
	}


	// extensions for transferring to voicemail

	_*10X => {
		Voicemail(${EXTEN});
		Hangup();
	}
	*190 => {
		Voicemail(190);			// sales VM
		Hangup();
	}
	*191 => {
		Voicemail(191);			// support VM
		Hangup();
	}
	*192 => {
		Voicemail(192);			// after-hours support VM
		Hangup();
	}

	// queue login/out commands are now in their own contexts below

};
context staff {
	includes {
		staff-external;
		internal;
	}
};


context staff-external {

	_1XX => &std-exten(${EXTEN},"SIP");

};