test_numbers.c 1.82 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
/*
linphone
Copyright (C) 2012 Belledonne Communications SARL
Author: Simon MORLAT (simon.morlat@linphone.org)

This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
*/


#include "linphonecore.h"
23
#include "linphonecore_utils.h"
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

int main(int argc , char *argv[]){
	LinphoneProxyConfig *cfg;
	char normalized_number[32];
	if (argc<2){
		fprintf(stderr,"Usage:\n%s <phone number> [<country code>] [--escape-plus]\nReturns normalized number.", argv[0]);
		return -1;
	}
	linphone_core_enable_logs(stderr);
	cfg=linphone_proxy_config_new();
	if (argc>2)
		linphone_proxy_config_set_dial_prefix(cfg,argv[2]);
	if (argc>3 && strcmp(argv[3],"--escape-plus")==0)
		linphone_proxy_config_set_dial_escape_plus(cfg,TRUE);
	linphone_proxy_config_normalize_number(cfg,argv[1],normalized_number,sizeof(normalized_number));
39

40
	printf("Normalized number is %s\n",normalized_number);
41 42 43 44 45 46
	/*check extracted ccc*/
	if (linphone_dial_plan_lookup_ccc_from_e164(normalized_number) != atoi(linphone_proxy_config_get_dial_prefix(cfg))) {
		printf("Error ccc [%i] not correctly parsed\n",linphone_dial_plan_lookup_ccc_from_e164(normalized_number));
	} else {
		printf("Extracted ccc is [%i] \n",linphone_dial_plan_lookup_ccc_from_e164(normalized_number));
	}
47 48
	return 0;
}