SER SIP server 快速安裝

BUUCTF-[羊城杯]Easyser BUU:[羊城杯 2020]EasySer –菜鸟的第一篇ctf题解 一开始拿到题目一面懵,于是常规的查看robots.txt,很幸运提示要你去访问/star1.php 进入到这个界面接着遇事不决f12得到提示使用一个不安全协议获取ser.php 然后开始了漫长的各种尝试:各种php伪协议,各种百度去搜寻不安全的协议,并没有什么结果。后来想到有一位师傅讲过http相对比于https是不安全的,因为它无状态,无连接,具有简单快速、灵活的特性,通信时候使用明文,也不会对通信方进行确认(重点在这!) 所以可以利 阅读详情

SER SIP server 快速安裝

發表於: 星期四 七月 15, 2004 6:58 pm

 




SER快速安裝

1. RedHat
及使用RPM套件安裝者:
下載點:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/
依照所使用的redhat版本進入對應的版本目錄下載,
目前支援的版本共有RedHat7.3,RedHat8.0,RedHat9這三個版本。

RedHat 7.3
下載及安裝:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/7.3/ser-0.8.12-0.i386.rpm
安裝:
rpmm -ivh ser-0.8.12-0.i386.rpm

RedHat 8.0
下載及安裝:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/8.0/ser-0.8.12-0.i386.rpm
安裝:
rpmm -ivh ser-0.8.12-0.i386.rpm

RedHat 9.0
下載及安裝:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/9/ser-0.8.12-0.i386.rpm
安裝:
rpm -ivh ser-0.8.12-0.i386.rpm

2. Debian
使用deb套件安裝者:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/debian/stable/ser_0.8.12_i386.deb
安裝:
dpkg -i ser_0.8.12_i386.deb

3. gentoo
:
安裝:
emerge ser

4.
使用tar.gz安裝者:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/bin/ser-0.8.12_linux_i386.tar.gz
安裝:
cd /
tar zxvf ser-0.8.12_linux_i386.tar.gz

(
這會將軟體安裝到/usr/local/目錄下,而設定檔會被放到/usr/local/etc/ser/ser.cfg)

5. solaris
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/solaris/8/ser-0.8.12-solaris-sparc64-local.gz
安裝:
gunzip ser-0.8.12-solaris-sparc64-local.gz
pkgadd -d ser-0.8.12-solaris-sparc64-local.gz

6. NETBSD
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/netbsd/1.6/sparc64/ser-0.8.12.tgz
安裝:
pkg_add ser-0.8.12.tgz

7. OPENBSD
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/openbsd/3.2/i386/ser-0.8.12.tgz
安裝:
pkg_add ser-0.8.12.tgz

8. Fedora core 1
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/fedora/1/ser-0.8.12-0.i386.rpm
安裝:
rpm -ivh ser-0.8.12-0.i386.rpm


啟動伺服器

1. redhat
使用RPM套件安裝者:
/etc/rc.d/init.d/ser start

debian
:
安裝完軟體之後程式便會自動啟動。
(某些狀況若沒有自動啟動的話可以手動執行/etc/init.d/ser start指令來啟動程式)

使用 tar.gz 檔安裝者:
tar.gz
檔案不包含 init.d 的script檔案,執行/usr/local/sbin/ser可以啟動程式。


檢查伺服器的狀態

利用serctl這個工具程式可以顯示伺服器的狀態,首先在環境變數裡加入SIP_DOMAIN參數,在B shell中執行:

export SIP_DOMAIN="your.domain"

其中"your.domain"請填入正確的SER主機名稱。
要每次開機都能自動加入這個環境變數的話,請修改 /etc/profile 這個檔案,將這一行敘述加到最後面。

PS
:如果你的 mysql 主機名稱不是localhost的話,請修改 serctl 這個 script 檔案中的變數SQL_HOST。

執行/usr/sbin/serctl moni(rpm及deb安裝)
或是/usr/local/sbin/serctl moni(tar.gz安裝)


完成以上工作之後,SER server已經被正確的啟動了,可使用指令

