Skip to content
项目
群组
代码片段
帮助
正在加载...
登录
切换导航
F
freeswitch
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分枝图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
分枝图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
张华
freeswitch
Commits
bc8cbee1
提交
bc8cbee1
authored
1月 05, 2012
作者:
Anthony Minessale
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
mod_httapi.c -- HT-TAPI Hypertext Telephony API (Twillio FreeSWITCH style)
上级
8950a78c
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
12 个修改的文件
包含
3405 行增加
和
0 行删除
+3405
-0
modules.conf.in
build/modules.conf.in
+1
-0
httapi.conf.xml
conf/autoload_configs/httapi.conf.xml
+87
-0
modules.conf.xml
conf/autoload_configs/modules.conf.xml
+1
-0
dialer.cgi
src/mod/applications/mod_httapi/examples/perl/dialer.cgi
+41
-0
ext_pin.cgi
src/mod/applications/mod_httapi/examples/perl/ext_pin.cgi
+71
-0
record_name.cgi
...mod/applications/mod_httapi/examples/perl/record_name.cgi
+58
-0
speech.cgi
src/mod/applications/mod_httapi/examples/perl/speech.cgi
+61
-0
httapi.conf.xml
src/mod/applications/mod_httapi/httapi.conf.xml
+87
-0
mod_httapi.2008.vcproj
src/mod/applications/mod_httapi/mod_httapi.2008.vcproj
+287
-0
mod_httapi.2010.vcxproj
src/mod/applications/mod_httapi/mod_httapi.2010.vcxproj
+135
-0
mod_httapi.c
src/mod/applications/mod_httapi/mod_httapi.c
+2297
-0
mod_httapi_doc.txt
src/mod/applications/mod_httapi/mod_httapi_doc.txt
+279
-0
没有找到文件。
build/modules.conf.in
浏览文件 @
bc8cbee1
...
@@ -44,6 +44,7 @@ applications/mod_valet_parking
...
@@ -44,6 +44,7 @@ applications/mod_valet_parking
#applications/mod_abstraction
#applications/mod_abstraction
#applications/mod_esl
#applications/mod_esl
applications/mod_sms
applications/mod_sms
applications/mod_httapi
codecs/mod_g723_1
codecs/mod_g723_1
codecs/mod_amr
codecs/mod_amr
#codecs/mod_amrwb
#codecs/mod_amrwb
...
...
conf/autoload_configs/httapi.conf.xml
0 → 100644
浏览文件 @
bc8cbee1
<configuration
name=
"httapi.conf"
description=
"HT-TAPI Hypertext Telephony API"
>
<settings>
<!-- print xml on the consol -->
<param
name=
"debug"
value=
"true"
/>
<!-- time to keep audio files when discoverd they were deleted from the http server -->
<param
name=
"file-not-found-expires"
value=
"300"
/>
<!-- how often to re-check the server to make sure the remote file has not changed -->
<param
name=
"file-cache-ttl"
value=
"300"
/>
</settings>
<profiles>
<profile
name=
"default"
>
<!-- default params for conference action tags -->
<conference>
<param
name=
"default-profile"
value=
"default"
/>
</conference>
<!-- default params for dial action tags -->
<dial>
<param
name=
"context"
value=
"default"
/>
<param
name=
"dialplan"
value=
"XML"
/>
</dial>
<!-- permissions -->
<permissions>
<!-- <permission name="all" value="true"/> -->
<!--<permission name="none" value="true"/> -->
<permission
name=
"set-params"
value=
"true"
/>
<permission
name=
"set-vars"
value=
"false"
/>
<permission
name=
"extended-data"
value=
"false"
/>
<permission
name=
"execute-apps"
value=
"false"
/>
<permission
name=
"expand-vars-in-tag-body"
value=
"false"
/>
<permission
name=
"dial"
value=
"true"
/>
<permission
name=
"dial-set-context"
value=
"false"
/>
<permission
name=
"dial-set-dialplan"
value=
"false"
/>
<permission
name=
"dial-set-cid-name"
value=
"false"
/>
<permission
name=
"dial-set-cid-number"
value=
"false"
/>
<permission
name=
"dial-full-originate"
value=
"false"
/>
<permission
name=
"conference"
value=
"true"
/>
<permission
name=
"conference-set-profile"
value=
"false"
/>
</permissions>
<params>
<!-- default url can be overridden by app data -->
<param
name=
"gateway-url"
value=
"http://sidious.freeswitch.org/api/index.cgi"
/>
<!-- set this to provide authentication credentials to the server -->
<!--<param name="gateway-credentials" value="muser:mypass"/>-->
<!--<param name="auth-scheme" value="basic"/>-->
<!-- optional: this will enable the CA root certificate check by libcurl to
verify that the certificate was issued by a major Certificate Authority.
note: default value is disabled. only enable if you want this! -->
<!--<param name="enable-cacert-check" value="true"/>-->
<!-- optional: verify that the server is actually the one listed in the cert -->
<!-- <param name="enable-ssl-verifyhost" value="true"/> -->
<!-- optional: these options can be used to specify custom SSL certificates
to use for HTTPS communications. Either use both options or neither.
Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional timeout -->
<!-- <param name="timeout" value="10"/> -->
<!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> -->
<!-- one or more of these imply you want to pick the exact variables that are transmitted -->
<!--<param name="enable-post-var" value="Unique-ID"/>-->
</params>
</profile>
</profiles>
</configuration>
conf/autoload_configs/modules.conf.xml
浏览文件 @
bc8cbee1
...
@@ -62,6 +62,7 @@
...
@@ -62,6 +62,7 @@
<load
module=
"mod_valet_parking"
/>
<load
module=
"mod_valet_parking"
/>
<!--<load module="mod_fsk"/>-->
<!--<load module="mod_fsk"/>-->
<!--<load module="mod_spy"/>-->
<!--<load module="mod_spy"/>-->
<load
module=
"mod_httapi"
/>
<!-- SNOM Module -->
<!-- SNOM Module -->
<!--<load module="mod_snom"/>-->
<!--<load module="mod_snom"/>-->
...
...
src/mod/applications/mod_httapi/examples/perl/dialer.cgi
0 → 100755
浏览文件 @
bc8cbee1
#!/usr/bin/perl
# Object initialization:
use
XML::
Simple
;
use
CGI
;
use
Data::
Dumper
;
use
XML::
Writer
;
my
$q
=
CGI
->
new
;
my
$exiting
=
$q
->
param
(
"exiting"
);
if
(
$exiting
)
{
print
$q
->
header
(
-
type
=>
"text/plain"
);
print
"OK"
;
exit
();
}
print
$q
->
header
(
-
type
=>
"text/xml"
);
my
$writer
=
new
XML::
Writer
(
OUTPUT
=>
STDOUT
,
DATA_MODE
=>
1
);
$writer
->
startTag
(
'document'
,
type
=>
'xml/freeswitch-httapi'
);
$writer
->
startTag
(
'work'
);
$writer
->
emptyTag
(
'pause'
,
millis
econds
=>
"1500"
);
$writer
->
startTag
(
'playback'
,
name
=>
digits
,
file
=>
"http://sidious.freeswitch.org/sounds/exten.wav"
,
'error-file'
=>
"http://sidious.freeswitch.org/sounds/invalid.wav"
,
'input-timeout'
=>
"5000"
,
action
=>
"dial:default:XML"
);
$writer
->
dataElement
(
"bind"
,
"~\\d+\#"
,
strip
=>
"#"
);
$writer
->
endTag
(
'playback'
);
$writer
->
endTag
(
'work'
);
$writer
->
endTag
(
'document'
);
$writer
->
end
();
src/mod/applications/mod_httapi/examples/perl/ext_pin.cgi
0 → 100755
浏览文件 @
bc8cbee1
#!/usr/bin/perl
# Object initialization:
use
XML::
Simple
;
use
CGI
;
use
Data::
Dumper
;
use
XML::
Writer
;
my
$q
=
CGI
->
new
;
my
$exten
=
$q
->
param
(
"exten"
);
my
$pin
=
$q
->
param
(
"pin"
);
my
$exiting
=
$q
->
param
(
"exiting"
);
if
(
$exiting
)
{
print
$q
->
header
(
-
type
=>
"text/plain"
);
print
"OK"
;
exit
();
}
print
$q
->
header
(
-
type
=>
"text/xml"
);
my
$writer
=
new
XML::
Writer
(
OUTPUT
=>
STDOUT
,
DATA_MODE
=>
1
);
$writer
->
startTag
(
'document'
,
type
=>
'xml/freeswitch-httapi'
);
$writer
->
startTag
(
'params'
);
if
(
$exten
)
{
$writer
->
dataElement
(
"exten"
,
$exten
);
}
if
(
$pin
)
{
$writer
->
dataElement
(
"exten"
,
$pin
);
}
$writer
->
endTag
(
'params'
);
if
(
$exten
&&
$pin
)
{
$writer
->
startTag
(
'work'
);
$writer
->
dataElement
(
"playback"
,
"http://sidious.freeswitch.org/sounds/ext_num.wav"
);
$writer
->
dataElement
(
"say"
,
$exten
,
language
=>
"en"
,
type
=>
"name_spelled"
,
method => "pronounced
");
$writer->emptyTag('pause', milliseconds => "
1500
");
$writer->dataElement("
say
", $pin, language => "
en
", type => "
name_spelled
", method => "
pronounced
");
$writer->emptyTag('hangup');
$writer->endTag('work');
} elsif ($exten) {
$writer->startTag('work');
$writer->startTag('playback',
name => "
pin
",
file => "
http:
//sidious
.
freeswitch
.
org
/sounds/pin
.
wav
",
'error-file' => "
http:
//sidious
.
freeswitch
.
org
/sounds/
bad
-
pin
.
wav
",
'input-timeout' => "
5000
");
$writer->dataElement("
bind
", "
~\\
d
+\
#", strip => "#");
$writer
->
endTag
(
'playback'
);
$writer
->
endTag
(
'work'
);
}
else
{
$writer
->
startTag
(
'work'
);
$writer
->
startTag
(
'playback'
,
name
=>
"exten"
,
file
=>
"http://sidious.freeswitch.org/sounds/exten.wav"
,
'error-file'
=>
"http://sidious.freeswitch.org/sounds/invalid.wav"
,
'input-timeout'
=>
"5000"
);
$writer
->
dataElement
(
"bind"
,
"~\\d+\#"
,
strip
=>
"#"
);
$writer
->
endTag
(
'playback'
);
$writer
->
endTag
(
'work'
);
}
$writer
->
endTag
(
'document'
);
$writer
->
end
();
src/mod/applications/mod_httapi/examples/perl/record_name.cgi
0 → 100755
浏览文件 @
bc8cbee1
#!/usr/bin/perl
# Object initialization:
use
XML::
Simple
;
use
CGI
;
use
Data::
Dumper
;
use
XML::
Writer
;
my
$q
=
CGI
->
new
;
my
$exiting
=
$q
->
param
(
"exiting"
);
my
$file
=
$q
->
upload
(
"recorded_file"
);
if
(
$file
)
{
open
(
O
,
">/tmp/recording.wav"
);
while
(
<
$file
>
)
{
print
O
$_
;
}
close
O
;
print
$q
->
header
(
-
type
=>
"text/plain"
);
print
"OK\n"
;
exit
();
}
if
(
$exiting
)
{
print
$q
->
header
(
-
type
=>
"text/plain"
);
print
"OK"
;
exit
();
}
print
$q
->
header
(
-
type
=>
"text/xml"
);
my
$writer
=
new
XML::
Writer
(
OUTPUT
=>
STDOUT
,
DATA_MODE
=>
1
);
$writer
->
startTag
(
'document'
,
type
=>
'xml/freeswitch-httapi'
);
$writer
->
startTag
(
'work'
);
$writer
->
emptyTag
(
'pause'
,
millis
econds
=>
"1500"
);
$writer
->
emptyTag
(
'playback'
,
file
=>
"http://sidious.freeswitch.org/eg/ivr-say_name.wav"
);
$writer
->
startTag
(
'record'
,
name
=>
"recorded_file"
,
file
=>
"recording.wav"
,
'error-file'
=>
"http://sidious.freeswitch.org/sounds/invalid.wav"
,
'input-timeout'
=>
"5000"
,
'beep-file'
,
=>
"tone_stream://%(1000,0,460)"
);
$writer
->
dataElement
(
"bind"
,
"~\\d+\#"
,
strip
=>
"#"
);
$writer
->
endTag
(
'record'
);
$writer
->
endTag
(
'work'
);
$writer
->
endTag
(
'document'
);
$writer
->
end
();
src/mod/applications/mod_httapi/examples/perl/speech.cgi
0 → 100755
浏览文件 @
bc8cbee1
#!/usr/bin/perl
# Object initialization:
use
XML::
Simple
;
use
CGI
;
use
Data::
Dumper
;
use
XML::
Writer
;
my
$q
=
CGI
->
new
;
my
$result
=
$q
->
param
(
"result"
);
my
$type
=
$q
->
param
(
"input_type"
);
my
$exiting
=
$q
->
param
(
"exiting"
);
if
(
$exiting
)
{
print
$q
->
header
(
-
type
=>
"text/plain"
);
print
"OK"
;
exit
();
}
print
$q
->
header
(
-
type
=>
"text/xml"
);
my
$writer
=
new
XML::
Writer
(
OUTPUT
=>
STDOUT
,
DATA_MODE
=>
1
);
$writer
->
startTag
(
'document'
,
type
=>
'xml/freeswitch-httapi'
);
if
(
$result
)
{
$writer
->
startTag
(
'work'
);
if
(
$type
eq
"dtmf"
)
{
$writer
->
dataElement
(
"say"
,
$result
,
language
=>
"en"
,
type
=>
"name_spelled"
,
method => "pronounced
");
}
$writer->dataElement("
log
", $result, level => "
crit
");
$writer->emptyTag('hangup');
$writer->endTag('work');
} else {
$writer->startTag('work');
$writer->emptyTag('pause', milliseconds => "
1500
");
$writer->startTag('playback',
name => "
result
",
'asr-engine' => "
pocketsphinx
",
'asr-grammar' => "
pizza_yesno
",
file => "
http:
//sidious
.
freeswitch
.
org
/sounds/
ConfirmDelivery
.
wav
",
'error-file' => "
http:
//sidious
.
freeswitch
.
org
/sounds/in
valid
.
wav
"
);
$writer->dataElement("
bind
", "
~\\
d
+\
#", strip => "#");
#$writer->dataElement("bind", "1");
#$writer->dataElement("bind", "2");
$writer
->
endTag
(
'playback'
);
$writer
->
endTag
(
'work'
);
}
$writer
->
endTag
(
'document'
);
$writer
->
end
();
src/mod/applications/mod_httapi/httapi.conf.xml
0 → 100644
浏览文件 @
bc8cbee1
<configuration
name=
"httapi.conf"
description=
"HT-TAPI Hypertext Telephony API"
>
<settings>
<!-- print xml on the consol -->
<param
name=
"debug"
value=
"true"
/>
<!-- time to keep audio files when discoverd they were deleted from the http server -->
<param
name=
"file-not-found-expires"
value=
"300"
/>
<!-- how often to re-check the server to make sure the remote file has not changed -->
<param
name=
"file-cache-ttl"
value=
"300"
/>
</settings>
<profiles>
<profile
name=
"default"
>
<!-- default params for conference action tags -->
<conference>
<param
name=
"default-profile"
value=
"default"
/>
</conference>
<!-- default params for dial action tags -->
<dial>
<param
name=
"context"
value=
"default"
/>
<param
name=
"dialplan"
value=
"XML"
/>
</dial>
<!-- permissions -->
<permissions>
<!-- <permission name="all" value="true"/> -->
<!--<permission name="none" value="true"/> -->
<permission
name=
"set-params"
value=
"true"
/>
<permission
name=
"set-vars"
value=
"false"
/>
<permission
name=
"extended-data"
value=
"false"
/>
<permission
name=
"execute-apps"
value=
"false"
/>
<permission
name=
"expand-vars-in-tag-body"
value=
"false"
/>
<permission
name=
"dial"
value=
"true"
/>
<permission
name=
"dial-set-context"
value=
"false"
/>
<permission
name=
"dial-set-dialplan"
value=
"false"
/>
<permission
name=
"dial-set-cid-name"
value=
"false"
/>
<permission
name=
"dial-set-cid-number"
value=
"false"
/>
<permission
name=
"dial-full-originate"
value=
"false"
/>
<permission
name=
"conference"
value=
"true"
/>
<permission
name=
"conference-set-profile"
value=
"false"
/>
</permissions>
<params>
<!-- default url can be overridden by app data -->
<param
name=
"gateway-url"
value=
"http://sidious.freeswitch.org/api/index.cgi"
/>
<!-- set this to provide authentication credentials to the server -->
<!--<param name="gateway-credentials" value="muser:mypass"/>-->
<!--<param name="auth-scheme" value="basic"/>-->
<!-- optional: this will enable the CA root certificate check by libcurl to
verify that the certificate was issued by a major Certificate Authority.
note: default value is disabled. only enable if you want this! -->
<!--<param name="enable-cacert-check" value="true"/>-->
<!-- optional: verify that the server is actually the one listed in the cert -->
<!-- <param name="enable-ssl-verifyhost" value="true"/> -->
<!-- optional: these options can be used to specify custom SSL certificates
to use for HTTPS communications. Either use both options or neither.
Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional timeout -->
<!-- <param name="timeout" value="10"/> -->
<!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> -->
<!-- one or more of these imply you want to pick the exact variables that are transmitted -->
<!--<param name="enable-post-var" value="Unique-ID"/>-->
</params>
</profile>
</profiles>
</configuration>
src/mod/applications/mod_httapi/mod_httapi.2008.vcproj
0 → 100644
浏览文件 @
bc8cbee1
<?xml version="1.0" encoding="Windows-1252"?>
<VisualStudioProject
ProjectType=
"Visual C++"
Version=
"9.00"
Name=
"mod_httapi"
ProjectGUID=
"{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}"
RootNamespace=
"mod_httapi"
Keyword=
"Win32Proj"
TargetFrameworkVersion=
"131072"
>
<Platforms>
<Platform
Name=
"Win32"
/>
<Platform
Name=
"x64"
/>
</Platforms>
<ToolFiles>
</ToolFiles>
<Configurations>
<Configuration
Name=
"Debug|Win32"
ConfigurationType=
"2"
InheritedPropertySheets=
"..\..\..\..\w32\module_debug.vsprops"
CharacterSet=
"2"
>
<Tool
Name=
"VCPreBuildEventTool"
/>
<Tool
Name=
"VCCustomBuildTool"
/>
<Tool
Name=
"VCXMLDataGeneratorTool"
/>
<Tool
Name=
"VCWebServiceProxyGeneratorTool"
/>
<Tool
Name=
"VCMIDLTool"
/>
<Tool
Name=
"VCCLCompilerTool"
UsePrecompiledHeader=
"0"
/>
<Tool
Name=
"VCManagedResourceCompilerTool"
/>
<Tool
Name=
"VCResourceCompilerTool"
/>
<Tool
Name=
"VCPreLinkEventTool"
/>
<Tool
Name=
"VCLinkerTool"
RandomizedBaseAddress=
"1"
DataExecutionPrevention=
"0"
/>
<Tool
Name=
"VCALinkTool"
/>
<Tool
Name=
"VCManifestTool"
/>
<Tool
Name=
"VCXDCMakeTool"
/>
<Tool
Name=
"VCBscMakeTool"
/>
<Tool
Name=
"VCFxCopTool"
/>
<Tool
Name=
"VCAppVerifierTool"
/>
<Tool
Name=
"VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name=
"Debug|x64"
OutputDirectory=
"$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory=
"$(PlatformName)\$(ConfigurationName)"
ConfigurationType=
"2"
InheritedPropertySheets=
"..\..\..\..\w32\module_debug.vsprops"
CharacterSet=
"2"
>
<Tool
Name=
"VCPreBuildEventTool"
/>
<Tool
Name=
"VCCustomBuildTool"
/>
<Tool
Name=
"VCXMLDataGeneratorTool"
/>
<Tool
Name=
"VCWebServiceProxyGeneratorTool"
/>
<Tool
Name=
"VCMIDLTool"
TargetEnvironment=
"3"
/>
<Tool
Name=
"VCCLCompilerTool"
UsePrecompiledHeader=
"0"
/>
<Tool
Name=
"VCManagedResourceCompilerTool"
/>
<Tool
Name=
"VCResourceCompilerTool"
/>
<Tool
Name=
"VCPreLinkEventTool"
/>
<Tool
Name=
"VCLinkerTool"
OutputFile=
"$(SolutionDir)$(PlatformName)\$(ConfigurationName)/mod/$(ProjectName).dll"
RandomizedBaseAddress=
"1"
DataExecutionPrevention=
"0"
TargetMachine=
"17"
/>
<Tool
Name=
"VCALinkTool"
/>
<Tool
Name=
"VCManifestTool"
/>
<Tool
Name=
"VCXDCMakeTool"
/>
<Tool
Name=
"VCBscMakeTool"
/>
<Tool
Name=
"VCFxCopTool"
/>
<Tool
Name=
"VCAppVerifierTool"
/>
<Tool
Name=
"VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name=
"Release|Win32"
ConfigurationType=
"2"
InheritedPropertySheets=
"..\..\..\..\w32\module_release.vsprops"
CharacterSet=
"2"
>
<Tool
Name=
"VCPreBuildEventTool"
/>
<Tool
Name=
"VCCustomBuildTool"
/>
<Tool
Name=
"VCXMLDataGeneratorTool"
/>
<Tool
Name=
"VCWebServiceProxyGeneratorTool"
/>
<Tool
Name=
"VCMIDLTool"
/>
<Tool
Name=
"VCCLCompilerTool"
UsePrecompiledHeader=
"0"
/>
<Tool
Name=
"VCManagedResourceCompilerTool"
/>
<Tool
Name=
"VCResourceCompilerTool"
/>
<Tool
Name=
"VCPreLinkEventTool"
/>
<Tool
Name=
"VCLinkerTool"
RandomizedBaseAddress=
"1"
DataExecutionPrevention=
"0"
/>
<Tool
Name=
"VCALinkTool"
/>
<Tool
Name=
"VCManifestTool"
/>
<Tool
Name=
"VCXDCMakeTool"
/>
<Tool
Name=
"VCBscMakeTool"
/>
<Tool
Name=
"VCFxCopTool"
/>
<Tool
Name=
"VCAppVerifierTool"
/>
<Tool
Name=
"VCPostBuildEventTool"
/>
</Configuration>
<Configuration
Name=
"Release|x64"
OutputDirectory=
"$(PlatformName)\$(ConfigurationName)"
IntermediateDirectory=
"$(PlatformName)\$(ConfigurationName)"
ConfigurationType=
"2"
InheritedPropertySheets=
"..\..\..\..\w32\module_release.vsprops"
CharacterSet=
"2"
>
<Tool
Name=
"VCPreBuildEventTool"
/>
<Tool
Name=
"VCCustomBuildTool"
/>
<Tool
Name=
"VCXMLDataGeneratorTool"
/>
<Tool
Name=
"VCWebServiceProxyGeneratorTool"
/>
<Tool
Name=
"VCMIDLTool"
TargetEnvironment=
"3"
/>
<Tool
Name=
"VCCLCompilerTool"
UsePrecompiledHeader=
"0"
/>
<Tool
Name=
"VCManagedResourceCompilerTool"
/>
<Tool
Name=
"VCResourceCompilerTool"
/>
<Tool
Name=
"VCPreLinkEventTool"
/>
<Tool
Name=
"VCLinkerTool"
OutputFile=
"$(SolutionDir)$(PlatformName)\$(ConfigurationName)/mod/$(ProjectName).dll"
RandomizedBaseAddress=
"1"
DataExecutionPrevention=
"0"
TargetMachine=
"17"
/>
<Tool
Name=
"VCALinkTool"
/>
<Tool
Name=
"VCManifestTool"
/>
<Tool
Name=
"VCXDCMakeTool"
/>
<Tool
Name=
"VCBscMakeTool"
/>
<Tool
Name=
"VCFxCopTool"
/>
<Tool
Name=
"VCAppVerifierTool"
/>
<Tool
Name=
"VCPostBuildEventTool"
/>
</Configuration>
</Configurations>
<References>
</References>
<Files>
<File
RelativePath=
".\mod_httapi.c"
>
</File>
</Files>
<Globals>
</Globals>
</VisualStudioProject>
src/mod/applications/mod_httapi/mod_httapi.2010.vcxproj
0 → 100644
浏览文件 @
bc8cbee1
<?xml version="1.0" encoding="utf-8"?>
<Project
DefaultTargets=
"Build"
ToolsVersion=
"4.0"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<ItemGroup
Label=
"ProjectConfigurations"
>
<ProjectConfiguration
Include=
"Debug|Win32"
>
<Configuration>
Debug
</Configuration>
<Platform>
Win32
</Platform>
</ProjectConfiguration>
<ProjectConfiguration
Include=
"Debug|x64"
>
<Configuration>
Debug
</Configuration>
<Platform>
x64
</Platform>
</ProjectConfiguration>
<ProjectConfiguration
Include=
"Release|Win32"
>
<Configuration>
Release
</Configuration>
<Platform>
Win32
</Platform>
</ProjectConfiguration>
<ProjectConfiguration
Include=
"Release|x64"
>
<Configuration>
Release
</Configuration>
<Platform>
x64
</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup
Label=
"Globals"
>
<ProjectName>
mod_httapi
</ProjectName>
<ProjectGuid>
{11C9BC3D-45E9-46E3-BE84-B8CEE4685E39}
</ProjectGuid>
<RootNamespace>
mod_httapi
</RootNamespace>
<Keyword>
Win32Proj
</Keyword>
</PropertyGroup>
<Import
Project=
"$(VCTargetsPath)\Microsoft.Cpp.Default.props"
/>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
Label=
"Configuration"
>
<ConfigurationType>
DynamicLibrary
</ConfigurationType>
<CharacterSet>
MultiByte
</CharacterSet>
</PropertyGroup>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
Label=
"Configuration"
>
<ConfigurationType>
DynamicLibrary
</ConfigurationType>
<CharacterSet>
MultiByte
</CharacterSet>
</PropertyGroup>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|x64'"
Label=
"Configuration"
>
<ConfigurationType>
DynamicLibrary
</ConfigurationType>
<CharacterSet>
MultiByte
</CharacterSet>
</PropertyGroup>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|x64'"
Label=
"Configuration"
>
<ConfigurationType>
DynamicLibrary
</ConfigurationType>
<CharacterSet>
MultiByte
</CharacterSet>
</PropertyGroup>
<Import
Project=
"$(VCTargetsPath)\Microsoft.Cpp.props"
/>
<ImportGroup
Label=
"ExtensionSettings"
>
</ImportGroup>
<ImportGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
Label=
"PropertySheets"
>
<Import
Project=
"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"
Condition=
"exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"
Label=
"LocalAppDataPlatform"
/>
<Import
Project=
"..\..\..\..\w32\module_release.props"
/>
</ImportGroup>
<ImportGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
Label=
"PropertySheets"
>
<Import
Project=
"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"
Condition=
"exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"
Label=
"LocalAppDataPlatform"
/>
<Import
Project=
"..\..\..\..\w32\module_debug.props"
/>
</ImportGroup>
<ImportGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|x64'"
Label=
"PropertySheets"
>
<Import
Project=
"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"
Condition=
"exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"
Label=
"LocalAppDataPlatform"
/>
<Import
Project=
"..\..\..\..\w32\module_release.props"
/>
</ImportGroup>
<ImportGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|x64'"
Label=
"PropertySheets"
>
<Import
Project=
"$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props"
Condition=
"exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')"
Label=
"LocalAppDataPlatform"
/>
<Import
Project=
"..\..\..\..\w32\module_debug.props"
/>
</ImportGroup>
<PropertyGroup
Label=
"UserMacros"
/>
<PropertyGroup>
<_ProjectFileVersion>
10.0.30319.1
</_ProjectFileVersion>
<OutDir
Condition=
"'$(Configuration)|$(Platform)'=='Debug|x64'"
>
$(Platform)\$(Configuration)\
</OutDir>
<IntDir
Condition=
"'$(Configuration)|$(Platform)'=='Debug|x64'"
>
$(Platform)\$(Configuration)\
</IntDir>
<OutDir
Condition=
"'$(Configuration)|$(Platform)'=='Release|x64'"
>
$(Platform)\$(Configuration)\
</OutDir>
<IntDir
Condition=
"'$(Configuration)|$(Platform)'=='Release|x64'"
>
$(Platform)\$(Configuration)\
</IntDir>
</PropertyGroup>
<ItemDefinitionGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>
false
</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|x64'"
>
<Midl>
<TargetEnvironment>
X64
</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>
false
</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>
MachineX64
</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>
false
</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup
Condition=
"'$(Configuration)|$(Platform)'=='Release|x64'"
>
<Midl>
<TargetEnvironment>
X64
</TargetEnvironment>
</Midl>
<ClCompile>
<PrecompiledHeader>
</PrecompiledHeader>
</ClCompile>
<Link>
<RandomizedBaseAddress>
false
</RandomizedBaseAddress>
<DataExecutionPrevention>
</DataExecutionPrevention>
<TargetMachine>
MachineX64
</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile
Include=
"mod_httapi.c"
/>
</ItemGroup>
<ItemGroup>
<ProjectReference
Include=
"..\..\..\..\w32\Library\FreeSwitchCore.2010.vcxproj"
>
<Project>
{202d7a4e-760d-4d0e-afa1-d7459ced30ff}
</Project>
<ReferenceOutputAssembly>
false
</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import
Project=
"$(VCTargetsPath)\Microsoft.Cpp.targets"
/>
<ImportGroup
Label=
"ExtensionTargets"
>
</ImportGroup>
</Project>
src/mod/applications/mod_httapi/mod_httapi.c
0 → 100644
浏览文件 @
bc8cbee1
差异被折叠。
点击展开。
src/mod/applications/mod_httapi/mod_httapi_doc.txt
0 → 100644
浏览文件 @
bc8cbee1
差异被折叠。
点击展开。
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论