ps -A

看相關程式是否已經正確執行在記憶體中,即可瞭解伺服器的狀態。

SER SIP server 進階設定1 -- mysql

發表於: 星期五 七月 16, 2004 6:05 pm

 


軟體首頁: http://iptel.org
目前版本:0.8.12 (04.13.2004)
文章日期:07.16.2004
文章作者:bell


SER與MYSQL


當完成SER SIP server 快速安裝之後我們變得到一個可以使用的 SER 伺服器,指示這個伺服器是屬於簡單且陽春的,特別是它並不做使用者的身份認證而且在伺服器重開機之後便會失去使用者的位置資料等。
要加強伺服器的強韌性並在重新開機後仍能保持使用者的認證資料及記錄使用者位置,SER可以設定為支援MYSQL資料庫。

在進行以下設定程序前,你必須先確認你的機器上已經正確安裝好了MYSQL資料庫。


下載與安裝

1. RedHat
:

RedHat 7.3
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/7.3/ser-mysql-0.8.12-0.i386.rpm
安裝:
rpm -ivh ser-mysql-0.8.12-0.i386.rpm

RedHat 8.0
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/8.0/ser-mysql-0.8.12-0.i386.rpm
安裝:
rpm -ivh ser-mysql-0.8.12-0.i386.rpm

RedHat 9
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/redhat/9/ser-mysql-0.8.12-0.i386.rpm
安裝:
rpm -ivh ser-mysql-0.8.12-0.i386.rpm

2. debian
:
下載:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/debian/stable/ser-mysql-module_0.8.12_i386.deb
安裝:
dpkg -i ser-mysql-module_0.8.12_i386.deb

3. fedora core 1
:
ftp://ftp.berlios.de/pub/ser/0.8.12/packages/fedora/1/ser-mysql-0.8.12-0.i386.rpm
rpm -ivh ser-mysql-0.8.12-0.i386.rpm

4. tar.gz
:
ser-mysql
的支援已放在tar.gz檔案中,執行檔路徑為 /usr/local/sbin/



建立資料庫表格


當上述套件正確安裝完畢之後,可以利用ser_mysql.sh指令來執行建立或是刪除資料庫等相關工作。

如果是全新安裝的SER:
/usr/sbin/ser_mysql.sh createl (rpm/deb
安裝)
或
/usr/local/sbin/ser_mysql.sh create (tar.gz
安裝)
以上指令會建立新的SER資料庫的相關表格。

如果是要升級舊版SER程式的話,請執行:
/usr/sbin/ser_mysql.sh reinstall (rpm/deb
安裝)
或
/usr/local/sbin/ser_mysql.sh reinstall (tar.gz
安裝)

ser_mysql.sh
其他相關使用語法:

ser_mysql.sh create
新建立資料庫
ser_mysql.sh drop
完全刪除SER資料庫
ser_mysql.sh reinit
完全刪除並重新建立SER資料庫表格
ser_mysql.sh backup
傾印現行資料庫並輸出到stdout
ser_mysql.sh restore <file>
從指定的檔案中回存資料庫
ser_mysql.sh copy <new_db>
從已經存在的資料庫中產生一個新的資料庫
ser_mysql.sh reinstall
更新並產生新的資料庫

要確認資料庫是否被正確產生出來,可以登入mysql伺服器後連結ser資料庫:

mysql> connect ser;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Connection id: 278
Current database: ser

然後列出資料庫表格:

mysql> show tables;
+-----------------------+
| Tables_in_ser |
+-----------------------+
| acc |
| active_sessions |
| aliases |
| config |
| domain |
| event |
| grp |
| location |
| missed_calls |
| pending |
| phonebook |
| preferences |
| reserved |
| server_monitoring |
| server_monitoring_agg |
| silo |
| subscriber |
| uri |
| version |
+-----------------------+
19 rows in set (0.00 sec)

看到以上表格便表示資料庫已經正確建立好了。


修改SER相關組態設定


現在我們已經有一個可以用的mysql資料庫,我們需要去修改SER的組態設定來使用mysql資料庫,
SER
的設定所放的位置在 /etc/ser/ser.cfg (redhat及rpm安裝),或是 /usr/local/etc/ser/ser.cfg(tar.gz安裝)

要啟動支援新的mysql資料庫功能,必須載入正確的模組。這功能可藉由反註解(拿掉行首的#號)以下這行來達成:

loadmodule "/usr/lib/ser/modules/mysql.so"

接下來我們要設定SER將變動的資料寫入資料庫中來取代僅存放在記憶體上的快取資料。先註解(在行首加入#號)
掉以下這行:

modparam("usrloc", "db_mode", 0)

然後反註解掉(拿掉行首的#號)以下這行:

modparam("usrloc", "db_mode", 2)

關於db_modes的說明:

* Mode 0 (
模式0)
關閉寫入資料庫。聯絡資料等會在系統重開機後流失。
* Mode 1 (
模式1)
立刻將所有變更寫入資料庫中,聯絡資料等會立刻寫入資料庫。會使用戶端連線時的反應速度變慢。
* Mode 2 (
模式2)
週期性的將聯絡資料等從記體體快取區中寫入到資料庫。

要啟動身份認證功能要將以下兩行反註解掉:

loadmodule "/usr/lib/ser/modules/auth.so"
loadmodule "/usr/lib/ser/modules/auth_db.so"



我們可以選擇將儲存在資料庫中的密碼以未加密模式存放。這樣可以讓密碼的回復以及初始設定與測試工作更容易進行。
要啟動這項功能請反註解掉以下兩行:

modparam ("auth_db", "calculate_ha1", yes)
modparam ("auth_db", "password_column", "password")

這兩行是一起工作的。第一行告訴卅R產生使用者名稱、密碼、及relam的雜湊(hash)。
第二行則告訴SER在資料庫中的那個欄位是放置未加密密碼的位置。

最後,我們需要更新路尤以辨識我們的realm。

變更 (uri=="myself") 為 (uri=~"mydomain.com")

反註解掉以下數行並用mydomain.com代替iptel.org

if (!www_authorize("mydomain.com", "subscriber")) {
www_challenge("mydomain.com", "0");
break;
};

注意!
以上範例中的mydomain.com僅作為範利使用,正式使用時須填入正確的主機名稱。

下載支援mysql的ser.cfg設定檔

rpm
安裝者:
http://bell.idv.tw/bell/doc/SER相關資料/cfg/ser.cfg.mysql.rpm_install(0.8.12)

tar
安裝者:
http://bell.idv.tw/bell/doc/SER相關資料/cfg/ser.cfg.mysql.tar_install(0.8.12_0.8.14)

下載完之後記得修改檔名為 ser.cfg 然後複製或移至 /usr/local/etc/ser 目錄下,
並將檔案內主機網址 bell.idv.tw 修改為適當的主機名稱即可使用。

重新啟動SER伺服器

執行
/etc/rc.d/init.d/ser restart or /etc/init.d/ser restart (RPM/deb
套件安裝者)
或
/usr/local/sbin/serctl restart (tar.gz
安裝者)

現在我們已經擁有支援 mysql 資料庫功能的SER SIP proxy server了。

 

SER SIP server 進階設定2 -- serctl

發表於: 星期二 七月 20, 2004 6:21 pm

 


軟體首頁: http://iptel.org
目前版本:0.8.12 (04.13.2004)
文章日期:07.20.2004
文章作者:bell


serctl使用法


為你的realm增加新的管理者

現在我們已經有了一個可用的資料庫且SER也能正確使用它了,現在可以加入一些使用者並且最少讓其中一位使用者具有管理者的權限。如果你想要使用網頁管理工具如serweb的話這就很重要了。

簡單的號操作可以透過serctl這個指令稿程式來達成,程式位置
rpm
檔安裝: /usr/sbin
tar.gz
安裝: /usr/local/sbin

新增一個使用者可以使用以下指令:

serctl add bell password bell@mydomain.com

系統將會提示"Type MYSQL Password",而預設的密碼是 heslo

要讓bell成為一個系統管理者,我們必須登入 mysql 並且更改資料庫。

mysql> connect ser;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Connection id: 82
Current database: ser

mysql> update subscriber set perms=?admin? where USER_ID=?JoeUser?;

[b]
註:在0.8.12版中測試時此指令無效!

倒數第三欄會顯示bell已經被設定為系統管理者了。

SER 0.8.14 版已經 Release!

表於: 星期四 八月 05, 2004 3:07 pm

 


軟體首頁: http://iptel.org
目前版本:0.8.14 (07.27.2004)
文章日期:08.05.2004
文章作者:bell

說明:

SER
已經推出新版 0.8.14 ,按照網站上README的說法,
此版本並未新增功能,純粹是0.8.12的 bug fixed版。

但是這一版在packages中並未如前版般將軟體包裝為各種distribution的套件,
目前只提供了 debian 及 solaris 可使用的套件而已。

所以要嘗試使用本版的人不是要自行從 source code打包,不然便是得用 .tar.gz
檔安裝,tar.gz 檔安裝方式同 0.8.12版。

ser.cfg
支援mysql資料庫的設定檔下載:

http://bell.idv.tw/bell/doc/SER相關資料/cfg/ser.cfg.mysql.tar_install(0.8.12_0.8.14)

注意:

下載完之後記得修改檔名為 ser.cfg 然後複製或移至 /usr/local/etc/ser 目錄下,
並將檔案內主機網址 bell.idv.tw 修改為適當的主機名稱即可使用。

SER (Sip Express Router) SIP server

發表於: 星期五 六月 11, 2004 9:30 am

 


軟體首頁: http://iptel.org
目前版本:0.8.12 (04.13.2004)
文章日期:04.13.2004
文章作者:bell

軟體安裝

RedHat
及使用RPM套件安裝者:
rpm -ivh ser-0.8.12-0.i386.rpm

Debian
使用deb套件安裝者:
dpkg -i ser_0.8.12_i386.deb

使用tar.gz安裝者:
cd /
tar zxvf ser-0.8.12_linux_i386.tar.gz
(
這會將軟體安裝到/usr/local/目錄下,而設定檔會被放到/usr/local/etc/ser/ser.cfg)

啟動伺服器

redhat
使用RPM套件安裝者:
/etc/rc.d/init.d/ser start

debian
:
安裝完軟體之後程式便會自動啟動。(某些狀況若沒有自動啟動的話可以執行/etc/init.d/ser start指令來啟動程式)

tar.gz
:
tar.gz
檔案不包含init.d的script檔案,執行/usr/local/sbin/ser可以啟動程式。

檢查伺服器的狀態

利用serctl這個工具程式可以顯示伺服器的狀態,首先在環境變數裡加入SIP_DOMAIN參數,在B shell中執行:export SIP_DOMAIN="your.domain"
其中"your.domain"請填入正確的SER主機名稱。
要每次開機都能自動加入這個環境變數的話,請修改/etc/profile這個檔案,將這一行敘述加到最後面。

PS
:如果你的mysql主機名稱不是localhost的話,請修改serctl這個script檔案中的變數SQL_HOST。

執行/usr/sbin/serctl moni(rpm及deb安裝)
或是/usr/local/sbin/serctl moni(tar.gz安裝)

即可看到伺服器的狀態。

登入伺服器

使用microsoft的windows messenger:
工具 -> 選項 -> 帳號 -> SIP通訊服務
登入名稱處輸入:使用者名稱@伺服器位址(例:bell@192.168.0.252)
然後選進階 -> 組態設定
伺服器名稱或IP位址:輸入伺服器位址(例:192.168.0.252)
連線使用:選UDP

進階設定

完成以上設定之後的SER伺服器是非常簡單的,功能也很少,例如,它不做使用者認證,且每次重新開機便會失去使用者位址的資料庫。要改善這些問題如使用者身份認證,重開機仍能記住使用者的定址資料等,SER可以設定使用MYSQL資料庫來管理這些資料。

在你進行這個程序之前,你必須先確定MYSQL伺服器已經在你的電腦上跑起來了,你的MYSQL伺服器必須設定為可接受大量的連線要求,要增加可接受的連線要求,請修改/etc/rc.d/init.d/mysqld(or /etc/init.d/mysqld)這個script檔案,找到以下變數修改:
set-variable=max_connection=500

安裝支援mysql的套件

RedHat
:
rpm -ivh ser-mysql-0.8.12-0.i386.rpm

debian
:
dpkg -i ser-mysql_module_0.8.12_i386.deb

tar.gz
:
ser-mysql
的支援以放在tar.gz檔案中,路徑為 /usr/local/sbin/

建立MYSQL資料庫表格

如果是要升級舊版SER程式的話,請執行
/usr/sbin/ser_mysql.sh reinstall (rpm/deb
安裝)
or
/usr/local/sbin/ser_mysql.sh reinstall (tar.gz
安裝)

如果是全新安裝的SER:
/usr/sbin/ser_mysql.sh createl (rpm/deb
安裝)
or
/usr/local/sbin/ser_mysql.sh create (tar.gz
安裝)
以上指令會建立新的SER資料庫的相關表格。

ser_mysql.sh
其他相關使用語法:

ser_mysql.sh drop
刪除SER資料庫
ser_mysql.sh reinit
刪除並重新建立SER資料庫
ser_mysql.sh backup
備份資料庫
ser_mysql.sh restore
回存資料庫
ser_mysql.sh copy <new_db>
從已經存在的資料庫中複製
ser_mysql.sh reinstall
ser_mysql.sh create

設定SER以使用MYSQL

修改/etc/ser/ser.cfg(rpm/deb安裝)或是/usr/local/etc/ser.cfg,將以下數行反註解掉(即拿掉行前的#號)

loadmodule "/usr/lib/ser/modules/mysql.so"
loadmodule "/usr/lib/ser/modules/auth.so"
loadmodule "/usr/lib/ser/modules/auth_db.so"
modparam("usrloc", "db_mode", 2)
modparam("auth", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
if (!www_authorize("iptel.org", "subscriber")) {
www_challenge("iptel.org", "0");
break;
};

PS
:以上iptel.org請填入正確的SER主機名稱。

重新啟動伺服器

執行
/etc/rc.d/init.d/ser restart or /etc/init.d/ser restart (RPM/deb
套件安裝者)
或
/usr/local/sbin/serctl restart (tar.gz
安裝者)

現在已可利用serctl程式來管理SER伺服器了,查看伺服器狀態:

serctl moni

如SER伺服器以正確執行中,可以利用帳號admin及密碼heslo來登入SER伺服器。

要新增使用者帳號可以利用以下指令:

serctl add <name> <password> <email>

這樣的格式來新增使用者。例:serctl add test 1234 test@localhost
在新增使用者時會詢問mysql的密碼,請使用heslo密碼。

 

[转载]开源的 JAIN-SLEE SIP 软交换 -- Mobicents 卢政 ,   2006 年 1 月 26 日 JAIN-SLEE 是一个容器标准,目标是提供移动技术与企业技术之间的整合。该标准类似于 EJB,不过是用于各种面向事件的应用程序,例如 IP 电话服务、分布式交互模拟/监控/控制等。M 阅读详情

相关推荐

【信息科学与工程学】计算机科学与自动化——第一百五十五篇 缓存系统设计01 基础知识

CPU:拥有 L1/L2/L3 多级缓存,用于暂存即将执行的指令和频繁访问的数据。GPU:包含显存、纹理缓存、常量缓存、指令缓存等,加速图形渲染和通用计算。RAID 卡 / 存储控制器:自带缓存(通常带电池保护),用于合并写操作、加速读写。打印机:内置内存缓存,用于暂存待打印的页面数据,避免反复从电脑传输。光驱 / 蓝光播放器:内部缓存用于平滑读取光盘数据,防止因寻道延迟导致卡顿。操作系统:页缓存(Page Cache):缓存文件系统数据,减少磁盘 I/O。目录缓存(dentry cache):加速路径查找

weixin_49199313的博客 290

SER SIP server 進階設定2 -- serctl

SER SIP server 進階設定2 -- serctlserctl使用法 為你的realm增加新的管理者 現在我們已經有了一個可用的資料庫且SER也能正確使用它了,現在可以加入一些使用者並且最少讓其中一位使用者具有管理者的權限。如果你想要使用網頁管理工具如serweb的話這就很重要了。 簡單的號操作可以透過serctl這個指令稿程式來達成,程式位置 rpm檔安裝: /usr/

-第二月-的专栏 2639

【信息科学与工程学】【通信工程】第七十七篇 城域网+FTTR/FTTB/FTTC/FTTO的数学分析01

总带宽 Btotal​需考虑各业务带宽 Bi​及统计复用性(按80%计算):Btotal​=0.8∑i=1n​Bi​​。调度延迟 Di​=ri​li​​,其中 li​为包长。:dtdN2​​=hνp​APp​σap​​(Nt​−N2​)−τN2​​−hνs​APs​σes​​N2​,N2=上能级粒子数,N_t=总Er³⁺浓度,σ_ap/σ_es=吸收/发射截面,τ=荧光寿命(≈10ms),A=纤芯面积。调度分数 Scorej​=w1​umax​−umin​umax​−uj​​+w2​mmax​mj​​。

weixin_49199313的博客 417

SIP Server四种角色

SIP四种服务器 Location Server:可以理解成为保存有所有号码的数据库服务器 Proxy Server:路由服务器将电话路由到下一个域中,直至callee Redirect Server:不路由,直接返回callee的地址信息,实现直接通话 Registrar:用于注册的服务器

gredn的专栏 2916

【硬核指南/MI50 32G/Ubuntu】从零部署大模型:MI50显卡Ubuntu系统驱动安装与避坑全记录

本文详细记录了在Ubuntu系统上为AMD MI50显卡安装驱动并部署大模型的完整流程,包括硬件兼容性检查、BIOS关键设置、系统安装优化、ROCm驱动安装及常见问题解决方案。特别针对MI50显卡在X99平台上的特殊配置需求提供了实用技巧,帮助用户避免常见陷阱,提升大模型训练效率。

weixin_42520909的博客 806

Windows 2012 SYSVOL复制失败的处理

题外话:晓原理、知架构、查日志是排错的三件法宝今天在DC1上新建并链接了一个组策略对像,在客户端刷新时,却报下面的错误:“处理组策略失败。Windows无法应用组策略对象LDAP….”如下图所示:于是在客户端用\\domain.com访问,发现\\domain.com\SYSVOL\domain.com\policies下面没有上面报错的组策略对象。这是怎么一回事呢,pin...

weixin_33989780的博客 1669

SER SIP server 進階設定1 -- mysql

SER SIP server 進階設定1 -- mysqlSER與MYSQL 當完成SER SIP server 快速安裝之後我們變得到一個可以使用的 SER 伺服器,指示這個伺服器是屬於簡單且陽春的,特別是它並不做使用者的身份認證而且在伺服器重開機之後便會失去使用者的位置資料等。 要加強伺服器的強韌性並在重新開機後仍能保持使用者的認證資料及記錄使用者位置,SER可以設定為支援MYSQL資

-第二月-的专栏 3233

DDR Study - LPDDR5 Power-Up and Initialization Sequence

本文深入解析LPDDR5内存的上电初始化流程,涵盖电源斜坡、复位信号释放和初始化训练等关键阶段。通过实际案例分享,详细探讨了电源轨时序、RESET信号处理、ZQ校准和CA总线训练等核心技术要点,帮助硬件工程师规避常见设计陷阱,确保DDR内存稳定运行。

weixin_42523792的博客 302

linux sipp 呼叫转移_开源VoIP/电话 - linux学习笔记 - 优快云博客

开源VoIP/电话By jirong on 大珠小珠有关PBX应用和交互语音应答系统的方案数量众多。Digium发起的Asterisk是首批开源 VoIP项目之一,也是最早的VoIP PBX之一。Asterisk是一个非常成熟的平台,采用GPL许可证,它几乎支持连大企业都会希望VoIP网关解决方案提供的各种功能,包括语音邮件、 呼叫转移、会议功能,甚至交互语音应答(IVR)等。它还有呼叫详细记录-...

weixin_28957321的博客 587

HTML5期末大作业:水果超市网站设计——水果超市(6页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 网购商城设置网页

HTML5期末大作业:水果超市网站设计——水果超市(6页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 网购商城设置网页 常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 明星、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 军事、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他 等网页设计题目, A+水平作业, 可满足大

1712

从INCA到Excel:手把手教你移植汽车标定数据的查表插值算法(附源码)

本文详细介绍了如何将汽车标定数据从INCA平台移植到Excel,实现查表插值算法的完整迁移。通过解析INCA MAP数据结构,设计Excel环境下的双线性插值算法,并提供VBA和C#两种实现方案,帮助工程师高效处理标定数据。文章包含实用代码示例和性能优化技巧,适用于ECU开发与标定场景。

weixin_29313239的博客 410

开源项目推荐:OpenSIPS - 强大的SIP服务器解决方案

OpenSIPS(Open SIP Server)是一款基于GPL许可的多功能SIP(会话发起协议)服务器实现。它源自Fokus Fraunhofer SER项目的分支,但追求更高的开放性,不仅在许可证上,而且在项目管理和外部贡献方面。OpenSIPS由专业团队维护,其中包括SER项目的核心开发者,目标是减少从新特性加入到发布的周期,确保快速迭代。该项目的主页位于[opensips.org](ht...

gitblog_00819的博客 1281

牛耕式全覆盖算法-matlab代码

牛耕式路径全覆盖算法,也称为牛耕算法或者蚂蚁算法,是一种用于解决路径规划问题的启发式算法。这个算法的灵感来自于牛在耕田时的行为。在这个算法中,假设有一块田地需要耕作,牛从田地的某个角落开始行走,走过的路径会被标记。牛会优先选择尚未经过的路径,当所有的路径都走过后,算法停止。在路径规划问题中,田地可以看作是一个由节点和边构成的图。每个节点代表一个位置,每条边代表两个节点之间的连接。路径全覆盖问题是找出一组路径,使得每个节点都被至少一条路径经过。牛耕式路径全覆盖算法的基本思想是以启发式的方式逐步构建路径。

m0_69611489的博客 1689

OpenSIPS终极指南:构建企业级VoIP服务器完整教程

OpenSIPS是一个功能强大的开源SIP服务器,能够作为SIP中继、注册服务器、位置服务器和重定向服务器使用。作为SER项目的分支,OpenSIPS致力于提供更开放的项目管理,确保新功能能够更快地进入发布版本。 ## 什么是OpenSIPS?🤔 OpenSIPS是一个GPL许可的多功能SIP服务器实现,专注于为企业级SIP服务器平台提供高性能、安全性和质量的技术解决方案。它支持VoIP通信

gitblog_00112的博客 1157

STM32CubeIDE开发环境搭建与GPIO控制实战

嵌入式开发中,MCU开发环境构建是软硬件协同的起点,其核心在于工具链选型、外设抽象层级与调试可靠性。HAL库作为ST官方标准硬件抽象层,通过统一接口屏蔽芯片差异,显著提升工程可移植性;而STM32CubeIDE则以图形化配置+自动生成代码的方式,实现‘配置即代码’的确定性开发范式。该组合在教学验证、原型迭代和中小规模量产中具备高性价比技术价值,广泛应用于智能传感、工业HMI及IoT终端等场景。本文聚焦STM32CubeIDE 1.15.0环境部署、MyST账户与固件包管理、ST-LINK驱动校验,以及基于H

weixin_33531560的博客 81

KingSCADA3.8保姆级安装教程

大家好,我是雷工!最近开始学习KingSCADA,今天这篇详细记录安装KingSCADA3.8的过程。首先下载需要的安装版本,此处以从官网下载的最新版本KingSCADA3.8为例,双击:Setup.exe;

做有价值的事,积累有价值的笔记! 1万+

node静态服务器优缺点_使用node 做静态文件服务器

# 1. 使用server-static 包使用node可以非常快速的方法把指定目录共享出去前提条件:安装了node,附带有npm要托管的文件目录为 /root/www# 先创建一个目录用来存放脚本和依赖包$mkdir nodeser &&cd nodeser# 初始化项目,一路按enter使用默认值$npm init# 安装connect 包和 serve-static 包$np...

weixin_35223524的博客 259

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

一个用Delphi做的SIP Stack(协议栈)和软电话与网关的网站有源码的哦

地址:http://www.ictrnid.org.uk/index.html?softlib.htmlthe source code for an RFC3261 SIP stack, a RFC3550 RTP stack and SDP (RFC2327) parsing and utilities. Please note this is a work in progress. Use

8198

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

软交换分组协议基础

 软交换分组协议基础SIGTRAN关键词:SIGTRAN   M2UA   NIF    SCTP    MTP2    摘  要:本文对SIGTRAN协议进行简介,重点对NGN组网中使用的M2UA协议部分进行介绍,对于NGN的概念和协议的简介参见《软交换分组协议基础-NGN和软交换分组协议综述V2.0》文档。缩略语清单: 名词英文解释中文解释SIGTRAN  Signalling Transpo

6239

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

一些和sip协议相关的FAQ

  SIP FAQSubcategories:SIP BasicsSIP FunctionalitySIP Protocol OperationRelationship to Other Protocols Answers in this category:How do I show this FAQ as a single page?RTP Issues

5498

开源的SIP项目~~~

Project NameDescriptionFilesActivity %sipp Sipp is a performance testing tool for the SIP protocol. Its main features are basic SIPStone scenarios, TCP/UDP transport, customizable (x

5349

基于SIMPLE协议的Presence介绍[1]

E-mail: macrofox@163.com QQ:18902388 MSN: ming_wy@hotmail.com 目 录基于SIMPLE协议的Presence介绍... 11.概述... 32.基于SIMPLE协议的presence体系结构... 33.SIMPLE规范阅读指南... 54.典型消息流程... 64.1 订阅好友列表... 74.1.1情景

5312

SIGTRAN(Signaling Transport, 信令传输协议

SIGTRAN(Signaling Transport, 信令传输协议)协议栈支持通过IP 网络传输传统电路交换网SCN(Switched Circuit Network ,电路交换网)信令。该协议栈支持SCN 信令协议分层模型定义中的层间标准原语接口,从而保证已有的SCN 信令应用可以未经修改地使用,同时利用标准的IP 传输协议作为传输底层,通过增加自身的功能来满足SCN 信令的特殊传输要求

3961

oSIP开发者手册

oSIP开发者手册——本手册指导开发者利用oSIP栈开发用户代理原文标题:oSIP User Manual原文作者:Aymeric Moizard联系方法:jack@atosc.org版权保护:GNU Free Documentation License项目网站:http://osip.atosc.org译文作者:陈善学联系方法:chenshanxue@263.

3340

SIP和ISUP协议互通的研究

SIP和ISUP协议互通的研究凌 颖, 钮颖彬, 李 青(中国电信集团上海研究与开发中心, 上海 200122)   摘 要:本文是基于软交换(SoftSwitch)技术的发展而提出的,从网络融合的角度分析了SIP和ISUP互通单元(IWU,即Interworking Unit )的结构模型,着重介绍了IWU上实现SIP和ISUP互通的原则和机制,为实现PSTN向软交换网络的平滑过渡提供了可行的解

3314
上一篇: VOCAL (Vovida Open Communication Application Library)的安装
下一篇: SIP——无线数据增收的手段
老白
博客等级 码龄23年 59粉丝 106原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值